Witam
Chciałbym się dowiedzieć czy dodawanie nieoficjalnych rep do systemu Arch Linux jest bezpieczne, szczególnie mnie zainteresowało repo herecura:
[herecura]
Server = https://repo.herecura.be/$repo/$arch
Ale z tego co się orientuje to jest repo testing, które to w swoich zbiorach ma kernel o nazwie bede.
A tak w ogóle to jakie repo byście polecili do dodania.
1. Dodawanie repozytoriów od TU lub DEV Archa jest zupełnie bezpieczne w tym sensie, że są to repozytoria zaufane, ale patrz pkt. 4.
2. Repozytorium, które Ciebie interesuje jest prowadzone przez Ike'a Devoldera (BlackIkeEagle/BlackEagle, czasem krótko Black Ike), który jest TU.
3. Repozytoria podpisane (signed) również można uznać za zaufane.
4. Dodanie jakiegokolwiek repozytorium, które nie jest systemowe, zawsze niesie ze sobą jakąś możliwość spowodowania destabilizacji systemu, wszak twórcy Archa mogą nawet nie wiedzieć o tym, że takie repozytorium istnieje, a już na pewno nie uwzględniają tych repozytoriów przy ocenie i testowaniu stabilności systemu, jaki dostarczają. W tym sensie nigdy nie jest to "bezpieczne". Od chwili dodania takiego repozytorium na użytkowniku spoczywa ciężar i obowiązek pieczy nad tym, by jego system działał prawidłowo. Oczekując pomocy, należy też wskazać wówczas, że z takich repozytoriów się korzysta. Zasady w zasadzie takie same, jak przy używaniu oprogramowania z AUR lub robionych we własnym zakresie.
5. Repozytorium, które wskazujesz nie jest "testing". Repozytorium
testing Ike'a to:
[herecura-testing]
Server = https://repo.herecura.be/herecura-testing/x86_64
Różnica między wskazanym przez Ciebie, a powyższym jest taka, że
herecura jest budowana na podstawie repozytoriów "stable" Archa, a
herecura-testing na podstawie repoztoriów "testing". W zależności od tego, czy masz udostępnione te ostatnie repozytoria, dokonać powinieneś wyboru odpowiedniego repozytorium Ike'a.
Oprócz tego, Ike ma jeszcze jedno repozytorium, a mianowicie:
[blackeagle-pre-community]
Server = https://repo.herecura.be/blackeagle-pre-community/x86_64
do którego trafiają paczki, zanim jeszcze znajdą się w repozytorium "community" Archa.
6. Tak Ike rozprowadza również kernel bede. Jesteś nim zainteresowany, ale z jakiej przyczyny? To "stockowy" kernel z dość okrojonym configiem. W niektórych przypadkach taki kernel po prostu nie wystartuje. Zerknij na:
https://github.com/herecura/linux-bede porównaj config z własnym, oceń. O ile pamiętam, to bede akurat uwzględnia jakieś rozwiązania dla komputerów Apple'a, a przynajmniej tak było, gdy kilka lat temu rozebrałem go na drobne. Sam sobie musisz rozważyć, czy jest Ci ono potrzebne.
7. Używałem różnych 3rd paties repozytoriów, w różnych celach. Obecnie w zasadzie mam jedynie aur-archlinux, dla pewnej wygody. Niekiedy używam również repozytorium z paczkami debug dla Qt5 (oczywiście, gdy nie mam systemu zbudowanego na nowszych, jak choćby od kilku tygodni :)). Niekiedy używam repozytorium z pf-kernel, gdy albo chcę sprawdzić akurat jego działanie, albo akurat ten kernel wybieram jako drugi w systemie (tak się podziało, że pf-kernel bardzo się upodobnił do kernela, który sam robię, a zatem używając jego nie muszę niczego przestawiać w GRUB dla jego inicjacji, a do Oleksandra mam spore zaufanie i to nawet pomijając sposób, w jaki tworzy on swoje patche). W przeszłości używałem również repo-ck, ale od czasu, gdy drogi rozwoju tego kernela (linux-ck) i potrzeby mojego komputera nieco się rozeszły, zaprzestałem tego. Niemniej jednak, w niektórych przypadkach, to dobry wybór.
Opiekunowie i twórcy tak repo-ck (graysky), jak i pf-kernel (chodzi mi o Natalenkę) - choć nie są ani TU, ani DEV są na tyle "sprawdzeni", że można do nich mieć podobne zaufanie jak do TU i DEV.
Na niektóre repozytoria trzeba uważać, bo wywalą system w kosmos. Bywają przestarzałe, bywają takie, które podmieniają paczki systemowe, niektóre są też mocno testowe.
Nikt Ci nie poleci jakiegoś konkretnego repozytorium tego typu. Raczej sam musisz wpierw dokonać oceny czy jest Ci takowe potrzebne, co dzięki temu osiągniesz, a potem spytaj o konkret. Dużą część sprawdziłem, zatem nawet ja będę Ci mógł coś podpowiedzieć.
Dziękuje Pawle za tak wyczerpujące wyjaśnienie. Co do repa herecura to myślałem że jest ono testing, a to za sprawą numeru kernela tj. 4.19.3.
Od kilku godzin to już 4.19.4, ale nie ma to znaczenia. Owe 3rd parties repozytoria często przyjmują taką zasadę, że repozytorium jest w nazwie z "testing" wówczas, jeśli oparte jest o paczki, jakie znajdują się w Archu w repozytoriach testing, na nich po prostu są budowane. Nie ma to nic wspólnego z "testowym" charakterem takiego repozytorium i z tym, że paczki z niego przechodzą do repozytorium "zasadniczego" (stabilnego), po jakimś ich przetestowaniu. Jest to związane po prostu ze sposobem budowania paczek w Archu. Z punktu widzenia stabilności rozumianej jako brak podatności na jakieś niespodziewane wysypywanie się to repozytoria testowe winny być tak samo stabilne jak "zwykłe". Paczki nie są (i prawdę mówiąc nigdy nie będą) przetestowane we wszelkich możliwych konfiguracjach itp. Mogą też w testing występować tu jakieś lekkie zaniedbania w zakresie niezauważenia, że skutkiem jakichś zmian coś jeszcze wymaga przebudowania, zmiany zależności itp.
Generalna zasada - niezależnie od tego jakie repozytorium, paczki, które wymagają budowy na określonych swoich zależnościach, są na nich zbudowane. Ot, tyle.
Bez zbędnych szczegółów - dla Ciebie prosta zasada: jeśli masz w systemie udostępnione wyłącznie repozytoria "stabilne", to żadne repozytorium, które jest budowane w oparciu o repozytorium testing nie jest właściwe w Twoim systemie.
Odnośnie tego kernel-a bede, to po zainstalowaniu paczki linux-bede oraz linux-bede-headers, w ogóle system z niego nie startuje, ba nawet go nie ma w grub-ym. Chyba trzeba zrobić update grub-a, ale niestety nie znam tej komendy w Arch-u.
Nie ma go w grubym, to nie może z niego wystartować :)
Po prostu nie wykonałeś:
sudo grub-mkconfig -o /boot/grub/grub.cfg
(czyli oweg update-grub). W przeciwieństwie do Manjaro, gdzie miałeś to z automatu, w Archu (i pochodnych) trzeba to wykonać ręcznie.
"Paczka" update-grub jest w AUR, ja polecam dodanie ww. komendy jako alias do ~/.bashrc.
No i normalnie system mi się uruchomił z bede, ale zauważyłem jedną rzecz, na domyślnym jajku zaraz po zalogowaniu zżera około 380 MB Ram-u, a na bede jakieś 420 MB. Tak więc zostanę jednak przy domyślnym jajku.
Cytat: pavbaranov w Listopad 23, 2018, 01:32:44 PMObecnie w zasadzie mam jedynie aur-archlinux, dla pewnej wygody.
Pawle, a czy mógłbyś mi podać nazwę serwera aur-archlinux?
Masz cały wpis do
/etc/pacman.conf[aur-archlinux]
Server = https://repo.itmettke.de/aur/$repo/$arch
przy czym... obecnie już to repozytorium nie istnieje. Tzn. nie istnieje repozytorium z paczkami budowanymi z AUR pod powyższym adresem, który jest podlinkowany pod repozytorium nexus o takiej zawartości:
https://repo.itmettke.de/nexus/x86_64/ Cóż, niestety takie to przypadłości tych 3rd parties repository, że raz są, raz ich nie ma, jeszcze innym razem zawartość ich jest zupełnie inna.
Obecny, prawidłowy adres (choć powyższy działa), to:
[nexus]
Server = https://repo.itmettke.de/$repo/$arch
Tutaj masz całą, aktualizowaną listę repozytoriów:
https://wiki.archlinux.org/index.php/Unofficial_user_repositories
Niestety oba repa wywalają taki błąd:
pobieranie potrzebnych kluczy...
błąd: klucz "7448C890582975CD" nie może zostać sprawdzony zdalnie
błąd: brak wymaganego klucza w pęku kluczy
błąd: nie udało się dokonać transakcji (niespodziewany błąd)
Wystąpiły błędy, nie zaktualizowano żadnego pakietu.
@Robert75 - Od kiedy masz Archa/Manjaro? Dodaj klucz GPG - masz to w wiki Archa.
Oba repozytoria są tożsame. Nazwa ich jedynie inna.
Paweł ale skąd mam ten klucz pobrać? Ponieważ przy instalacji jakiegokolwiek pakietu z tego repo wyskakuje mi powyższy błąd.
Robert - Repozytorium należy do kategorii podpisanych (Signed). Klucze są pokazane na przywołanej przeze mnie stronie repozytoriów nieoficjalnych, w przypadku nexus Key-ID masz tu:
https://wiki.archlinux.org/index.php/Unofficial_user_repositories#nexusOpis procedury:
https://wiki.archlinux.org/index.php/Pacman/Package_signing#Adding_developer_keys
Nie wiem co robię nie tak, ale po dodaniu:
pacman-key --recv-keys 7448C890582975CD
Nadal nie mogę nic z tego repo zainstalować.
Oto przykład:
sudo pacman -S google-chrome
[sudo] hasło użytkownika robson:
rozwiązywanie zależności...
szukanie sprzecznych pakietów...
Pakiet (1) Nowa wersja Zmiana Do pobrania
nexus/google-chrome 70.0.3538.110-1 189,81 MiB 54,74 MiB
Do pobrania: 54,74 MiB
Do zainstalowania: 189,81 MiB
:: Kontynuować instalację? [T/n]
:: Pobieranie pakietów...
google-chrome-70.0.... 54,7 MiB 2,59M/s 00:21 [----------------------] 100%
(1/1) sprawdzanie kluczy w bazie [----------------------] 100%
(1/1) sprawdzanie spójności pakietów [----------------------] 100%
błąd: google-chrome: podpis od "builds.itmettke.de <builds@itmettke.de>" posiada nieznane zaufanie
:: Plik /var/cache/pacman/pkg/google-chrome-70.0.3538.110-1-x86_64.pkg.tar.xz jest uszkodzony (Niepoprawny lub uszkodzony pakiet (podpis PGP)).
Czy chcesz go usunąć? [T/n]
Wyczyściłeś pamięć podręczną pacmana?
Wykonaj polecenie:
pacman -Scc
Teraz spróbuj ponownie.
sudo pacman-key --lsign-key 7448C890582975CD
?
Już sobie poradziłem, repo nexus ma dodane klucze GPG.
No to w skrócie napisze co zrobiłem. A więc najpierw:
pacman-key --recv-keys 7448C890582975CD
następnie:
pacman-key --finger 7448C890582975CD
i na koniec:
pacman-key --lsign-key 7448C890582975CD
Dzięki @pavbaranov uporałem się z tym dość szybko.
Chciałem poinformować użytkowników Arch-a że z dniem 1.01.2019 repo nexus przestało istnieć.