View previous topic :: View next topic |
Author |
Message |
astaecker Guru
Joined: 28 Apr 2003 Posts: 403 Location: Hamburg / Germany
|
Posted: Sat Nov 04, 2006 11:07 am Post subject: [gelöst] Pakete aus Overlays maskieren |
|
|
Moin,
ich habe gerade mittels layman (echt 'ne feine Sache) mir das sabayon-Overlay geholt.
Nun, ich bin an sich nur an einzelnen ebuilds aus dem Overlay interessiert, sabayon z.B. ist aber ein Alleskönner (sprich: hat ebuilds aus vielen verschiedenen Bereichen). So z.B. auch aktualisierte ebuilds für Amarok (1.4.4, 1.4.4-r1 und 1.4.4-r2).
Mit der üblichen Technik (/etc/portage/package.mask) kann ich die beiden neuesten ebuilds ausschließen, aber dennoch will Portage 1.4.4 aus dem Overlay neuinstallieren, weil dieses ein paar neue USE-Flags hat. Außerdem will ich auch grundsätzlich nicht 1.4.4-r1 maskieren, weil es kann ja auch mal im offiziellen Portage Baum ein Update geben.
Auch will ich nicht die gewünschten ebuilds aus dem sabayon-Overlay in ein lokales Overlay kopieren, da ich so nicht mitbekommen, wenn es ein Update im sabayon-Overlay gibt.
Die Frage ist also: Wie schließe ich ebuilds nach Overlays aus? Kann man irgendwie eine solche Angabe in der package.mask machen oder kann man vielleicht schon beim syncen die ebuilds ausschließen (gibt es bei SVN so etwas wie rsync-excludes?)?
Last edited by astaecker on Thu Nov 23, 2006 9:44 am; edited 1 time in total |
|
Back to top |
|
|
Ampheus l33t
Joined: 19 Oct 2005 Posts: 814 Location: Rheine, NRW, Germany
|
Posted: Sat Nov 04, 2006 2:52 pm Post subject: |
|
|
Naja es gäbe eine händische Methode:
Erst das overly syncen, dann alle Bereiche ausser denen, die du haben willst, löschen. Das musst du zwar nach jeden sync machen, aber du könntest dir ja ein kleines script dafür schreiben. |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6780
|
Posted: Sun Nov 05, 2006 12:46 am Post subject: |
|
|
Ampheus wrote: | ...aber du könntest dir ja ein kleines script dafür schreiben. |
Das ist ein bisschen komplizierter, wenn man den Traffic niedrig halten will: Man muss zunächst die zu löschenden Files sichern, weil man sie vor dem nächsten Syncen auspacken will, um zu vermeiden, dass sie bei jedem Sync erneut geladen werden. Außerdem muss man nach dem Löschen "ebuild ... manifest" aufrufen, weil sich Portage sonst über die fehlenden Files mokiert. Ein Skript, das nach Konfiguration all dies tut (allerdings für gensync statt für Layman) ist gensync.fix in http://www.mathematik.uni-wuerzburg.de/~vaeth/gentoo/index.html |
|
Back to top |
|
|
astaecker Guru
Joined: 28 Apr 2003 Posts: 403 Location: Hamburg / Germany
|
Posted: Sun Nov 05, 2006 10:58 am Post subject: |
|
|
An ein Skript habe ich gar nicht gedacht, aber das sollte funktionieren.
Danke für die Vorlage, mv. |
|
Back to top |
|
|
astaecker Guru
Joined: 28 Apr 2003 Posts: 403 Location: Hamburg / Germany
|
Posted: Thu Nov 23, 2006 9:43 am Post subject: |
|
|
So, mir fiel heute ein, wie ich es ganz einfach machen kann.
Einfach das layman-wrapper Skript in /usr/local/sbin erstellen und mittels "chmod +x /usr/local/sbin/layman-wrapper" ausführbar machen.
/usr/local/sbin/layman-wrapper:
Code: | #!/bin/bash
/usr/bin/layman "$*"
rsync -a --delete --exclude-from="/usr/portage/local/layman/rsync_excludes" /usr/portage/local/layman/* /usr/portage/local/layman-wrapper
sed -i "s:layman:layman-wrapper:" /usr/portage/local/layman-wrapper/make.conf |
Dann noch die rsync_excludes erstellen. Die Syntax ist die gleiche wie bei /etc/portage/rsync_excludes.
/usr/portage/local/layman/rsync_excludes:
Code: | cache*
overlays.xml
rsync_excludes
+ sabayon/eclass**
+ sabayon/kde-base/kicker**
+ sabayon/kde-base*
sabayon/** |
Als letztes muss in der "/etc/make.conf" die "source" Zeile von layman umbiegen:
Code: | source /usr/portage/local/layman-wrapper/make.conf |
Damit werden dann nicht mehr die vollständigen Overlays eingebunden, sondern nur die ausgewählten Teile, die nach /usr/portage/local/layman-wrapper rüberkopiert worden sind.
Nun ruft layman nicht mehr direkt auf, sondern indirekt über "layman-wrapper". |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|