Linux/Tipps/Gentoo/Software: Unterschied zwischen den Versionen

Aus VivaLV
< Linux‎ | Tipps‎ | Gentoo
Zur Navigation springen Zur Suche springen
 
(24 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 15: Zeile 15:
  -linguas_de
  -linguas_de


===Abfragen===
===Abfragen für USE-Flags===
Die effektiv aktiven USE-Flags anzeigen:
Die effektiv aktiven USE-Flags anzeigen:
  emerge --info
  emerge --info
Zeile 22: Zeile 22:
Welche USE-Flags verwendet ein bestimmtes Paket?
Welche USE-Flags verwendet ein bestimmtes Paket?
  equery uses mysql
  equery uses mysql
Beschreibung der USE-Flags eines Pakets:
equery meta -u <Paket>


===Sonstiges===
===Sonstiges===
Zeile 70: Zeile 72:


==Maskierte Pakete freigeben==
==Maskierte Pakete freigeben==
'''/etc/portage/package.keywords''':
Unstable Versionen ('''/etc/portage/package.keywords'''):
  <Bereich>/<Paket>
  <Bereich>/<Paket>
bzw.
bzw.
  <Bereich>/<Paket> ~x86
  <Bereich>/<Paket> ~x86
Oder '''/etc/portage/package.unmask''':
Bestimmte Version und Revision:
=<Bereich>/<Paket>-<Version>[-<Revision>]
Bestimmte Version, neueste Revision:
~<Bereich>/<Paket>-<Version>
 
Hardmasked Versionen ('''/etc/portage/package.unmask'''):
  <Bereich>/<Paket>
  <Bereich>/<Paket>
Akzeptierung einer Lizenz ('''/etc/portage/package.license'''):
<Bereich>/<Paket> <Lizenz>
Z.B.:
dev-java/sun-jdk dlj-1.1


==Alles updaten==
==Alles updaten==
  emerge --update --deep world
  emerge --ask --quiet --update --newuse --changed-use --verbose-conflicts --backtrack=200 --deep world
Mit Rückfrage:
emerge --update --ask --deep world
 
==Nach Änderung der USE-Flags==
emerge --update --ask --deep --newuse world


==Nacharbeiten nach Updates==
==Nacharbeiten nach Updates==


===Abhängigkeiten prüfen und reparieren===
===Abhängigkeiten prüfen und reparieren===
  revdep-rebuild -i
  emerge --ask --quiet @preserved-rebuild


===Nach Kernel-Update===
===Nach Kernel-Update===
Zeile 103: Zeile 109:
===Nach Python-Updates===
===Nach Python-Updates===
  /usr/sbin/python-updater
  /usr/sbin/python-updater
===Nach Perl-Updates===
perl-cleaner --all


===Config-Files mergen===
===Config-Files mergen===
Zeile 143: Zeile 152:
===emerge beobachten===
===emerge beobachten===
  watch genlop -cn
  watch genlop -cn
===Konfiguration prüfen===
eix-test-obsolete -c -b
===Welche Pakete kommen von Overlays?===
eix -cI --in-overlay


==Deinstallieren==
==Deinstallieren==
Zeile 163: Zeile 178:
  emerge eix
  emerge eix
  emerge layman
  emerge layman
emerge git
layman -L


'''/etc/make.conf''':
'''/etc/make.conf''':
  source /usr/portage/local/layman/make.conf
source /var/lib/layman/make.conf
oder:
  source /usr/local/portage/layman/make.conf


===Standard-Programmliste und bereits konfigurierte Overlays für eix aktualisieren===
===Standard-Programmliste und bereits konfigurierte Overlays für eix aktualisieren===
  update-eix
  eix-update
Dabei werden evtl. vorher mit '''update-eix-remote''' geholte externe Listen wieder entfernt.
Dabei werden evtl. vorher mit '''eix-remote''' geholte externe Listen wieder entfernt.


===Externe Programmliste der noch nicht konfigurierten Overlays updaten===
===Externe Programmliste der noch nicht konfigurierten Overlays updaten===
  update-eix-remote update
  eix-remote update
Danach kann man mit '''eix''' auch in noch nicht mit '''layman''' hinzugefügten Overlays suchen.
Danach kann man mit '''eix''' auch in noch nicht mit '''layman''' hinzugefügten Overlays suchen.


Zeile 180: Zeile 199:
===Einbinden===
===Einbinden===
  layman -a <Repository>
  layman -a <Repository>
===Eingebundene auflisten===
layman -l
===Alle auflisten===
layman -L


===Updaten===
===Updaten===
Zeile 243: Zeile 268:
==Möglicherweise interessante Programme==
==Möglicherweise interessante Programme==
* kentoo
* kentoo
==Fonts==
Bei manchen Programmen (z.B. Firefox und Thunderbird) sieht Helvetica Font nicht gut aus. Ursache ist die Verwendung von Nimbus, wenn Helvetica angefordert wird:
$ fc-match Helvetica
n019003l.pfb: "Nimbus Sans L" "Regular"
Lösung:<br>
'''/etc/fonts/conf.d/30-metric-aliases.conf''':
<pre>
          <!-- <family>Nimbus Sans L</family> -->
          <family>Arial</family>
</pre>
Überprüfung:
$ fc-match Helvetica
arial.ttf: "Arial" "Normal"


=Installationsanleitungen=
=Installationsanleitungen=
Zeile 333: Zeile 374:
Dann:
Dann:
  g-cpan -i Time-Format -a
  g-cpan -i Time-Format -a
==Fonts in Chrome==
Ab Chrome 33 sehen manche Fonts sehr schlecht aus in Chrome. Lösung:
eselect fontconfig enable 70-no-bitmaps.conf

Aktuelle Version vom 9. Oktober 2023, 05:17 Uhr

Bedienung

USE-Flags

Dateien

  • vom Profile vorgegebene globale USE-Flags: /etc/make.profile/make.defaults
  • eigene USE-Flags: /etc/make.conf
  • Paket-spezifische USE-Flags: /etc/portage/package.use

USE-Flag setzen:

<Flag>

USE-Flag löschen:

-<Flag>

LINGUAS-Flag löschen (Beispiel: de):

-linguas_de

Abfragen für USE-Flags

Die effektiv aktiven USE-Flags anzeigen:

emerge --info

Welche Pakete verwenden ein bestimmtes USE-Flag?

equery hasuse <Flag>

Welche USE-Flags verwendet ein bestimmtes Paket?

equery uses mysql

Beschreibung der USE-Flags eines Pakets:

equery meta -u <Paket>

Sonstiges

Nach Änderung der USE-Flags die betroffenen Pakete neu compilieren und zusätzlich benötigte Pakete installeren:

emerge --update --newuse --deep world

Editor für USE-Flags:

emerge ufed

Meine derzeitigen USE-Flags

USE="-arts libc-omitfp -gnome dvb lirc dts joystick lcd mmx asf ivtv apache2 mysql mysqli lm_sensors openssh usb v4l v4l2 nvidia mplayer a52 imagemagick lzo mjpeg jpeg2k lcms fame theora aac ups glitz transcode vcd java nsplugin x264 divx xvid"

Repository aktualisieren

emerge --sync

Suchen

Suchen eines Paketnamens in Portage:

emerge --search <SubString>

Suchen in der Paketbeschreibung in Portage:

emerge --searchdesc <SubString>

Suchen aller Versionen eines Pakets lokal und in Portage:

equery list --portage-tree <SubString>

Installieren

emerge <Paket>

Abgebrochene Installation fortsetzen

emerge --resume

Dabei das erste Paket überspringen:

emerge --resume --skipfirst

Updaten

emerge --update <Paket>

Vorcompilierte Pakete bevorzugen

Quelle und Liste der BINHOSTs: http://gentoo-wiki.com/TIP_Using_PORTAGE_BINHOST

Vorbereitung in /etc/make.conf (Beispiel):

PORTAGE_BINHOST="https://e.ututo.org.ar/i686/"

Dann immer beim Installieren -kg angeben:

emerge -kg <Paket>

Bei vom Hersteller vorcompilierten Versionen:

emerge <Paket>-bin

Bestimmte Version installieren

emerge =<Paket>-<Version>

Maskierte Pakete freigeben

Unstable Versionen (/etc/portage/package.keywords):

<Bereich>/<Paket>

bzw.

<Bereich>/<Paket> ~x86

Bestimmte Version und Revision:

=<Bereich>/<Paket>-<Version>[-<Revision>]

Bestimmte Version, neueste Revision:

~<Bereich>/<Paket>-<Version>

Hardmasked Versionen (/etc/portage/package.unmask):

<Bereich>/<Paket>

Akzeptierung einer Lizenz (/etc/portage/package.license):

<Bereich>/<Paket> <Lizenz>

Z.B.:

dev-java/sun-jdk dlj-1.1

Alles updaten

emerge --ask --quiet --update --newuse --changed-use --verbose-conflicts --backtrack=200 --deep world

Nacharbeiten nach Updates

Abhängigkeiten prüfen und reparieren

emerge --ask --quiet @preserved-rebuild

Nach Kernel-Update

module-rebuild rebuild
update-modules force

Nach xorg-server Update

Liste der installierten X-Treiber:

qlist -I -C x11-drivers/

Dann alle Treiber mit

emerge <Treiber>

neu installieren.

Nach Python-Updates

/usr/sbin/python-updater

Nach Perl-Updates

perl-cleaner --all

Config-Files mergen

etc-update

Reste von Abbrüchen löschen

rm -rf /var/tmp/portage/<Bereich>/<Paket>

Security-Fixes

Quelle: http://www.gentoo.org/doc/en/security/security-handbook.xml?part=1&chap=14

Prüfen, ob es nicht installierte Security-Fixes gibt:

glsa-check -d affected

oder

glsa-check -t all

Einspielen eines bestimmten Fixes simulieren:

glsa-check -p <Fix>

Einen bestimmten Fix installieren:

glsa-check -f <Fix>

Abfragen

Welche Dateien enthält ein Paket?

equery files <Paket>

Welche Pakete hängen von einem Paket ab?

equery depends <Paket>

Welche Pakete sind installiert?

equery list <String>

Zu welchem Paket gehört eine Datei?

equery belongs <Datei>

Wenn dabei der Fehler "Unrecognized CONTENTS entry on line 1" auftritt, dann stimmt mit einem Paket etwas nicht. Dies kann man herausfinden mit:

strace emerge belongs <Datei> >log.txt 2>&1

Und dann nach dem Fehler in log.txt suchen. Der Fehler liegt in der Datei /var/db/pkg/<Bereich>/<Paket>/CONTENTS. Um den Fehler zu beheben das betroffene Paket deinstallieren bzw. neu installieren. Bei mir war es das Paket livecd-kernel.

Wieviel Compilierzeit benötigte ein Paket?

genlop -t <Paket>

emerge beobachten

watch genlop -cn

Konfiguration prüfen

eix-test-obsolete -c -b

Welche Pakete kommen von Overlays?

eix -cI --in-overlay

Deinstallieren

emerge --unmerge <Paket>

Dabei werden Abhängigkeiten nicht berücksichtigt! Deswegen vorher mit equery depends <Paket> prüfen!

Unnötige Pakete löschen

Nach Deinstallation von Paketen gibt es meistens damals mitinstallierte Pakete, die nicht mehr benötigt werden. Diese kann man löschen mit:

emerge --depclean
revdep-rebuild -i


Tarballs löschen

rm /usr/portage/distfiles/<Name>

oder http://elusseau.free.fr/index.php/en/page/2

Zusätzliche Repositories einbinden

Vorbereitung

emerge eix
emerge layman
emerge git
layman -L

/etc/make.conf:

source /var/lib/layman/make.conf

oder:

source /usr/local/portage/layman/make.conf

Standard-Programmliste und bereits konfigurierte Overlays für eix aktualisieren

eix-update

Dabei werden evtl. vorher mit eix-remote geholte externe Listen wieder entfernt.

Externe Programmliste der noch nicht konfigurierten Overlays updaten

eix-remote update

Danach kann man mit eix auch in noch nicht mit layman hinzugefügten Overlays suchen.

Suchen

eix <Paket>

Einbinden

layman -a <Repository>

Eingebundene auflisten

layman -l

Alle auflisten

layman -L

Updaten

layman -S

Entfernen

layman -d <Repository>

Externe Programme in lokales Repository legen

Quelle: http://gentoo-wiki.com/HOWTO_Installing_3rd_Party_Ebuilds

Vorbereitung

/etc/make.conf:

PORTDIR_OVERLAY="/usr/local/portage"

Durchführung

mkdir -p /usr/local/portage/<Bereich>/<Paket>
cd /usr/local/portage/<Bereich>/<Paket>
wget <ebuild>

/etc/portage/package.keywords:

<Bereich>/<Paket>

Dann:

ebuild <Paket>-<Version>.ebuild digest

Programmverfügbarkeit

Standardrepository

  • mozilla-firefox
  • mozilla-thunderbird
  • ktimemon (kicker-applets)
  • equery (gentoolkit)
  • kdebase-meta
  • win32codecs
  • grip
  • jdk
  • quadkonsole (masked)
  • gaim
  • mplayer
  • kaffeine
  • wine
  • ntp
  • jpilot
  • procmail
  • spamassassin
  • uw-imap
  • ksensors
  • mythtv
  • avidemux
  • amule
  • nxserver-freeedition
  • xdm
  • htop
  • vnc ("net-misc/vnc server" -> /etc/portage/package.use)
  • kuroo
  • slocate
  • hplip
  • mysqlnavigator

Zusätzliche Repositories

  • kmediafactory

Möglicherweise interessante Programme

  • kentoo

Fonts

Bei manchen Programmen (z.B. Firefox und Thunderbird) sieht Helvetica Font nicht gut aus. Ursache ist die Verwendung von Nimbus, wenn Helvetica angefordert wird:

$ fc-match Helvetica
n019003l.pfb: "Nimbus Sans L" "Regular"

Lösung:
/etc/fonts/conf.d/30-metric-aliases.conf:

          <!-- <family>Nimbus Sans L</family> -->
          <family>Arial</family>
 

Überprüfung:

$ fc-match Helvetica
arial.ttf: "Arial" "Normal"

Installationsanleitungen

Firefox/Thunderbird

Nur englische Sprache und kein EnigMail installieren

Damit nur englische Sprache und kein Enigmail installiert wird, in /etc/portage/package.use:

www-client/mozilla-firefox -linguas_de
mail-client/mozilla-thunderbird -linguas_de -crypt
x11-plugins/enigmail -linguas_de

Dann:

emerge mozilla-firefox
emerge mozilla-thunderbird

Browser-Plugins

Browser-Plugins werden unter Gentoo nach /usr/lib/nsbrowser/plugins kopiert.

ivtv

http://ivtvdriver.org/index.php/Howto:Gentoo

In der Kernel-Config muss CONFIG_VIDEO_HELPER_CHIPS_AUTO ausgeschaltet sein!

mysql

Bei Verwendung von MythTV, in /etc/portage/package.use:

dev-db/mysql latin1

Dann:

emerge mysql
emerge --config mysql
/etc/init.d/mysql start
rc-update add mysql default

Falls Runlevel console angelegt:

rc-update add mysql console

mythtv

emerge mythtv
passwd mythtv

Google Desktop

ebuild (app-misc/google-desktop) für Version 1.1.1.0075 verfügbar hier.

/etc/portage/package.keywords:

app-misc/google-desktop ~x86

KMediaFactory

ebuild (media-video/kmediafactory) verfügbar hier.

/etc/portage/package.keywords:

media-video/projectx ~x86
dev-java/browserlauncher2 ~x86

Mondorescue

/etc/make.conf:

PORTDIR_OVERLAY="/usr/local/portage"

/etc/portage/package.keywords:

sys-apps/mindi-busybox
sys-apps/mindi-kernel

/etc/portage/package.unmask:

app-backup/mondo-rescue

Dann:

mkdir -p /usr/local/portage/sys-apps/mindi-busybox
mkdir -p /usr/local/portage/sys-apps/mindi
mkdir -p /usr/local/portage/app-backup/mondo-rescue
cd /usr/local/portage/sys-apps/mindi-busybox
wget http://www.boerkel.de/mindi-busybox-1.2.2.ebuild
ebuild mindi-busybox-1.2.2.ebuild digest
cd /usr/local/portage/sys-apps/mindi
wget ftp://ftp.mondorescue.org/gentoo/1.6/mindi-1.2.4.ebuild
ebuild mindi-1.2.4.ebuild digest
cd /usr/local/portage/app-backup/mondo-rescue
wget ftp://ftp.mondorescue.org/gentoo/1.6/mondo-2.2.4.ebuild
mv mondo-2.2.4.ebuild mondo-rescue-2.2.4.ebuild

mondo-rescue-2.2.4.ebuild:

app-cdr/cdrtools

ändern nach

virtual/cdrtools

Dann:

ebuild mondo-rescue-2.2.4.ebuild digest
emerge mindi-busybox
emerge =mindi-1.2.4
emerge =mondo-rescue-2.2.4

Perl-Module, die nicht in Portage verfügbar sind

Vorbereitung(einmalig):

emerge g-cpan

Dann:

g-cpan -i Time-Format -a

Fonts in Chrome

Ab Chrome 33 sehen manche Fonts sehr schlecht aus in Chrome. Lösung:

eselect fontconfig enable 70-no-bitmaps.conf