Witam, mam taki w sumie problem ale przy okazji propozyjcję.
Używam Ubuntu w sumie od niedawna, wcześniej pracowałem na innej dystrybucji ale bardzo rzadko w zasadzie. W obecnym czasie programuję w PHP z wykorzystaniem Zend Framework i co jakiś czas wpadam na nowe pomysły jeśli chodzi o ułatwianie sobie życia na Ubuntu. System ten jest dość prosty w obsłudze i można w sumie zrobić z nim prawie wszystko jednak natknąłem się na pewne ograniczenia jeśli chodzi o język Bash-a. Uczę się go również od nie dawna (tzn kiedys się uczyłem).
Napisałem skrypt w Bash-u który:
tworzy strukturę katalogów (dla aktualnego użytkownika ale można to zmienić w pliku konfiguracyjnym), tworzy niektóre pliki projektu lub kopiuje aktualnie używane do folderu z projektami itd,
robi backupy konfiguracji apache2, pliku hosts, (pidngina również jeśli jest), itd
instaluje serwer baz danych MySQL, PHP, apache2, i inne przydatne pakiety jeśli nie zostały wcześniej zainstalowane, etc.
Wyjaśnię jak to działa może.
Po wpisanieu w konsoli ./install.sh tworzy sie struktura katalogow, kopiuja sie pliki niektore i robia backupy konfiguracji apache2, hosts, etc. jest tego troche... aha i sprawdza czy zainstalowane sa dane pakiety jak nie to instaluje
Po tej operacji wpisujemy ./addsite.sh -a default i skrypt pyta użytkownika o nazwę strony, wpisujemy np coyote.pl i enter, następnie uruchamiamy firefox-a i wpisujemy coyote.pl lub http://www.coyote.pl i strona jest tam już zainstalowana (praktycznie nie musimy nawet restartować serwera, konfiguracja apache2 i hosts, a2ensite oraz przeładowanie apache2 jest całkowicie zautomatyzowane)
lub w przypadku projektu zend framework wpisujemy ./addsite.sh -a zend i skrypt pyta o nazwe strony np pikacz.pl, a nastepnie o nazwe projektu i wpisujemy np ZF.Pikacz.Project i tworzony jest projekt domyslny dla zend framework który następnie dowolnie rozbudowujemy lub wprowadzamy zmiany w szablonach itd, to np już oszczędza czas na tworzenie systemu logowania, konfiguracji, systemu news-ow itd.
addsite.sh robi wpisy i za kazdym razem backup pliku hosts
po wpisaniu w konsole np ./uninstall.sh wszystko wraca do starej rzeczywistości, usuwane są stworzone podczas instalacji katalogi i pliki, pozostaje jedynie ukryty folder .Back.Up w którym pozostają backupy tworzone podczas instalacji i inne
myslę że takie coś mogłoby być przydatne również dla innych dlatego opisuję na tym forum co już robi zestaw skryptów, zainteresowanych współpracą w rozbudowie rozwiązania proszę o kontakt
Na koniec napiszę jakich informacji potrzebuję i na jaki natknąłem się problem. Otóż chciałbym by skrypt również zmieniał trochę menu w Gnome i wiem że w python-ie są do tego nawet rozwiązania zrobione jednak w bashu nie mogę się doszukać jak to zrobić, gdzie są pliki xml czy jakie kolwiek konfiguracyjne dla menu Gnome i jak to zrobić w bashu.
Ponadto skrypt instalacyjny dodaje również wpisy do sources.list ale wyświetla brak certyfikatu czy coś z niektórych repo (które są wyraźnie potrzebne) i jak to obejść.
[Bash] Autokonfigurator dla Ubuntu 8.04
- simon-phoenix
- Piegowaty Guziec
- Posty: 4
- Rejestracja: 10 paź 2007, 13:21
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.04
- Środowisko graficzne: GNOME
- Kontakt:
- el.pescado
- Zakręcona Traszka
- Posty: 734
- Rejestracja: 26 maja 2005, 11:43
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: GNOME
- Architektura: x86
- Kontakt:
Odp: [Bash] Autokonfigurator dla Ubuntu 8.04
Rzuć okiem na katalog /usr/share/applicationsNa koniec napiszę jakich informacji potrzebuję i na jaki natknąłem się problem. Otóż chciałbym by skrypt również zmieniał trochę menu w Gnome i wiem że w python-ie są do tego nawet rozwiązania zrobione jednak w bashu nie mogę się doszukać jak to zrobić, gdzie są pliki xml czy jakie kolwiek konfiguracyjne dla menu Gnome i jak to zrobić w bashu.
Muszisz pobrać klucz publiczny, którym jest podpisywane dane repozytorium, a następnie dodać ten klucz używając apt-key.Ponadto skrypt instalacyjny dodaje również wpisy do sources.list ale wyświetla brak certyfikatu czy coś z niektórych repo (które są wyraźnie potrzebne) i jak to obejść.
Kod: Zaznacz cały
man apt-key
- simon-phoenix
- Piegowaty Guziec
- Posty: 4
- Rejestracja: 10 paź 2007, 13:21
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.04
- Środowisko graficzne: GNOME
- Kontakt:
Odp: [Bash] Autokonfigurator dla Ubuntu 8.04
tzn, gdzie są aplikacje to wiem, ale doszukałem się jedynie pliku gdzie skonfigurowano domyślne programy dla danych typów, nie ma tam jednak nigdzie tego co mnie interesuje. To znaczy może nie określiłem się konkretniej. W Ubuntu 8.04 mam w prawym górnym rogu [Aplikacje][Miejsca][System] i chciałbym dodać lub usuwać stamtąd pozycje z poziomu bash-a a nie graficznego edytora menu. Zatem gdzie są pliki konfiguracyjne (w formie tekstowej lub xml bądź inne) odpowiadające za te pozycje i ich rozmieszczenie?Rzuć okiem na katalog /usr/share/applications
- el.pescado
- Zakręcona Traszka
- Posty: 734
- Rejestracja: 26 maja 2005, 11:43
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: GNOME
- Architektura: x86
- Kontakt:
Odp: [Bash] Autokonfigurator dla Ubuntu 8.04
No właśnie tam! Przecież nie pisałbym tego, gdyby tam byćo coś innego;D
Weźmy takiego np. GIMP-a.
Możemy się z tego pliku dowiedzieć, że:
Weźmy takiego np. GIMP-a.
Kod: Zaznacz cały
$ cat /usr/share/applications/gimp-2.2.desktop
nazywa się "GIMP Image Editor"Name=GIMP Image Editor
Żeby go uruchomić, uruchamia się "gimp-remote-2.2"Exec=gimp-remote-2.2 %U
wiemy też jaka ikona siedzi w menuIcon=/usr/share/gimp/2.0/images/wilber-icon.png
No i oczywiście kategoria, w której ląduje aplikacja.Categories=Graphics;2DGraphics;RasterGraphics;GTK;
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość