Sida 1 av 1

Skript slutade att fungera efter uppgradering…

Postat: 08 maj 2010, 17:23
av Johnny Rosenberg
Har gjort ett skript som installerar en massa saker som jag tycker mig behöva och som normalt inte ingår i Ubuntu ”out of the box”. Det är givetvis inget avancerat, utan i princip bara en massa ”sudo apt-get install program-x” med en fråga mellan varje program x så att jag kan hoppa över program jag inte längre tycker att jag vill ha. Här är några utsnitt från filen:

Kod: Markera allt

#!/bin/sh

Work () { ######################################################################
    x=$(zenity --list --title "$1" --text "Vill du installera $1?" \
    --column "Svar" "Ja" "Nej" --height 150)
    case $x in
    "Ja")
        gksudo apt-get $3 install $2;;
    "Nej")
        ;;
    *)
        zenity --info --text "Välkommen åter\!"
        exit 10;;
    esac
}

# Huvudmeny ####################################################################
x=$(zenity --list --title "Körsätt" \
--text "Vill du installera eller vill du bara testa?" \
--column "Välj" "Simulera" "Kör skarpt" --height 150)

case "$x" in
"Simulera")
    Options="--simulate";;
"Kör skarpt")
    Options=""
    gksudo apt-get update
    gksudo apt-get upgrade;;
*)
    zenity --info --text "Välkommen åter\!"
    exit 10;;
esac

if [ -z $Options ]; then
    # Fördröjning vid avstängning av Ubuntu ####################################
    a="Vill du ha en irriterande fördröjning på 60 s\n"
    b="vid exempelvis avslut, urlogging och liknande?"

    x=$(zenity --list --title "Avstängningsfördröjning" \
    --text "$a$b" --column "Svar" "Ja" "Nej" --height 175)

    if [ $x = "Ja" ]; then
        gconftool-2 \
        --set /apps/indicator-session/suppress_logout_restart_shutdown \
        --type bool false
    elif [ $x = "Nej" ]; then
        gconftool-2 \
        --set /apps/indicator-session/suppress_logout_restart_shutdown \
        --type bool true
    else
        zenity --info --text "Välkommen åter\!"
        exit 10
    fi
fi

PackageName="inställningshanteraren för Compiz Fusion" #########################
Package="compizconfig-settings-manager"
Work "$PackageName" "$Package" "$Options"

PackageName="Ubuntu Restricted Extras" #########################################
Package="ubuntu-restricted-extras"
Work "$PackageName" "$Package" "$Options"
När man installerar vissa program med apt-get får man ju en fråga om man vill installera och den ska ju besvaras med J eller n. När jag kör skriptet händer inte ett jävla jota efter att man besvarat frågan. Har testat att installera samma sak manuellt och då funkar det, men av någon anledning alltså inte när jag kör exakt samma kommando från ett skript. Någon som har en idé om vad som kan vara fel? Skriptet fungerade utmärkt i Ubuntu 9.10.

Re: Skript slutade att fungera efter uppgradering…

Postat: 08 maj 2010, 17:28
av Johnny Rosenberg
För att förtydliga lite, så ser det ut så här på skärmen:

Kod: Markera allt

…
0 att uppgradera, 2 att nyinstallera, 0 att ta bort och 0 att inte uppgradera.
Behöver hämta 1 251kB arkiv.
Efter denna åtgärd kommer ytterligare 5 644kB utrymme användas på disken.
Vill du fortsätta [J/n]? J

Härefter händer absolut ingenting.

Kör jag kommandot manuellt funderar det dock och programmet ifråga installeras utan problem.

Re: Skript slutade att fungera efter uppgradering…

Postat: 08 maj 2010, 17:56
av Johnny Rosenberg
Och dessutom funkar inte gksudo som i gamla Ubuntu:

Kod: Markera allt

gksudo apt-get --simulate torcs
Av någon märklig anledning tror gksudo att ”--simulate” hör till gksudo och inte till apt-get! Något sätt att komma runt detta? Förutom att använda sudo alltså. Frågar för att jag vill veta i första hand, så svar som att ”använd det här och det där istället” kan bara fungera som kuriosa på sin höjd.

Upptäckte detta då jag försökte lösa ursprungsproblemet genom att använda --yes som flagga på apt-get för att helt slippa få ja- och nej-frågor av apt-get. Allt verkar skita sig fullständigt i 10.04, men det kan ju bero på hur mitt system är konfigurerat i och för sig.

Re: Skript slutade att fungera efter uppgradering…

Postat: 08 maj 2010, 18:02
av Konservburk
Johnny Rosenberg skrev:Och dessutom funkar inte gksudo som i gamla Ubuntu:

Kod: Markera allt

gksudo apt-get --simulate torcs
Av någon märklig anledning tror gksudo att ”--simulate” hör till gksudo och inte till apt-get! Något sätt att komma runt detta?

Kod: Markera allt

gksudo -- apt-get --simulate torcs

Re: Skript slutade att fungera efter uppgradering…

Postat: 08 maj 2010, 21:41
av Johnny Rosenberg
Konservburk skrev:
Johnny Rosenberg skrev:Och dessutom funkar inte gksudo som i gamla Ubuntu:

Kod: Markera allt

gksudo apt-get --simulate torcs
Av någon märklig anledning tror gksudo att ”--simulate” hör till gksudo och inte till apt-get! Något sätt att komma runt detta?

Kod: Markera allt

gksudo -- apt-get --simulate torcs
Aha…! Det visste jag inte. Så man ger alltså gksudo en ”tom” flagga, så att säga…

Tackar! Har inte testat än, men det fungerar säkert.