
You are not logged in.
For those interested, I now have a special version of portage available in GitHub, in the "funtoo-path" branch:
https://github.com/funtoo/portage-funto … untoo-path
This branch contains a beta implementation of unified Portage paths. It works like this:
/etc/make.conf is now located at /etc/portage/make.defaults /etc/portage is now a true profile - and not only that, it is *the* profile.
/etc/portage/profile has been deprecated (put stuff in /etc/portage instead)
/etc/make.profile has been deprecated - you now set your profile by creating an /etc/portage/parent file containing something like ":default/linux/amd64/2008.0" (with latest git tree.)
Portage will parse the profiles by looking at /etc/portage and recursing through the "parent" file. Remember that an initial ":" in the parent file is relative to the portage tree's "/profiles" directory.
/etc/make.globals is deprecated (it's just a symlink now anyway, but thought you might like to know it can be removed too)
After making these changes, all your Portage config should reside in /etc/portage.
What this does is move all Portage configuration inside /etc/portage, and drastically simplifies the path structure. I have not updated man pages, this is just a BETA of the code for testing purposes. There are likely bugs to be ironed out -- however, in initial tests, I have no problems and Portage seems to be parsing things like USE variables and things correctly.
To install:
First make sure you have emerged portage-2.2.1.1 and that is running well.
Then:
install -d /root/git/
cd /root/git
git clone git://github.com/funtoo/portage-funtoo.git
cd portage-funtoo
git checkout funtoo-path
cd /usr/lib
mv /usr/lib/portage /usr/lib/portage.inst
ln -s /root/git/portage-funtoo portage
To uninstall:
cd /usr/lib
mv portage portage.git
mv portage.inst portage
The adventurous are welcome to test this new branch of Portage and report their experiences here.
Regards,
Daniel
Last edited by drobbins (2011-01-15 21:22:51)
Offline
Installed, it looks it can't source other file:
helium ~ # emerge --info
ParseError: Invalid token '/var/lib/layman/make.conf' (not '='): /etc/portage/make.defaults: line 22 in /etc/portage/make.defaultshelium ~ # grep layman /etc/portage/make.defaults
source /var/lib/layman/make.confLast edited by mantas (2011-01-15 16:53:52)
Offline
That was layman error i wanted to report, sorry, i didn't provide the actual error, overlays works if you set PORTDIR_OVERLAY=/var/lib/layman/foo in /etc/portage/make.defaults. Also with /default/linux/amd64/2008.0 emerge --info shows unavailable profile :
Portage funtoo_p2.2_alpha6 (unavailable, gcc-4.4.5, glibc-2.11.2-r2, 2.6.37-gentoo x86_64)Everythimng else works like a charm
Last edited by angry_vincent (2011-01-15 18:59:08)
Offline
don't know if it is a bug, or if I should change my *.unmask, but before trying this new portage, emerge didn't complain.
* Running emerge --sync
--- Invalid atom in /etc/portage/package.unmask: Slot deps are not allowed in EAPI 0: 'kde-base/kdeartwork-colorschemes:4.6'I trimmed following lines for each unmasked kde- :4.6 package
Offline
One thing I may do is have an initial prefix of ":" mean "relative to PORTDIR", and if you use a "/" at the beginning, it's an absolute path. So then you could add /var/lib/layman to your parents file.
Offline
Note, I have just committed a change in "parents" file parsing.
An initial ":" is now used to mean "relative to portage tree profiles directory", instead of "/" previously.
Absolute paths can now be included, such as "/var/lib/layman", to point to that actual directory.
This should allow for an easier fix to the layman issue and an easy way to source external settings without using "source" in /etc/portage/make.defaults"
-Daniel
Offline
I tried to make portage aware of layman overlays directly from laymans make.conf, but I probably misunderstand something. Here is what I made:
helium ~ # cat /etc/portage/parent
:default/linux/amd64/2008.0/desktop
/var/lib/laymanhelium ~ # ls -l /var/lib/layman
-rw-r--r-- 1 root root 152 2011-01-16 00:17 make.conf
lrwxrwxrwx 1 root root 25 2011-01-16 00:14 make.defaults -> /var/lib/layman/make.confhelium ~ # cat /var/lib/layman/make.defaults
PORTDIR_OVERLAY="
/var/lib/layman/webapps-experimental
/var/lib/layman/sunrise
/var/lib/layman/kde
/var/lib/layman/qting-edge
/var/lib/layman/science
$PORTDIR_OVERLAY
"However, emerge doesn't know about these overlays this way.
Offline
Mantas, thanks for testing - I made the ":" change to allow for the fix but I will need to test and tweak some things to make it actually work. It does work for USE but it does not appear to work for PORTDIR_OVERLAY.
Offline
initial emerge --sync problem
I use a link to another partitions for use with portage:
/usr # vdir po*
lrwxrwxrwx 1 root root 26 Jan 16 18:56 portage -> /portable/VarPortageFuntooNow, with an empty /usr/portage
# emerge --sync
Unavailable repository 'gentoo' referenced by masters entry in '/var/lib/layman/openoffice-geki/metadata/layout.conf'
>>> Using /portable/VarPortageFuntoo.sync/VarPortageFuntoo as temporary clone directory...
>>> Starting initial git clone with git://github.com/funtoo/portage-mini-2010...
Cloning into VarPortageFuntoo...
remote: Counting objects: 279500, done.
remote: Compressing objects: 100% (137241/137241), done.
remote: Total 279500 (delta 139656), reused 278321 (delta 138480)
Receiving objects: 100% (279500/279500), 82.58 MiB | 1.30 MiB/s, done.
Resolving deltas: 100% (139656/139656), done.
Unavailable repository 'gentoo' referenced by masters entry in '/var/lib/layman/openoffice-geki/metadata/layout.conf' Ready synced new portage tree is then moved
/portable/VarPortageFuntoo.sync/VarPortageFuntoo to /portable/VarPortageFuntoo/VarPortageFuntoo
which results in having /usr/portage/VarPortageFuntoo
instead of just /usr/portage
After moving the portage tree one directory up, then
# emerge --sync
Performing Global Updates:
(Could take a couple of minutes if you have a lot of binary packages.)
.='update pass' *='binary update' #='/var/db update' @='/var/db move'
s='/var/db SLOT move' %='binary move' S='binary SLOT move'
p='update /etc/portage/package.*'
/portable/VarPortageFuntoo/profiles/updates/1Q-2004.........................................
/portable/VarPortageFuntoo/profiles/updates/2Q-2004................................................................................................................
/portable/VarPortageFuntoo/profiles/updates/3Q-2004...............................................................................................................................................................................................
/portable/VarPortageFuntoo/profiles/updates/4Q-2004.....................................................................................................................................................................................................................................................................
/portable/VarPortageFuntoo/profiles/updates/1Q-2005..................................................................................................................................................................................................................................................
/portable/VarPortageFuntoo/profiles/updates/2Q-2005..........................................................................................................
/portable/VarPortageFuntoo/profiles/updates/3Q-2005..............................................................................
/portable/VarPortageFuntoo/profiles/updates/4Q-2005.......................................
/portable/VarPortageFuntoo/profiles/updates/1Q-2006...........................................
/portable/VarPortageFuntoo/profiles/updates/2Q-2006........................................
/portable/VarPortageFuntoo/profiles/updates/3Q-2006...............
/portable/VarPortageFuntoo/profiles/updates/4Q-2006.........................
/portable/VarPortageFuntoo/profiles/updates/1Q-2007.....................
/portable/VarPortageFuntoo/profiles/updates/2Q-2007..........................
/portable/VarPortageFuntoo/profiles/updates/3Q-2007........................................
/portable/VarPortageFuntoo/profiles/updates/4Q-2007.................
/portable/VarPortageFuntoo/profiles/updates/1Q-2008................
/portable/VarPortageFuntoo/profiles/updates/2Q-2008....................................
/portable/VarPortageFuntoo/profiles/updates/3Q-2008..............
/portable/VarPortageFuntoo/profiles/updates/4Q-2008...........................
/portable/VarPortageFuntoo/profiles/updates/1Q-2009..............
/portable/VarPortageFuntoo/profiles/updates/2Q-2009.....................................................................................
/portable/VarPortageFuntoo/profiles/updates/3Q-2009......................................................
/portable/VarPortageFuntoo/profiles/updates/4Q-2009........................
/portable/VarPortageFuntoo/profiles/updates/1Q-2010...........................................................................
/portable/VarPortageFuntoo/profiles/updates/2Q-2010.......................................
/portable/VarPortageFuntoo/profiles/updates/3Q-2010............
/portable/VarPortageFuntoo/profiles/updates/4Q-2010............................
/portable/VarPortageFuntoo/profiles/updates/1Q-2011.....
>>> Starting git pull...
Already up-to-date.
>>> Git pull in /portable/VarPortageFuntoo successful
>>> Synchronizing timestamps...... it is accepted from portage to have its tree directly in /usr/portage, which in effekt is /portable/VarPortageFuntoo
my Info
Portage 2.2.1.1 (default/linux/amd64/2008.0/desktop, gcc-4.4.5, glibc-2.11.2-r2, 2.6.36-ck2.363-3.ral.45 x86_64)
=================================================================
System uname: Linux-2.6.36-ck2.363-3.ral.45-x86_64-Intel-R-_Core-TM-2_Duo_CPU_P8700_@_2.53GHz-with-gentoo-2.1.8
Portage Tree: /portable/VarPortageFuntoo
Portage HEAD: ee823611cc1ee9a11550534d49458055ae7b6e67 /portable/VarPortageFuntoo/.git/refs/heads/funtoo.org
app-shells/bash: 4.1_p9-r1
dev-java/java-config: 2.1.11-r3::funtoo
dev-lang/python: 2.6.5-r3::funtoo
dev-util/cmake: 2.8.3-r1
sys-apps/baselayout: 2.1.8-r2::funtoo
sys-apps/openrc: 0.6.8
sys-apps/sandbox: 2.3-r1::funtoo
sys-devel/autoconf: 2.13::funtoo, 2.68::funtoo
sys-devel/automake: 1.9.6-r3::funtoo, 1.10.3::funtoo, 1.11.1::funtoo
sys-devel/binutils: 2.20.1::funtoo
sys-devel/gcc: 4.4.5::funtoo
sys-devel/gcc-config: 1.4.1::funtoo
sys-devel/libtool: 2.4-r1::funtoo
sys-devel/make: 3.81-r2::funtoo
virtual/os-headers: 2.6.32::funtoo (sys-kernel/linux-headers)
Repositories:
gentoo
location: /portable/VarPortageFuntoo
priority: 1000
geki-overlay
location: /var/lib/layman/openoffice-geki
masters: gentoo
priority: -1
ABI="amd64"
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
ACCEPT_PROPERTIES="*"
ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol"
ANT_HOME="/usr/share/ant"
APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias"
ARCH="amd64"
ASFLAGS_x86="--32"
AUTOCLEAN="yes"
CAMERAS="canon samsung"
CBUILD="x86_64-pc-linux-gnu"
CCFLAGS=" -march=core2 -mtune=core2 -O2 -pipe "
CDEFINE_amd64="__x86_64__"
CDEFINE_x86="__i386__"
CFLAGS=" -march=core2 -mtune=core2 -O3 -pipe "
CFLAGS_x86="-m32"
CHOST="x86_64-pc-linux-gnu"
CHOST_amd64="x86_64-pc-linux-gnu"
CHOST_x86="i686-pc-linux-gnu"
CLEAN_DELAY="5"
COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog"
COLLISION_IGNORE="/lib/modules"
CONFIG_PROTECT="/etc /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CVS_RSH="ssh"
CXXFLAGS="-O2 -pipe"
DEFAULT_ABI="amd64"
DISPLAY=":0"
DISTDIR="/usr/portage/distfiles"
EDITOR="/bin/nano"
ELIBC="glibc"
EMERGE_DEFAULT_OPTS=" --jobs=1 --ask --nospinner --color n --verbose --with-bdeps=y "
EMERGE_WARNING_DELAY="10"
EPREFIX=""
EROOT="/"
FEATURES="assume-digests binpkg-logs buildpkg distlocks fixlafiles fixpackages mini-manifest news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FETCHCOMMAND="/usr/bin/wget -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
FETCHCOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
FETCHCOMMAND_SFTP="bash -c "x=\${2#sftp://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec sftp -P \${port} \"\${host}:/\${x#*/}\" \"\$1\"" sftp "${DISTDIR}/${FILE}" "${URI}""
FETCHCOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}""
GCC_SPECS=""
GDK_USE_XFT="1"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx"
GSETTINGS_BACKEND="gconf"
GUILE_LOAD_PATH="/usr/share/guile/1.8"
HISTCONTROL="ignorespace"
HOME="/root"
ICEAUTHORITY="/tmp/ICEauthority"
ICEXAUTHORITY="/tmp/ICEXauthority"
INFOPATH="/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.20.1/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.5/info"
INPUT_DEVICES="evdev keyboard mouse"
INSTALL_MASK="INSTALL.gz"
JAVAC="/etc/java-config-2/current-system-vm/bin/javac"
JAVACC_HOME="/usr/share/javacc/"
JAVA_HOME="/etc/java-config-2/current-system-vm"
JDK_HOME="/etc/java-config-2/current-system-vm"
KERNEL="linux"
LADSPA_PATH="/usr/lib64/ladspa"
LANG="en_US.UTF-8"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text"
LC_COLLATE="POSIX"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed"
LDFLAGS_x86="-m elf_i386"
LESS="-R -M --shift 5"
LESSOPEN="|lesspipe.sh %s"
LIBDIR_amd64="lib64"
LIBDIR_amd64_fbsd="lib64"
LIBDIR_ppc="lib32"
LIBDIR_ppc64="lib64"
LIBDIR_sparc32="lib32"
LIBDIR_sparc64="lib64"
LIBDIR_x86="lib32"
LIBDIR_x86_fbsd="lib32"
LINGUAS="de en"
LOGNAME="root"
LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:"
MAKEOPTS=" -j1 --quiet "
MANPATH="/etc/java-config-2/current-system-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.20.1/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.5/man:/etc/java-config/system-vm/man/"
MC_SID="8162"
MC_TMPDIR="/tmp/.private/root/mc-root"
MULTILIB_ABIS="amd64 x86"
MULTILIB_STRICT_DENY="64-bit.*shared object"
MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib"
MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)"
NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml"
NOCOLOR="true"
OLDPWD="/etc/ASIC/a"
OPENGL_PROFILE="nvidia"
PAGER="/usr/bin/less"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.4.5:/usr/lib64/subversion/bin"
PHP_TARGETS="php5-3"
PKGDIR="/var/cache/binpkgs"
PORTAGE_ARCHLIST="ppc sparc64-freebsd ppc-openbsd x86-openbsd ppc64 x86-winnt x86-fbsd ppc-aix alpha arm x86-freebsd s390 amd64 arm-linux x86-macos x64-openbsd ia64-hpux hppa x86-netbsd x86-cygwin amd64-linux ia64-linux x86 sparc-solaris x64-freebsd sparc64-solaris x86-linux x64-macos sparc m68k-mint ia64 mips ppc-macos x86-interix hppa-hpux amd64-fbsd x64-solaris mips-irix m68k sh x86-solaris sparc-fbsd"
PORTAGE_BINHOST_CHUNKSIZE="3000"
PORTAGE_BIN_PATH="/usr/lib64/portage/bin"
PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png"
PORTAGE_CONFIGROOT="/"
PORTAGE_DEBUG="0"
PORTAGE_DEPCACHEDIR="/var/cache/edb/dep"
PORTAGE_ELOG_CLASSES="warn error info log qa"
PORTAGE_ELOG_MAILFROM="portage@localhost"
PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}"
PORTAGE_ELOG_MAILURI="root"
PORTAGE_ELOG_SYSTEM="echo:info,warn,error save:log,warn,error,info,qa"
PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5"
PORTAGE_FETCH_RESUME_MIN_SIZE="350K"
PORTAGE_GID="250"
PORTAGE_INST_GID="0"
PORTAGE_INST_UID="0"
PORTAGE_NICENESS="16"
PORTAGE_PYM_PATH="/usr/lib64/portage/pym"
PORTAGE_SANDBOX_COMPAT_LEVEL="22"
PORTAGE_TMPDIR="/var/shmtmp"
PORTAGE_VERBOSE="1"
PORTAGE_WORKDIR_MODE="0700"
PORTDIR="/portable/VarPortageFuntoo"
PORTDIR_OVERLAY="/var/lib/layman/openoffice-geki"
PORT_LOGDIR="/var/log/portage"
PRELINK_PATH_MASK="/usr/lib64/libfreebl3.so:/usr/lib64/libnssdbm3.so:/usr/lib64/libsoftokn3.so"
PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND"
PWD="/etc/ASIC/b"
PYTHONDONTWRITEBYTECODE="1"
RESUMECOMMAND="/usr/bin/wget -c -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
RESUMECOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
RESUMECOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}""
ROOT="/"
ROOTPATH="/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.4.5:/usr/lib64/subversion/bin"
RPMDIR="/usr/portage/rpm"
RUBY_TARGETS="ruby18"
SANE_CONFIG_DIR="/etc/sane.d"
SHELL="/bin/bash"
SHLVL="2"
STAGE1_USE="multilib nptl nptlonly unicode"
SYMLINK_LIB="yes"
SYNC="git://github.com/funtoo/portage-mini-2010"
SYNC_USER="root"
TERM="xterm"
TMP="/tmp/.private/root"
TMPDIR="/tmp/.private/root"
USB_DEVFS_PATH="/dev/bus/usb"
USE="X a52 aac accessibility acl acpi addressbook alac alsa amd64 amr apm archive bash-completion berkdb bs2b bzip2 cairo calendar caps cdda cddb cdr cli clucene consolekit cracklib crypt cups curl cxx dbus device-mapper dga dirac disk-partition djvu dri dts dvd dvdr dvdread embedded emboss enca encode esd exceptions exif expoblending extras faac fam fat ffmpeg fftw firefox flac fluidsynth fortran gdbm gdu gif glade glibc-omitfp glitz gmp gnutls gphoto2 gpm gs gsf gsm gstreamer gtk hdri iconv id3tag idn imagemagick imlib inotify jbig joystick jpeg jpeg2k kate kde kde4 lame lapack laptop libass libcaca libnotify libtiger libv4l libv4l2 live loop-aes lua lzma lzo mac mad matroska mikmod mjpeg mktemp mmx mng modules mp3 mp4 mpeg mpeg4 mplayer mtp mudflap multilib musicbrainz mysql natspec ncurses nepomuk nls nptl nptlonly nsplugin odbc ogg opengl openmp optimized-qmake oss pam pango pch pcre pdf perl phonon plasma png podcast policykit ppds pppd private-headers program_options python q32 qalculate qt3 qt3support qt4 quicktime qwt readline redeyes redland rss rtmp rtsp schroedinger sdl secure-delete session sift slang smp sndfile speex sql sqlite sse sse2 sse3 ssl ssse3 svg swig sysfs system-sqlite taglib tcpd theora thread threads tiff truetype twolame udev unicode usb userlocales v4l v4l2 vaapi vala vcd vdpau video virtuoso vorbis wavpack webkit windeco wma-fixed x264 xattr xine xml xmlpatterns xmp xorg xulrunner xv xvid xvideo xvmc youtube zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="canon samsung" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de en" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="vesa nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
USER="root"
USERLAND="GNU"
USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CAMERAS COLLECTD_PLUGINS CROSSCOMPILE_OPTS DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS GPSD_PROTOCOLS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS NETBEANS_MODULES NGINX_MODULES_HTTP NGINX_MODULES_MAIL PHP_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS SANE_BACKENDS USERLAND VIDEO_CARDS XFCE_PLUGINS XTABLES_ADDONS"
USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND"
USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d"
VBOX_APP_HOME="/usr/lib64/virtualbox"
VIDEO_CARDS="vesa nvidia"
XAUTHORITY="/tmp/Xauthority"
XDG_CONFIG_DIRS="/etc/xdg"
XDG_DATA_DIRS="/usr/local/share:/usr/share"
XSESSION="openbox-kde"
XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
XZ_OPT="--memory=max"
_="/usr/bin/emerge"Last edited by ulenrich (2011-01-16 19:35:21)
Offline
This bug of an initial cloned portage tree
is not related to be /usr/portage a linked directory, it is
in: "pym/_emerge/actions.py"
after Line 1931:" if not os.path.exists(myportdir+"/.git"):"
Followed by a bit overcomplicated commands...
Offline
patch for initial emerge --sync
--- actions.orig.py 2011-01-17 16:35:34.000000000 +0100
+++ actions.py 2011-01-17 19:45:13.420000001 +0100
@@ -1957,7 +1957,7 @@
common_path = os.path.dirname(myportdir)
repo_dir = os.path.basename(myportdir)
- work_path = os.path.join(common_path, repo_dir + ".sync")
+ work_path = os.path.join(myportdir, ".initial_git_sync")
repo_path_tmp = os.path.join(work_path, repo_dir)
repo_path_fin = os.path.join(common_path, repo_dir)
@@ -1996,18 +1996,18 @@
print(">>> Starting initial git clone with "+syncuri+"...")
- if portage.process.spawn_bash("su - %s -s /bin/sh -c 'umask %s && cd %s && exec git clone %s %s && mv '" % (syncuser, syncumask, work_path, portage._shell_quote(syncuri), repo_dir)) != os.EX_OK:
+ if portage.process.spawn_bash("su - %s -s /bin/sh -c 'umask %s && cd %s && exec git clone %s %s '" % (syncuser, syncumask, work_path, portage._shell_quote(syncuri), repo_dir)) != os.EX_OK:
print("!!! git clone error; exiting.")
sys.exit(1)
# Our clone should now exist in the temporary location, now move it to the final location, as root:
- if portage.process.spawn_bash("mv %s %s" % (repo_path_tmp, repo_path_fin)) != os.EX_OK:
+ if portage.process.spawn_bash("cd %s && mv * .g* %s " % ( repo_path_tmp, repo_path_fin )) != os.EX_OK:
print("!!! Couldn't move %s into final location %s; exiting." % ( repo_path_tmp, repo_path_fin ))
sys.exit(1)
- # Clean up after ourselves:
- portage.process.spawn_bash("rm -f %s" % (repo_path_tmp))
+ if portage.process.spawn_bash("rmdir %s && rmdir %s" % ( repo_path_tmp, work_path )) != os.EX_OK:
+ print("! Couldn't rmdir %s ." % ( work_path ))
else:
if portage.process.spawn_bash("su - %s -s /bin/sh -c 'cd %s >/dev/null 2>&1'" % ( syncuser, myportdir )) != os.EX_OK:
print("!!! Portage tree at %s is not reachable by user %s; please adjust permissions to correct." % ( myportdir, syncuser ))Offline
Please paste your make.conf/defaults plus the full python output of "in "pym/_emerge/actions.py", as I need that full output for fixing the bug. Thanks.
Sorry, don't find make.conf/defaults (emerge --info output I had already posted above). And I don't know howto debug python. But I did make a patch in the meantime, see above . Hope it helps.
My patch works. And there was a useless "mv" without parameters in your code. So I wonder why it did a mv from
/usr/portage.sync/portage
to
/usr/portage/portage
in the first place without exciting the python script just before...
Last edited by ulenrich (2011-01-17 19:08:38)
Offline
Additional caution:
work_path above /usr/portage,
I mean as /usr/portage.sync
(as in my case)
might be a bad idea when having /usr/portage linked to another partition. Is mv capable then?
Last edited by ulenrich (2011-01-17 19:33:17)
Offline
Note, I have just committed a change in "parents" file parsing.
An initial ":" is now used to mean "relative to portage tree profiles directory", instead of "/" previously.
Absolute paths can now be included, such as "/var/lib/layman", to point to that actual directory.This should allow for an easier fix to the layman issue and an easy way to source external settings without using "source" in /etc/portage/make.defaults"
-Daniel
Is there any difference between
:default/linux/amd64/2008.0and
:/default/linux/amd64/2008.0? I honestly prefer the latter syntax as it's easier to read for me. YMMV as always, of course.
"Progress, far from consisting in change, depends on retentiveness. When change is absolute there remains no being to improve and no direction is set for possible improvement: and when experience is not retained, as among savages, infancy is perpetual. Those who cannot remember the past are condemned to repeat it." -- George Santayana, The Life of Reason (1905-1906)
Offline
Mantas, thanks for testing - I made the ":" change to allow for the fix but I will need to test and tweak some things to make it actually work. It does work for USE but it does not appear to work for PORTDIR_OVERLAY.
Yep I can confirm that the PORTDIR_OVERLAY isn't working with the new portage... also the source command is not working inside the /etc/portage/make.defaults ![]()
Can you let us know when it will be included? Thanks so far... ![]()
Offline
don't know if it is a bug, or if I should change my *.unmask, but before trying this new portage, emerge didn't complain.
* Running emerge --sync --- Invalid atom in /etc/portage/package.unmask: Slot deps are not allowed in EAPI 0: 'kde-base/kdeartwork-colorschemes:4.6'I trimmed following lines for each unmasked kde- :4.6 package
Mantas, this can probably be fixed by creating the file /etc/portage/eapi and putting a "3" in it.
Offline
I have just committed some significant changes to the funtoo-path branch. First, I have merged everything from the latest Portage, so EAPI 4 support is active. But major changes are below:
The file "/etc/portage/portdir" is used to define your root Portage directory, rather than PORTDIR in /etc/make.conf.
The file or directory "/etc/portage/overlays" is used to define overlays for Portage.
Type: cd /usr/lib/portage; git pull -- to update...
Just to be clear, adding "source" to /etc/make.conf or /etc/portage/make.defaults will never be supported, even though layman tells you to do this. A future version of layman can create a file called /etc/portage/overlays/layman containing the path to each overlay, one on each line. For now, if you do it manually, you can set up layman and your overlays will work. Give it a try.
This also speeds up Portage initialization a tiny bit.
And of course, please report your experiences here.
-Daniel
Offline
This git version works fine with overlays. here are my results:
/etc/portage/parent
:default/linux/amd64/2008.0/etc/portage/portdir
/usr/portage/etc/portage/overlays
/var/lib/layman/oss-overlay
/var/lib/layman/lcd-filteringemerge --info (partial)
Portage funtoo_p2.2.2 (unavailable gcc-4.4.5, glibc-2.11.2-r2, 2.6.37-gentoo x86_64)
=================================================================
System uname: Linux-2.6.37-gentoo-x86_64-Intel-R-_Core-TM-2_Quad_CPU_@_2.40GHz-with-gentoo-2.1.8
Portage Tree: /usr/portage
Portage HEAD: d2418f1200f549ea7fe3d9b6252fce521e6efbeb /usr/portage/.git/refs/heads/funtoo.org
app-shells/bash: 4.1_p9-r1
dev-lang/python: 2.6.6-r1
sys-apps/baselayout: 2.1.8-r2
sys-apps/openrc: 0.7.0
sys-apps/sandbox: 2.3-r1
sys-devel/autoconf: 2.68
sys-devel/automake: 1.11.1
sys-devel/binutils: 2.20.1
sys-devel/gcc: 4.4.5
sys-devel/gcc-config: 1.4.1
sys-devel/libtool: 2.4-r1
sys-devel/make: 3.81-r2
virtual/os-headers: 2.6.32 (sys-kernel/linux-headers)
Repositories: gentoo oss-overlay lcd-filteringNow let's see if overlays works,
oleg # emerge -av oss-devel
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] media-sound/oss-devel-9999 0 kB [1]
Total: 1 package (1 reinstall), Size of downloads: 0 kB
Portage tree and overlays:
[0] /usr/portage
[1] /var/lib/layman/oss-overlay
Would you like to merge these packages? [Yes/No]anf from another overlay:
oleg # emerge -av cairo
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] x11-libs/cairo-1.10.0-r3 USE="X lcdfilter opengl svg (-aqua) -cleartype -debug -directfb -doc (-drm) (-gallium) (-openvg) -qt4 -static-libs -xcb" 0 kB [1]
Total: 1 package (1 reinstall), Size of downloads: 0 kB
Portage tree and overlays:
[0] /usr/portage
[1] /var/lib/layman/lcd-filtering
Would you like to merge these packages? [Yes/No]Everything fine. Problems are:
instead of unavailable, I'm expecting /default/linux/amd64/2008.0 profile in emerge --info output.
Eix doesn't understand new overlay structure:
# eix-update
Reading Portage settings ..
Building database (/var/cache/eix) ..
[0] "gentoo" /usr/portage/ (cache: metadata-flat)
Reading category 154|154 (100%) Finished
[1] "oss-overlay" /var/lib/layman/oss-overlay (cache: parse|ebuild*#metadata-flat#assign)
Reading category 35|154 ( 22%): dev-libs ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 35|154 ( 22%): dev-libs ..
Could not properly execute /var/lib/layman/oss-overlay/dev-libs/libmowgli/libmowgli-9999.ebuild
Reading category 84|154 ( 54%): media-plugins ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 84|154 ( 54%): media-plugins ..
Could not properly execute /var/lib/layman/oss-overlay/media-plugins/audacious-plugins/audacious-plugins-9999.ebuild
Reading category 84|154 ( 54%): media-plugins ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 84|154 ( 54%): media-plugins ..
Could not properly execute /var/lib/layman/oss-overlay/media-plugins/gst-plugins-oss4/gst-plugins-oss4-0.10.18.ebuild
Reading category 86|154 ( 55%): media-sound ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 86|154 ( 55%): media-sound ..
Could not properly execute /var/lib/layman/oss-overlay/media-sound/audacious/audacious-9999.ebuild
Reading category 86|154 ( 55%): media-sound ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 86|154 ( 55%): media-sound ..
Could not properly execute /var/lib/layman/oss-overlay/media-sound/oss/oss-4.1.1052-r1.ebuild
Reading category 124|154 ( 80%): sys-apps ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 124|154 ( 80%): sys-apps ..
Could not properly execute /var/lib/layman/oss-overlay/sys-apps/superiotool/superiotool-9999.ebuild
Reading category 138|154 ( 89%): www-apps ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 138|154 ( 89%): www-apps ..
Could not properly execute /var/lib/layman/oss-overlay/www-apps/cgit/cgit-0.8.2.1.ebuild
Reading category 138|154 ( 89%): www-apps ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 138|154 ( 89%): www-apps ..
Could not properly execute /var/lib/layman/oss-overlay/www-apps/cgit-devel/cgit-devel-9999.ebuild
Reading category 154|154 (100%) Finished
[2] "lcd-filtering" /var/lib/layman/lcd-filtering (cache: parse|ebuild*#metadata-flat#assign)
Reading category 83|154 ( 53%): media-libs ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 83|154 ( 53%): media-libs ..
Could not properly execute /var/lib/layman/lcd-filtering/media-libs/fontconfig/fontconfig-2.8.0.ebuild
Reading category 146|154 ( 94%): x11-libs ..
Could not start /usr/lib64/portage/bin/ebuild.sh
Reading category 146|154 ( 94%): x11-libs ..
Could not properly execute /var/lib/layman/lcd-filtering/x11-libs/libXft/libXft-2.1.14.ebuild
Reading category 154|154 (100%) Finished
Applying masks ..
Calculating hash tables ..
Writing database file /var/cache/eix ..
Database contains 14347 packages in 154 categories.
Regards, Oleg.
Last edited by angry_vincent (2011-01-29 10:05:37)
Offline
I have just committed some significant changes to the funtoo-path branch. First, I have merged everything from the latest Portage
Thanks a lot.
Give it a try.
Will do that tomorrow.
I probably just missed information about it, but: can /etc/make.globals actually be remove now?
Offline
drobbins wrote:I have just committed some significant changes to the funtoo-path branch. First, I have merged everything from the latest Portage
Thanks a lot.
drobbins wrote:Give it a try.
Will do that tomorrow.
I probably just missed information about it, but: can /etc/make.globals actually be remove now?
Yes it can. It is just a symlink currently anyway.
-Daniel
Offline
Does it work only with portage-2.2.1.1, or can it be installed on top of 2.2.2?
Offline
Original message deleted because I did not read your announcement properly before testing. ![]()
Read it now and can report that it actually works. ![]()
One remark though: /etc/portage/portdir should not be required. In it's absence /usr/portage should just be used as default. (I failed to create that file and that is why things did not work for me initially. The error messages I got were not helpful, they actually lead me to believe that something in the parent file parsing had changed.)
Last edited by tarsius (2011-01-30 15:43:28)
Offline