Sada je: 28 ožu 2024, 14:13.
Diskusije usko vezane uz Arch Linux i srodne distribucije.

Moderator/ica: Moderatori/ce

U zadnje vrijeme se bavim učenjem BASH skriptiranja, ali moj najveći problem su ideje što napraviti. Zato sam odlučio napraviti skriptu za pomoć pri instalaciji AUR (iako ne znam tko bi se okoristio time s obzirom da postoje paketi koji puno bolje pomažu u instalaciji AUR paketa :hihi ). Ulavnom, evo skripte pa ako nekome to nešto znači...

Kod: Označi sve
#!/bin/bash
echo "##################"
echo "##  AUR HELPER  ##"
echo "##################"
echo " "
function main {
  echo "Choose:

    1.  Install AUR packages
    2.  Upgrade AUR packages
    3.  Just download AUR package
    4.  Install previously donwloaded package
    5.  Delete donwloaded packages
    6.  Install packages nececary for using AUR
    7.  Exit"

    while true; do
      read SELECT
      case "$SELECT" in
        1) SELECT=aur_main;;
        2) SELECT=aur_upd;;
        3) SELECT=aur_down;;
        4) SELECT=aur_down_inst;;
        5) SELECT=aur_del_pck;;
        6) SELECT=aur_inst;;
        7) SELECT=exit;;
        *) echo Invalid selection.; continue
      esac
      break
    done
}

function aur_main {
  echo "Remove build-time dependencies and clean temporary build files after the build :

    1.  Yes
    2.  No
    3.  Go back"

  while true; do
    read SELECT
    case "$SELECT" in
      1) SELECT=yes;;
      2) SELECT=no;; 
      3) SELECT=main;;
      *) echo Invalid selection.; continue
    esac
    break
  done
}

function yes {
  echo "Package name: "
  read package
  git clone https://aur.archlinux.org/$package.git
  cd $package
  makepkg -sirc
  echo "************************"
  echo "** Package installed. **"
  echo "************************"
  main
}

function no {
  echo "Package name: "
  read package
  git clone https://aur.archlinux.org/$package.git
  cd $package
  makepkg -si
  echo "************************"
  echo "** Package installed. **"
  echo "************************"
  main
}

function aur_down_inst {
  echo "Remove build-time dependencies and clean temporary build files after the build :

    1.  Yes
    2.  No
    3.  Go back"

  while true; do
    read SELECT
    case "$SELECT" in
      1) SELECT=down_inst_yes;;
      2) SELECT=down_inst_no;; 
      3) SELECT=main;;
      *) echo Invalid selection.; continue
    esac
    break
  done
}

function down_inst_yes {
  echo "Package name: "
  read package
  cd $package
  makepkg -sirc
  echo "************************"
  echo "** Package installed. **"
  echo "************************"
  main
}

function down_inst_no {
  echo "Package name: "
  read package
  cd $package
  makepkg -si
  echo "************************"
  echo "** Package installed. **"
  echo "************************"
  main
}

function aur_upd {
  echo "Remove build-time dependencies and clean temporary build files after the build :

    1.  Yes
    2.  No
    3.  Go back"

  while true; do
    read SELECT
    case "$SELECT" in
      1) SELECT=aur_upd_yes;;
      2) SELECT=aur_upd_no;; 
      3) SELECT=main;;
      *) echo Invalid selection.; continue
    esac
    break
  done
}

function aur_upd_yes {
  echo "Package name: "
  read package
  cd $package
  git config pull.rebase false
  git pull
  makepkg -sirc
  echo "**********************"
  echo "** Package updated. **"
  echo "**********************"
  main
}

function aur_upd_no {
  echo "Package name: "
  read package
  cd $package
  git config pull.rebase false
  git pull
  makepkg -si
  echo "**********************"
  echo "** Package updated. **"
  echo "**********************"
  main
}

function aur_down {
  echo "Package name: "
  read package
  git clone https://aur.archlinux.org/$package.git
  echo "*************************"
  echo "** Package downloaded. **"
  echo "*************************"
  main
}

function aur_del_pck {
  echo "Package for deletion: "
  read package
  rm -rf $package
  echo "*********************"
  echo "** Package deleted **"
  echo "*********************"
  main
}

function aur_inst {
  sudo pacman -S base-devel --needed
  echo "***********"
  echo "** Done **"
  echo "***********"
  main
}

main

while test $? -eq 0; do
  $SELECT
done


Slobodno komentirajte ideje za poboljšanje fonkcionalnosti ili samog koda i slobodno komentirajte moje propuste ili greške u izradi skripte.

P.S. (dodatak nekoliko sati nakon postanja) Zaboravio sam napisati da skriptu, ako se koriste fukcije nadogradnje paketa ili instalacije prethodno preuzetih paketa, skriptu treba postaviti u mapu gdje se nalazi mapa paketa koji se želi instalirati ili nadograditi.
Zadnja izmjena: Sven; 30 ruj 2020, 07:29; ukupno mijenjano 2 put/a.
Linux za srce i dušu.

GitHub
Twitch
YouTube
Avatar
Postovi: 42
Postovi: 42
Pridružen/a: 09 ožu 2020, 19:12
Lokacija: Zagreb
Podijelio/la zahvalu: 2 puta
Primio/la zahvalu: 1 puta
Spol: M
Evo, stavio sam ti ovo u code tag :)
Avatar
Site Admin
Postovi: 4639
Site Admin
Postovi: 4639
Pridružen/a: 07 ožu 2009, 17:00
Podijelio/la zahvalu: 101 puta
Primio/la zahvalu: 209 puta
Spol: M
OS: fedora 34
ubaci jos neki -march=native i -s
kad se vec kuha, steta je ne zacinit
Postovi: 271
Postovi: 271
Pridružen/a: 26 sij 2019, 20:16
Podijelio/la zahvalu: 4 puta
Primio/la zahvalu: 19 puta
Spol: m
OS: amigaOS
abnettaa je napisao/la:ubaci jos neki -march=native i -s
kad se vec kuha, steta je ne zacinit


Pod cijenu blama moram pitati što znači ta naredba jer nisam upoznat sa njom?
Linux za srce i dušu.

GitHub
Twitch
YouTube
Avatar
Postovi: 42
Postovi: 42
Pridružen/a: 09 ožu 2020, 19:12
Lokacija: Zagreb
Podijelio/la zahvalu: 2 puta
Primio/la zahvalu: 1 puta
Spol: M

Na mreži
Trenutno korisnika/ca: / i 9 gostiju.