Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Deutsches Forum (German) Deutsche Dokumentation
  • Search

script zum auflösen von useflag abhängigkeiten

Dokumentation, Tipps und Tricks.
Post Reply
  • Print view
Advanced search
8 posts • Page 1 of 1
Author
Message
schmutzfinger
Veteran
Veteran
User avatar
Posts: 1287
Joined: Sun Oct 26, 2003 11:29 am
Location: Dresden/Germany

script zum auflösen von useflag abhängigkeiten

  • Quote

Post by schmutzfinger » Thu Jul 15, 2004 7:25 pm

ich hatte vor kurzem ein paar probleme weil es immer wieder neue use flags gibt. http://forums.gentoo.org/viewtopic.php?t=195792

jetzt habe ich mir ein kleines script geschrieben um alle pakete zu finden, die von einem bestimmten flag betroffen sind. auserdem kann das script feststellen welche dieser pakete neu gemergt werden müssen, weil das flag heute nichtmehr aktiv ist bzw weil es damals nicht aktiv war.
das script setzt vorraus das app-portage/gentoolkit installiert ist.

Code: Select all

#!/bin/bash

#/opt/bin/flagusers

# findet alle gerade installierten ebuilds, die von einem bestimmen useflag beeinflusst werden
# 15.07.04
for dir in `qpkg -I -nc`
do 
        ver=$(qpkg -I -v -nc $dir| head -n1|cut -d"/" -f2 )
        if  cat /usr/portage/"$dir"/"$ver".ebuild 2>/dev/null| grep IUSE | grep "$1" > /dev/null 
        then
                if [ -n "$2" ] && [ "$2" = "-u" ]
                then
                        uses=$(etcat -u $dir | grep $1 | cut -b 2,4)
                        if [ "$uses" = "+-" ] || [ "$uses" = "-+" ]
                        then
                                echo $dir/$ver.ebuild
                        fi
                else
                
                        echo $dir/$ver.ebuild
                fi
        fi            
done
Bsp:
#alle installierten ebuilds die von "mmx" betroffen sind
flagusers mmx
#alle die im "etcat -u" ein +- oder -+ haben
flagusers mmx -u
#mergt selbige
for i in `flagusers mmx -u`; do emerge $i;done
#alle die neu gemergt werden müssten wenn man das mysql useflag aktivieren würde
USE="mysql" flagusers mysql -u

naja man muss ja nicht unbedingt gleich alles neu mergen, aber ich zB hab mmx irgendwie vergessen und da ich mir einbilde das das vielleicht doch was für mein xorg bringen könnte werde ich wohl demnächst nochmal mergen.
Top
toskala
Advocate
Advocate
User avatar
Posts: 2080
Joined: Sat Dec 14, 2002 1:46 am
Location: hamburg, germany

  • Quote

Post by toskala » Thu Jul 15, 2004 7:29 pm

sehr löblich, aber scripte mir lieber ein script was mich von neuen useflags in kenntnis setzt :twisted:

aber sonst gut gut :)
adopt an unanswered post
erst denken, dann posten
Top
Mac Fly
Guru
Guru
Posts: 330
Joined: Sun Nov 30, 2003 8:40 am
Location: nähe Stuttgart

  • Quote

Post by Mac Fly » Sun Jul 25, 2004 3:36 am

toskala, wär das nix für dich? So ein Script könnte ich und bestimmt auch andere gut brauchen ;)
Top
psyqil
Advocate
Advocate
User avatar
Posts: 2767
Joined: Mon May 26, 2003 8:17 pm

  • Quote

Post by psyqil » Sun Jul 25, 2004 5:09 am

Code: Select all

cp /usr/portage/profiles/use.* /etc/portage/
oder sonstwohin und dann

Code: Select all

emerge sync
diff /etc/portage/use.desc /usr/portage/profiles/use.desc
diff /etc/portage/use.local.desc /usr/portage/profiles/use.local.desc
cp /usr/portage/profiles/use.* /etc/portage/
Bin ja auch mal neugierig, wie oft da so was passiert...hab heut aber schon gesynct, teste ich also erst morgen...also heute...mann, ist das hell draußen!
Guts Nächtle!
Top
Sas
Veteran
Veteran
User avatar
Posts: 1229
Joined: Sat Jul 05, 2003 4:58 pm
Location: Germany
Contact:
Contact Sas
Website

  • Quote

Post by Sas » Sun Jul 25, 2004 10:26 am

AFAIK ist oder war so eine Funktion (also das Neu-Kompilieren betroffener Pakete) doch auch für Portage in Planung (--newuse), wie siehts denn damit aus?
42
Top
sirro
Veteran
Veteran
User avatar
Posts: 1472
Joined: Sun Jul 20, 2003 6:15 pm
Location: aachen.nrw.de.eu

  • Quote

Post by sirro » Sun Jul 25, 2004 10:44 am

Sas wrote:AFAIK ist oder war so eine Funktion (also das Neu-Kompilieren betroffener Pakete) doch auch für Portage in Planung (--newuse), wie siehts denn damit aus?
von --newuse habe ich noch nicht gehört. Aber bei portage-2.0.51 gibt es eine (IMO) tolle Neuerung:

Bei einem emerge -pv werden nicht nur die USE-Flags angezeigt sondern auch mit einem * markiert wenn sie beim letzen mal anders gesetzt waren.
Nur leider werden dabei neue USE-Flags nicht makiert. :-( Mir würde es auf jeden Fall reichen, wenn das an dieser Stelle makiert werden würde. Am besten mit einem anderen Symbol als *, damit man es leicht unterscheiden kann...

Hier nochmal ein Beispiel, so sieht es momentan unter portage-2.0.51_pre13 aus:

Code: Select all

# emerge -pv lighttpd

These are the packages that I would merge, in order: (Paket ist momentan mit +php installiert)

Calculating dependencies ...done!
[ebuild     U ] net-www/lighttpd-1.2.4 [1.2.3] -ldap -mysql -php* +ssl 0 kB [1] 

Total size of downloads: 0 kB

EDIT: ein wenig Offtopic geworden. Seht es als Teaser für das neue portage ;-)
Top
Earthwings
Bodhisattva
Bodhisattva
User avatar
Posts: 7753
Joined: Mon Apr 14, 2003 8:13 pm
Location: Germany

  • Quote

Post by Earthwings » Sun Jul 25, 2004 10:52 am

Ja, --newuse is in Portage 2.0.51, aber scheint mir noch nicht das zu tun, was es soll. Oder ich habe es falsch bedient (emerge --newuse world -pv)
Top
sirro
Veteran
Veteran
User avatar
Posts: 1472
Joined: Sun Jul 20, 2003 6:15 pm
Location: aachen.nrw.de.eu

  • Quote

Post by sirro » Sun Jul 25, 2004 11:02 am

Earthwings wrote:Ja, --newuse is in Portage 2.0.51, aber scheint mir noch nicht das zu tun, was es soll. Oder ich habe es falsch bedient (emerge --newuse world -pv)
Habs gerade auch mal probiert. Bei mir gibt er alles aus, was wie oben beschrieben mindestens einen veränderten Flag enthält... Dazu wird der Mplayer angezeigt, bei dem ein Flags entfernt wurden.
Das einzige was nicht angezeigt wird ist, sind Pakete mit einem neuen Flag (testweise ein neues zu einem hinzugefügt).

Auf jedenfall ist --newuse jetzt schon eine bereicherung für mich (endlich mal alles meinen USE-Flags anpassen ;-)) Das anzeigen von neuen USE-Flags, was man von --newuse ja erwarten würde funktioniert (noch) nicht.
Top
Post Reply
  • Print view

8 posts • Page 1 of 1

Return to “Deutsche Dokumentation”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy