Partytrick för att få in många USE-flags? (Gentoo Linux)

Permalänk
Medlem

Partytrick för att få in många USE-flags? (Gentoo Linux)

Har installerat Gentoo på main-desktopen igår kväll, tog ett par timmar (och jag fick den att boota på NVMe-driven ).
Det jag läser och håller på att sätta mig in i nu är att installera X (xorg) som nästa steg.

Det här med USE-flags är hur logiskt som helst, men jag är lite brydd över best practice?
Det finns lokala- och globala USE-flags. Så vitt jag förstår är /etc/portage/make.conf mest för globala USE-flags, till exempel "X gnome -qt" och liknande, medan de lokala useflags sätter jag i "/etc/portage/package.use/applikation"
Som färsking i Gentoo-världen undrar jag om det är ett konsekvent sätt att jobba med USE-flags att köra de globala i make.conf och de lokala i package.use/xxx-app?
Jag känner väl att det blir lite rörigt efter ett tag. Kanske?

Jag vill kanske inte att alla program med stöd för exempelvis blueray skall kompileras med just blueray-stöd, utan kanske bara vlc? (för att exemplifiera från Gentoo Handbook). MEN då min fråga. Jag skall installera X och vill ju då ha in de nödvändiga USE-flags för just xorg till att börja med. Har manuellt lagt in X under USE= i make.conf, då jag vill att alla applikationer kompileras med stöd för X
Sedan var där fler USE-flags (såklart)
var lägger jag dessa lämpligtvis och hur trycker jag in (batchar) USE-flags på snabbast/bästa sätt?

Hur gör ni, lastar ni in hela klabbet i make.conf och kör en update eller är ni specifika och delar upp det strikt mellan applikationerna?

Om någon förstår vad jag menar? Eller tänker jag fel?

Visa signatur

Mac Mini M2 Pro
5K

Permalänk
Medlem

Du ska vara försiktig med globala USE-flaggor för du har inte lika bra koll på vad de kan göra. Det är ju som sagt bra om du vill helt undvika typ gtk3 eller så. Men annars är det rekomenderat att hålla sig till per paket inställningar.

Visa signatur

Spara på minnen, inte saker.

Permalänk
Medlem
Skrivet av Hund:

Du ska vara försiktig med globala USE-flaggor för du har inte lika bra koll på vad de kan göra. Det är ju som sagt bra om du vill helt undvika typ gtk3 eller så. Men annars är det rekomenderat att hålla sig till per paket inställningar.

Tack. Jag gjorde misstaget (ett av några stycken) att enabla debug i make.conf haha
Det blev jag varse illa kvickt att det i n t e var så god idé

Visa signatur

Mac Mini M2 Pro
5K

Permalänk
Medlem
Skrivet av Dockland:

Tack. Jag gjorde misstaget (ett av några stycken) att enabla debug i make.conf haha
Det blev jag varse illa kvickt att det i n t e var så god idé

Haha! Det händer även den bäste som man säger.

Visa signatur

Spara på minnen, inte saker.

Permalänk
Medlem

Välkommen till gentoo.

Varje ebuild har default useflags som skaparen av ebuilden tycker är vettiga. Vanligtvis är de bra nog. Useflags från din profil kan overridea default flaggorna i ebuilds. Profilen sätter en bunt globala useflags som passar för vad profilen är avsedd för. T.ex. default/linux/amd64/13.0/desktop/plasma profilen sätter qt useflaggan. I stället för att sätta massa globala useflaggor i make.conf försök hitta en profil som gör vad du vill.

Sätter du många useflaggor i make.conf är det risk att du får problem. T.ex. om plasma profilen sätter qt och du sätter gtk själv är det vissa ebuild som inte funkar för de kräver antingen qt eller gtk men inte båda. Useflaggor i make.conf är mer praktiskt för att disablea funktionalitet globalt. T.ex. använder jag -ipv6 i make.conf eftersom jag inte har ipv6 och inte behöver stöd för det i några program. Vissa useflaggor är det aldrig mening att du ska sätta själv utan de ska bara sättas av profiler så se upp med vad du sätter.

Efterhand som du lägger in undantag i /etc/portage/package.* filerna är det bra om du också lägger till kommentarer så du senare vet varför du gjorde ändringen. Det är svårt att minnas ett år senare att ett visst program var buggigt och behöver en speciell flagga eller liknande för att funka.

En annan sak alla nya gentoo användare måste veta är att emerge sync över rsync är osäkert. Rsync har ingen säkerhet så en attacker som kan mitm anslutningen får omedelbart root execution permission. Du måste själv göra en don't-root-my-box opt-in för att få säker sync:
https://wiki.gentoo.org/wiki/Handbook:Parts/Working/Features#...
Gentoo tar inte säkerhet på så stort allvar.

Permalänk
Medlem
Skrivet av Emaku:

Välkommen till gentoo.

Varje ebuild har default useflags som skaparen av ebuilden tycker är vettiga. Vanligtvis är de bra nog. Useflags från din profil kan overridea default flaggorna i ebuilds. Profilen sätter en bunt globala useflags som passar för vad profilen är avsedd för. T.ex. default/linux/amd64/13.0/desktop/plasma profilen sätter qt useflaggan. I stället för att sätta massa globala useflaggor i make.conf försök hitta en profil som gör vad du vill.

Sätter du många useflaggor i make.conf är det risk att du får problem. T.ex. om plasma profilen sätter qt och du sätter gtk själv är det vissa ebuild som inte funkar för de kräver antingen qt eller gtk men inte båda. Useflaggor i make.conf är mer praktiskt för att disablea funktionalitet globalt. T.ex. använder jag -ipv6 i make.conf eftersom jag inte har ipv6 och inte behöver stöd för det i några program. Vissa useflaggor är det aldrig mening att du ska sätta själv utan de ska bara sättas av profiler så se upp med vad du sätter.

Efterhand som du lägger in undantag i /etc/portage/package.* filerna är det bra om du också lägger till kommentarer så du senare vet varför du gjorde ändringen. Det är svårt att minnas ett år senare att ett visst program var buggigt och behöver en speciell flagga eller liknande för att funka.

En annan sak alla nya gentoo användare måste veta är att emerge sync över rsync är osäkert. Rsync har ingen säkerhet så en attacker som kan mitm anslutningen får omedelbart root execution permission. Du måste själv göra en don't-root-my-box opt-in för att få säker sync:
https://wiki.gentoo.org/wiki/Handbook:Parts/Working/Features#...
Gentoo tar inte säkerhet på så stort allvar.

Tack för ditt svar. Jag läser runt lite här och var, och de flesta kör, som du skriver, inte generellt i make.conf utan på applikationsbasis. Låter sunt.

Visa signatur

Mac Mini M2 Pro
5K