Skocz do zawartości

Skrypt Konfiguracyjny F11


bunny1985

Rekomendowane odpowiedzi

Nie wiedziałem w którym dziale to umieścić za bardzo. Myślę że tu będzie najodpowiedniejsze miejsce.

 

był sobie taki skrypt oparty chyba na tym co mają w jurnym jarząbku( remix ubuntu) :

http://fedoracentrum.pl/?p=700#more-700

Niestety padł serwer autora i troszkę rzeczy się pogubiło. Z tego co wiem autor zajęty jest innymi rzeczami .

W związku z tym sam pomyślałem o przebudowie skryptu.

Nie jest to może arcydzieło i jeszcze paru rzeczy brakuje, ale jest w miarę funkcjonalny.

skrypt potrafi wykonać za nas pewne czynności ( sterowniki nvidia, catalyst radeon, kodeki i trochę innych rzeczy)

wypadałby go przejrzeć czy nie ma błędów- ja nie wychwyciłem. Muszę też dostosować niektóre opcje dla 64 bitów.

skrypt oparty jest o dialog i mieści się w jednym pliku.

Jest to tak naprawdę wprawka do skryptu dla f12 dla f11 nie jest już dziś to tak potrzebne.

Proszę o pomoc w testach , pomysły i uwagi.

więcej informacji na :bunny1985.oicw.pl

wymaga system-config display , oraz dialog więc instalacja przykładowo:

yum install dialog system-config-display&& rpm -ivh http://bunny1985.oicw.pl/fedorarepo/skl-0.1-0.1.noarch.rpm

Edytowane przez WalDo
literówka w temacie
Odnośnik do komentarza
Udostępnij na innych stronach

  • Odpowiedzi 45
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

apropos poradnika to radeon fglrx nieaktualne - paczki zwią się inaczej w f11.

czy jest coś warte możesz się przekonać instalując skrypt

ja tylko wrzucę zrzut z menu :

1 "Zainstaluj wymagane repozytoria Adobe i RPMFusion (64/32 bity)" \
2 "Zainstaluj najnowsze aktualizacje (64/32 bity)" \
3 "Ustaw język systemu (64/32 bity)" \
4 "Ustaw rozdzielczość oraz częstotliwość odświeżania ekranu (64/32 bity)" \
5 "Zainstaluj kodeki, Flasha, RMVB, RAR-a... (64/32 bity)" \
6 "Włącz oraz ustaw polskie napisy w Totemie - GNOME (64/32 bity)" \
7 "Zainstaluj odtwarzacz MPlayer oraz ustaw polskie napisy (64/32 bity)" \
8 "Wyczyść nie potrzebne pakiety, a także usuń duplikaty. (64/32 bity)" \
9 "Instaluj Microsoftowe czcionki (64/32 bity)" \
10 "Zainstaluj narzędzia do wirtualizacji (VirtualBox OSE) (64/32 bity)" \
11 "Zainstaluj Google Earth (64/32 bity)" \
12 "Zainstaluj Piacasę (32 bity)" \
13 "Zaktualizuj Compiza do wersji 0.8.3 (64/32 bity)" \
14 "Zainstaluj Yumex ((_menadżer_ → menedżer) ORT pakietów) (64/32 bity)" \
15 "zainstaluj odpowiednik napiprojekt (32 bity)" \
16 "Zainstaluj popularne w Polsce komunikatory na (_linuxa_ → Linuksa) ORT (32 bity)" \
17 "Zainstaluj zamknięte sterowniki Nvidia (64/32 bity)" \
18 "Zainstaluj zamknięte sterowniki do kart ATI ( radeon ) (64/32 bity)" \
19 "Przestaw SElinux w tryb dopuszczania (64/32 bity)" \
100 "Zamknij")

nie ukrywam że liczyłbym na pomoc w dokończeniu/ dopieszczeniu skryptu.

skrypt najpierw zamieściłem na forum ze względu na to że jeszcze nie jest to wersja końcowa.

pozatym zależy mi bardziej na tym by przygotować ostateczną wersję dla f12 przed premierą. wtedy taki skrypt mógłby się przydać jak sądzę.

Odnośnik do komentarza
Udostępnij na innych stronach

Odnośnie multimediów, instalacja sposobem gstreamer\* pociągnie za sobą zbędne dla większości pakiety devel, lepiej jest zapisać to tak, jak jest w poradniku. Przyda się też pakiet mplayer-gui, a jeszcze lepiej smplayer, który ma choćby taką przewagę, że można ustawić napisy zmieniając wielkość czcionki.

Co do rpmfusion to ja bym automatyczne je instalował wyświetlając tylko stosowną informację.

Odnośnik do komentarza
Udostępnij na innych stronach

Zdaje się, że był już jeden skrypt dla fedory http://forum.fedora.pl/index.php?showtopic...st&p=126529 , ale chyba zginął z braku zainteresowania, do tego trzeba pamiętać o autoten ( http://www.dnmouse.org/autoten.html ). Próbuj może Tobie się uda.

 

Był był, a to co jest u góry to jego kontynuacja. :) czyli nie zginął z braku zainteresowania :)

o autoten nie słyszałem. Za to widziałem easylife. autoten też chyba oparty o zenity.

Zapotrzebowanie chyba jest. A tu powyżej skrypt, który przystosowany ma być bardziej dla polskiego użytkownika i ma być jak najbardziej niezależny od środowiska graficznego

( w końcu fedora to nie ubuntu ,i nie jest rozprowadzana tylko na live cd z gnomem).

 

 

Odnośnie multimediów, instalacja sposobem gstreamer\* pociągnie za sobą zbędne dla większości pakiety devel, lepiej jest zapisać to tak, jak jest w poradniku. Przyda się też pakiet mplayer-gui, a jeszcze lepiej smplayer, który ma choćby taką przewagę, że można ustawić napisy zmieniając wielkość czcionki.

Co do rpmfusion to ja bym automatyczne je instalował wyświetlając tylko stosowną informację.

 

W sumie racja. Ale smplayer oparty jest chyba o qt, czyli nie wszyscy mogą go chcieć.

Pomyślę, pozmieniam w skrypcie i podrzucę.

-----------------------------

EDIT:

w sumie to gstreamera poprawiłem.

Co ciekawe, aototen w rpmie ma wpisany konflikt z easylife :)

Odnośnik do komentarza
Udostępnij na innych stronach

Obecnie ciężko jest zrezygnować z qt, jeśli ktoś chce mieć najlepsze multimedialne aplikacji, czyli wspomniany smplayer, vlc, k9copy i inne (w tym opera). Już lepiej odżałować te 10-15MB na dysku. Co do autotena to sprawdzona i bardzo dobra aplikacja, najlepiej zaimplementować wszystkie jego funkcje i dołożyć te potrzebne polskim użytkownikom. Nie wiem czy jest oparty na zenity, ale kiedy go odpalałem na f9 chyba to wydawało mi się, że ma interfejs napisany w gtk, ale możliwe, że z zenity też korzysta.

EDIT: Nom na to wygląda, że w całości w zenity, sprawdziłem (nieźle :) ).

Odnośnik do komentarza
Udostępnij na innych stronach

(_napewno_ → na pewno) ORT nie wszystko, ale może część opcji wprowadzę.

przykładowo wyboru pomiędzy gnashem a flashem raczej nie będzie. Java openjdk jest chyba w standardzie.

autologin dotyczy gnome,right click terminal też - takich opcji nie chcę. Sam korzystam z KDM i KDE.

generalnie skrypt ma ułatwić start z systemem i nie wiele więcej , ale jeśli będzie zapotrzebowanie na jakieś funkcje to dodam.

a jeśli chodzi o zenity, to też nie będę korzystał z niego ze względu na to że chciałbym ,żeby skrypt był nie zależny od środowiska graficznego. Z tego powodu nie będzie też kdialog.

Odnośnik do komentarza
Udostępnij na innych stronach

Zenity nie ma wielu zależności, a dialog wcale nie jest domyślnie w systemie, więc tak czy tak trzeba będzie coś zainstalować żeby otworzyć Twój skrypt. No chyba, że zrobisz go np. w czystym bash albo inne.

 

Prawdę mówiąc zenity prawie do niczego się nie nadaje. Bawiłem się tym przez dzień czy dwa i nędznę to <_< Zgrabnie zaprojektowane, ale ubogi wybór funkcji (wybierz i potwierdź). Zresztą widzę, że takich okienek dialogowych to się sporo przewinęło w linuksie.

Odnośnik do komentarza
Udostępnij na innych stronach

Tak jeszcze wtrącę dwa grosze. Proponuje zrobić ten skrypt jako szkielet + poszczególne polecenia jako pluginy (osobne skrypty o powtarzalnej budowie). Skrypt powinien z zawartość katalogu generować menu. To by pozwoliło swobodnie wrzucać nowe opcje. Można by nawet porobić foldery-kategorie jak się funkcji zrobi za dużo. Niemniej architekturę i hasło powinno podawać się tylko raz.

 

Przepraszam za te narzucane pomysły, ale jak mi coś przyjdzie do głowy to muszę to zrealizować, a teraz niestety nie mogę :P

 

ps. w takim skrypcie dobrze by było znaleźć nieszczęsną neostradę.

 

[EDIT]

 

* widzę, że problem z hasłem bardzo ładnie jest rozwiązany w autoten dzięki consolehelper

* znowu mi coś przyszło do głowy: tzw. pluginy mogły by być dowolnym skryptem bash, perl, python.

- zwykły for/find wylistuje zawartość katalogu "plugins"

- każdy plugin ma charakterystyczną etykietę (opis), którą można wyciągnąć sed'em

- mając nazwę i etykietę można przy pomocy awk zbudować linijkę opcji dla zenity

- wszystkie linijki zbieramy w jeden parametr przekazany do zenity i mamy menu z kolumn jak w autoten

- kolumna nazwy pluginu jest ukryta, widoczna jest tylko etykieta (jak najbardziej całe zdania)

- po wybraniu przekazywana jest kolumna z nazwami pluginów. Zenity pozwala zwrócić wiele parametrów (nazw pluginów) oddzielonych dowolnym znakiem

- wystarczy wykonać zwrócone nazwy.

* każdy plugin można rozwijać osobno bez jakiejkolwiek ingerencji w sam skrypt i co najważniejsze mogą robić wszystko w dowolnym języku skryptowym.

* z czasem można dodać opcję poszukiwania pluginów w jakimś folderze domowym np. ~/.config/skrypty

 

* przydało by się ogólnopolskie repo fedory i może jakiś system kontroli wersji. Pewnie było by tam z pięć plików, a ile radochy by sprawiło userom.

Odnośnik do komentarza
Udostępnij na innych stronach

No i tu przychodzi mi poinformować o nowym projekcie, na razie nie podam nazwy ani adresu ale powiem tylko że będzie magazynował to czego w repo nie znajdziecie w zwykłym repo a co zobaczycie w formie Webowej :) Jeżeli chodzi o Twoje propozycje, to to już wychodzi po za kompetencje Bash'a - tworzenie systemu pluginów. Ewentualnie można było by to załatwić funkcjami do których by się odwoływał lub przy wybraniu jednej wywoływał ją.

Odnośnik do komentarza
Udostępnij na innych stronach

poza kompetencje basha nie, ale najwyraźniej poza możliwości zenity

 

Najprostsza wersja tego o czym mówię wygląda tak. Menu z plików w katalogu ./plugins, a po wybraniu wywoływane są skrypty (jakby chwilę pomyśleć to można i priorytety kolejności przypisać)

 #!/bin/bash
    
    # if [ $(whoami) != "root" ]; then
        # zenity --error --text="Musisz być zalogowany jako root, aby uruchomić ten skrypt"
        # exit 1
    # fi
    
    p=./plugins
    
    _menu()
    {
        zenity --title="Skrypt konfiguracyjny Fedory" \
            --text "Zaznacz operacje do wykonania:" \
            --width=500 --height=300 \
            --list  --checklist \
            --column="zaznacz" --column "polecenie" \
            $(for i in $p/*; do echo " FALSE ${i##*/} "; done) \
            --separator " "  --multiple \
            --print-column=2
    }    
    #echo $(_menu) 2>&1 | zenity --text-info --title="Debuger" --width=700 --height=500
    for s in $(_menu); do ${p}/$s;done

jak odhaszujesz początek to tylko root będzie mógł uruchomić ten skrypt + wspomniany wcześniej consolehelper i jest cacy.

 

Wadą jest, że skrypty nie mogą mieć spacji w nazwie. Bash sobie radzi, ale zenity jeśli dostaje listę parametrów to interpretuje nawet cudzysłów " jako tekst. Tego chyba nie da się przeskoczyć i jedynym wyjściem jest wybranie innego typu okienek dialogowych, albo zrobienie tego w PyGTK/PyQT, bo chyba w C to się bawić nie będziemy (wytłumacz nowemu, że musi to najpierw skompilować :) ). Ostatecznie skryptom można nadawać nazwy z "_" zamiast spacji.

 

[EDIT]

Inna wersja pozwala na ładne opisy, ale kosztem ręcznego wklepania nazw plików. Różnią się tylko funkcją _menu()

 #!/bin/bash

# if [ $(whoami) != "root" ]; then
     # zenity --error --text="Musisz być zalogowany jako root, aby uruchomić ten skrypt"
     # exit 1
# fi

# plugins
p=/usr/bin

_menu()
{
     zenity --title="Skrypt konfiguracyjny Fedory" \
         --text "Zaznacz operacje do wykonania:" \
         --width=500 --height=300 \
         --list  --checklist \
         --column="zaznacz" --column "polecenie" --column "opis" \
         FALSE    geany            "Uruchom Geany IDE"    \
         FALSE    gnome-terminal    "Uruchom GNOME-Terminal"    \
         FALSE    yumex            "Zainstaluj coś..."    \
         --separator " "  --multiple \
         --print-column=2 --hide-column=2
}    
#echo $(_menu) 2>&1 | zenity --text-info --title="Debuger" --width=700 --height=500
for s in $(_menu); do ${p}/$s;done

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się

×
×
  • Dodaj nową pozycję...