Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] gnome (printer) installation: "epatch not found"
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
Wuodan
n00b
n00b


Joined: 21 May 2012
Posts: 23

PostPosted: Mon May 21, 2012 12:14 pm    Post subject: [SOLVED] gnome (printer) installation: "epatch not foun Reply with quote

First post, please be patient ;-)

Short version:
I have "epatch not found" during gnome installation and was able to fix it with local ebuilds of app-admin/system-config-printer-gnome and app-admin/system-config-printer-common.
Fix was to add "eutils" to the list of includes (inherit ...) ... don't ask me much about it, google told me.

My question is: Is this a bug?
- gnome is common, I seem to be the only one with the problem, I'm new to gentoo
- the problem occurs in all versions of the 2 packages and the fix is simple ....
- the other laptop installed gnome without the problem

Long version:

gnome depends on
app-admin/system-config-printer-gnome
which depends on
app-admin/system-config-printer-common.

Installation of system-config-printer-gnome fails with "Detected file collision".
A closer look at the output shows error messages from "system-config-printer-common: "epatch: command not found".

Google tells me:
a) I'm the only one with the problem ;-)
b) "epatch not found" is related to missing include of "eutils" in the ebuild.

The same problem occurs with all other versions of the 2 packages.

Ok, my first ebuild ...
(Rant: omg ... sorry, the docs suck on this imho ... where does it mention what files you need and that "ebuild manifest/clean" are important?)
Managed to make a local ebuild for each of the 2 packages, with " eutils" added to the .ebuild file, where it says "inherit":
- system-config-printer-gnome-1.3.9-r1.ebuild
- system-config-printer-common-1.3.9-r1.ebuild

My local portage stuff is in /usr/local/portage/ and my new packages are named "1.3.9-r2", everything works fine, I can finally install and run gnome, hurray!

So what's the problem, I can reproduce it by uninstalling with:
"emerge -av --depclean gnome system-config-printer-gnome system-config-printer-common"
masking my local config-printer-gnome and re-emerging gnome ... voilà, the problem is back.


Last edited by Wuodan on Tue May 22, 2012 10:52 am; edited 1 time in total
Back to top
View user's profile Send private message
Wuodan
n00b
n00b


Joined: 21 May 2012
Posts: 23

PostPosted: Mon May 21, 2012 12:21 pm    Post subject: Reply with quote

partial output of emerge gnome, the printer-common part:
Quote:


>>> Emerging (1 of 3) app-admin/system-config-printer-common-1.3.9-r1
* system-config-printer-1.3.9.tar.xz RMD160 SHA1 SHA256 size ;-) ... [ ok ]
>>> Unpacking source...
>>> Unpacking system-config-printer-1.3.9.tar.xz to /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work
>>> Source unpacked in /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work
>>> Preparing source in /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9 ...
/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/temp/environment: line 3946: epatch: command not found
* Running eautoreconf in '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9' ...
* Running aclocal ... [ ok ]
* Running autoconf ... [ ok ]
* Running automake --add-missing --copy ... [ ok ]
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9 ...
* econf: updating system-config-printer-1.3.9/config.sub with /usr/share/gnuconfig/config.sub
* econf: updating system-config-printer-1.3.9/config.guess with /usr/share/gnuconfig/config.guess
./configure --prefix=/usr --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-nls --with-udev-rules
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether NLS is requested... no
checking for style of include used by make... GNU
checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether i686-pc-linux-gnu-gcc accepts -g... yes
checking for i686-pc-linux-gnu-gcc option to accept ISO C89... none needed
checking dependency style of i686-pc-linux-gnu-gcc... gcc3
checking for intltool-update... /usr/bin/intltool-update
checking for intltool-merge... /usr/bin/intltool-merge
checking for intltool-extract... /usr/bin/intltool-extract
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/gmsgfmt
checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... 5.12.4
checking for XML::Parser... ok
checking for msgfmt... (cached) /usr/bin/msgfmt
checking for gmsgfmt... (cached) /usr/bin/gmsgfmt
checking for xgettext... (cached) /usr/bin/xgettext
checking for msgmerge... (cached) /usr/bin/msgmerge
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/i686-pc-linux-gnu/bin/ld
checking if the linker (/usr/i686-pc-linux-gnu/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking how to run the C preprocessor... i686-pc-linux-gnu-gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking whether to use NLS... no
checking for python... /usr/bin/python
checking for python version... 2.7
checking for python platform... linux2
checking for python script directory... ${prefix}/lib/python2.7/site-packages
checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages
checking for i686-pc-linux-gnu-pkg-config... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GLIB... yes
checking for libudev... yes
checking for libusb... yes
checking whether i686-pc-linux-gnu-gcc and cc understand -c and -o together... yes
checking for i686-pc-linux-gnu-pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating po/Makefile.in
config.status: creating system-config-printer
config.status: creating system-config-printer-applet
config.status: creating dbus/scp-dbus-service
config.status: executing depfiles commands
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing po/stamp-it commands
>>> Source configured.
>>> Compiling source in /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9 ...
make -j4
Making all in po
make[1]: Entering directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9/po'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9/po'
make[1]: Entering directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9'
xmlto man -o man man/system-config-printer.xml
xmlto man -o man man/system-config-printer.xml
LC_ALL=C /usr/bin/intltool-merge -d -u -c ./po/.intltool-merge-cache ./po system-config-printer.desktop.in system-config-printer.desktop
LC_ALL=C /usr/bin/intltool-merge -d -u -c ./po/.intltool-merge-cache ./po print-applet.desktop.in print-applet.desktop
Generating and caching the translation database
Merging translations into system-config-printer.desktop.
sed \
-e "s|\@prefix\@|/usr|" \
-e "s|\@datadir\@|/usr/share|" \
-e "s|\@localedir\@|/usr/share/locale|" \
-e "s|\@VERSION\@|1.3.9|" \
-e "s|\@PACKAGE\@|system-config-printer|" \
config.py.in > config.py
Found cached translation database
if [ "." != "." ]; then \
cp ./setup.py .; \
/bin/mkdir -p cupshelpers; \
for file in cupshelpers/__init__.py cupshelpers/cupshelpers.py cupshelpers/installdriver.py cupshelpers/ppds.py cupshelpers/openprinting.py cupshelpers/xmldriverprefs.py; do \
cp ./$file $file; \
done; \
fi
Merging translations into print-applet.desktop.
/bin/mkdir -p cupshelpers
sed \
-e "s|\@prefix\@|/usr|" \
-e "s|\@sysconfdir\@|/etc|" \
cupshelpers/config.py.in > cupshelpers/config.py
touch .stamp-distutils-in-builddir
i686-pc-linux-gnu-gcc -DPACKAGE_NAME=\"system-config-printer\" -DPACKAGE_TARNAME=\"system-config-printer\" -DPACKAGE_VERSION=\"1.3.9\" -DPACKAGE_STRING=\"system-config-printer\ 1.3.9\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"system-config-printer\" -DVERSION=\"1.3.9\" -I. -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -g -O2 -Wall -MT udev/udev_udev_configure_printer-udev-configure-printer.o -MD -MP -MF udev/.deps/udev_udev_configure_printer-udev-configure-printer.Tpo -c -o udev/udev_udev_configure_printer-udev-configure-printer.o `test -f 'udev/udev-configure-printer.c' || echo './'`udev/udev-configure-printer.c
/usr/bin/python setup.py build
running build
running build_py
creating build
creating build/lib
creating build/lib/cupshelpers
copying cupshelpers/__init__.py -> build/lib/cupshelpers
copying cupshelpers/openprinting.py -> build/lib/cupshelpers
copying cupshelpers/installdriver.py -> build/lib/cupshelpers
copying cupshelpers/ppds.py -> build/lib/cupshelpers
copying cupshelpers/config.py -> build/lib/cupshelpers
copying cupshelpers/cupshelpers.py -> build/lib/cupshelpers
copying cupshelpers/xmldriverprefs.py -> build/lib/cupshelpers
warning: build_py: byte-compiling is disabled, skipping.

udev/udev-configure-printer.c: In function 'device_id_from_devpath':
udev/udev-configure-printer.c:606:4: warning: format '%04zX' expects type 'size_t', but argument 3 has type 'long unsigned int'
udev/udev-configure-printer.c:606:4: warning: format '%04zX' expects type 'size_t', but argument 4 has type 'long unsigned int'
Warn: AUTHOR sect.: no personblurb|contrib for Tim Waugh
Note: AUTHOR sect.: see see http://docbook.sf.net/el/contrib
Note: AUTHOR sect.: see see http://docbook.sf.net/el/personblurb
Warn: AUTHOR sect.: no personblurb|contrib for Tim Waugh
Note: AUTHOR sect.: see see http://docbook.sf.net/el/contrib
Note: AUTHOR sect.: see see http://docbook.sf.net/el/personblurb
mv -f udev/.deps/udev_udev_configure_printer-udev-configure-printer.Tpo udev/.deps/udev_udev_configure_printer-udev-configure-printer.Po
i686-pc-linux-gnu-gcc -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -g -O2 -Wall -Wl,-O1 -Wl,--as-needed -o udev/udev-configure-printer udev/udev_udev_configure_printer-udev-configure-printer.o -lcups -ludev -lusb -lglib-2.0
Note: Writing system-config-printer.1
Warn: AUTHOR sect.: no personblurb|contrib for Tim Waugh
Note: AUTHOR sect.: see see http://docbook.sf.net/el/contrib
Note: AUTHOR sect.: see see http://docbook.sf.net/el/personblurb
Note: Writing system-config-printer.1
Warn: AUTHOR sect.: no personblurb|contrib for Tim Waugh
Note: AUTHOR sect.: see see http://docbook.sf.net/el/contrib
Note: AUTHOR sect.: see see http://docbook.sf.net/el/personblurb
Note: Writing system-config-printer-applet.1
Note: Writing system-config-printer-applet.1
make[1]: Leaving directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9'
>>> Source compiled.
>>> Test phase [not enabled]: app-admin/system-config-printer-common-1.3.9-r1

>>> Install system-config-printer-common-1.3.9-r1 into /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image/ category app-admin
make -j4 DESTDIR=/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image/ install udevrulesdir=/lib/udev/rules.d udevhelperdir=/lib/udev
Making install in po
make[1]: Entering directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9/po'
make[1]: Nothing to be done for `install'.
make[1]: Leaving directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9/po'
make[1]: Entering directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9'
/usr/bin/python setup.py build
running build
running build_py
warning: build_py: byte-compiling is disabled, skipping.

make[2]: Entering directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9'
test -z "/usr/bin" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/bin"
/usr/bin/python setup.py install --prefix=/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr
test -z "/etc/cupshelpers" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//etc/cupshelpers"
test -z "/etc/dbus-1/system.d/" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//etc/dbus-1/system.d/"
/usr/bin/install -c system-config-printer system-config-printer-applet dbus/scp-dbus-service '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/bin'
/usr/bin/install -c -m 644 xml/preferreddrivers.xml '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//etc/cupshelpers'
test -z "/usr/share/dbus-1/interfaces/" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/dbus-1/interfaces/"
/usr/bin/install -c -m 644 dbus/com.redhat.NewPrinterNotification.conf dbus/com.redhat.PrinterDriversInstaller.conf '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//etc/dbus-1/system.d/'
test -z "/usr/share/dbus-1/services/" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/dbus-1/services/"
mkdir -p /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/applications/
mkdir -p /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/applications/
desktop-file-install \
--dir /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/applications/ \
--add-category System \
--add-category Settings \
--add-category HardwareSettings \
--add-category Printing \
--add-category GTK \
system-config-printer.desktop
/usr/bin/install -c -m 644 dbus/org.fedoraproject.Config.Printing.xml '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/dbus-1/interfaces/'
test -z "/usr/share/man/man1" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/man/man1"
desktop-file-install \
--dir /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//etc/xdg/autostart/ \
--add-category System \
--add-category Monitor \
--add-category GTK \
print-applet.desktop
/usr/bin/install -c -m 644 dbus/org.fedoraproject.Config.Printing.service '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/dbus-1/services/'
running install
test -z "/usr/share/system-config-printer" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer"
test -z "/usr/share/system-config-printer" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer"
/usr/bin/install -c -m 644 man/system-config-printer.1 man/system-config-printer-applet.1 '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/man/man1'
test -z "" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image/"
running build
/bin/mkdir -p '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/troubleshoot'
running build_py
warning: build_py: byte-compiling is disabled, skipping.

running install_lib
creating /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image/usr/lib
creating /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image/usr/lib/python2.7
creating /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image/usr/lib/python2.7/site-packages
creating /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image/usr/lib/python2.7/site-packages/cupshelpers
copying build/lib/cupshelpers/__init__.py -> /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/lib/python2.7/site-packages/cupshelpers
copying build/lib/cupshelpers/openprinting.py -> /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/lib/python2.7/site-packages/cupshelpers
copying build/lib/cupshelpers/installdriver.py -> /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/lib/python2.7/site-packages/cupshelpers
/usr/bin/install -c -m 644 troubleshoot/base.py troubleshoot/CheckLocalServerPublishing.py troubleshoot/CheckNetworkServerSanity.py troubleshoot/CheckPPDSanity.py troubleshoot/CheckPrinterSanity.py troubleshoot/CheckSELinux.py troubleshoot/CheckUSBPermissions.py troubleshoot/ChooseNetworkPrinter.py troubleshoot/ChoosePrinter.py troubleshoot/DeviceListed.py troubleshoot/ErrorLogCheckpoint.py troubleshoot/ErrorLogFetch.py troubleshoot/ErrorLogParse.py troubleshoot/Locale.py troubleshoot/LocalOrRemote.py troubleshoot/NetworkCUPSPrinterShared.py troubleshoot/PrinterStateReasons.py troubleshoot/PrintTestPage.py troubleshoot/QueueNotEnabled.py troubleshoot/QueueRejectingJobs.py troubleshoot/RemoteAddress.py troubleshoot/SchedulerNotRunning.py troubleshoot/ServerFirewalled.py troubleshoot/Shrug.py troubleshoot/VerifyPackages.py troubleshoot/Welcome.py '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/troubleshoot'
copying build/lib/cupshelpers/ppds.py -> /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/lib/python2.7/site-packages/cupshelpers
/bin/mkdir -p '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/troubleshoot/'
copying build/lib/cupshelpers/config.py -> /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/lib/python2.7/site-packages/cupshelpers
copying build/lib/cupshelpers/cupshelpers.py -> /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/lib/python2.7/site-packages/cupshelpers
copying build/lib/cupshelpers/xmldriverprefs.py -> /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/lib/python2.7/site-packages/cupshelpers
warning: install_lib: byte-compiling is disabled, skipping.

/usr/bin/install -c troubleshoot/__init__.py '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/troubleshoot/'
running install_egg_info
Writing /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/lib/python2.7/site-packages/cupshelpers-1.0-py2.7.egg-info
test -z "/lib/udev" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//lib/udev"
/usr/bin/install -c check-device-ids.py pysmb.py scp-dbus-service.py system-config-printer.py applet.py '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer'
test -z "/lib/udev" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//lib/udev"
/bin/mkdir -p '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/ui'
test -z "/lib/udev/rules.d" || /bin/mkdir -p "/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//lib/udev/rules.d"
/usr/bin/install -c -m 644 ui/AboutDialog.ui ui/ConnectDialog.ui ui/ConnectingDialog.ui ui/InstallDialog.ui ui/JobsWindow.ui ui/NewPrinterName.ui ui/NewPrinterWindow.ui ui/PrinterPropertiesDialog.ui ui/PrintersWindow.ui ui/ServerSettingsDialog.ui ui/SMBBrowseDialog.ui ui/statusicon_popupmenu.ui ui/WaitWindow.ui '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/ui'
/usr/bin/install -c -m 644 asyncconn.py asyncipp.py asyncpk1.py authconn.py config.py cupspk.py debug.py dnssdresolve.py errordialogs.py HIG.py firewall.py gui.py gtkinklevel.py gtkspinner.py installpackage.py jobviewer.py monitor.py newprinter.py options.py optionwidgets.py PhysicalDevice.py ppdcache.py ppdippstr.py ppdsloader.py printerproperties.py probe_printer.py gtk_label_autowrap.py SearchCriterion.py serversettings.py smburi.py statereason.py timedops.py ToolbarSearchEntry.py userdefault.py '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/.'
/usr/bin/install -c udev/udev-configure-printer '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//lib/udev'
/usr/bin/install -c -m 644 udev/70-printers.rules '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//lib/udev/rules.d'
/usr/bin/install -c udev/udev-add-printer '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//lib/udev'
/bin/mkdir -p '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/xml'
/usr/bin/install -c -m 644 xml/preferreddrivers.rng xml/validate.py '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/xml'
/bin/mkdir -p '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/icons'
/usr/bin/install -c -m 644 icons/i-network-printer.png '/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image//usr/share/system-config-printer/icons'
make[2]: Leaving directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9'
make[1]: Leaving directory `/var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/work/system-config-printer-1.3.9'
>>> Completed installing system-config-printer-common-1.3.9-r1 into /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/image/

* QA Notice: command not found:
*
* /var/tmp/portage/app-admin/system-config-printer-common-1.3.9-r1/temp/environment: line 3946: epatch: command not found
strip: i686-pc-linux-gnu-strip --strip-unneeded -R .comment -R .GCC.command.line
lib/udev/udev-configure-printer
ecompressdir: bzip2 -9 /usr/share/man

>>> Installing (1 of 3) app-admin/system-config-printer-common-1.3.9-r1
Back to top
View user's profile Send private message
i92guboj
Bodhisattva
Bodhisattva


Joined: 30 Nov 2004
Posts: 10315
Location: Córdoba (Spain)

PostPosted: Mon May 21, 2012 12:32 pm    Post subject: Reply with quote

The bug is evident. Probably some last-minute confusion from whomever submitted the ebuild to portage. It's been reported already to bugs.gentoo.org:

https://bugs.gentoo.org/show_bug.cgi?id=416847

So, it should be fixed shortly.

Nonetheless, you did an amazingly good job tracking it by yourself.

The problem is that the "epatch" function can't be found because the relevant eclass is not inherited in the ebuild, as it should, and as you found for yourself. eclasses are nothing but shell script libraries, you can take a look at them at $PORTDIR/eclass/ (usually /usr/portage/eclass/).
Back to top
View user's profile Send private message
Wuodan
n00b
n00b


Joined: 21 May 2012
Posts: 23

PostPosted: Mon May 21, 2012 1:05 pm    Post subject: Reply with quote

Will adding "include eutils" to the printer-common also fix the error in printer-gnome? I doubt it ...
The bug mentions only printer-common ...

What is weird:
The include is missing in all versions of the 2 packages: 1.3.6, 1.3.7 and 1.3.9-r1
They have been around for a while and no one else had the problem ...including my other laptop.

p.s.
Thank you for the compliment, I'm proud of my first bug 8)
Back to top
View user's profile Send private message
Wuodan
n00b
n00b


Joined: 21 May 2012
Posts: 23

PostPosted: Mon May 21, 2012 1:08 pm    Post subject: Reply with quote

And wouldn't it be possible to detect such missing includes when parsing the ebuild?
Back to top
View user's profile Send private message
i92guboj
Bodhisattva
Bodhisattva


Joined: 30 Nov 2004
Posts: 10315
Location: Córdoba (Spain)

PostPosted: Mon May 21, 2012 9:45 pm    Post subject: Reply with quote

Wuodan wrote:
Will adding "include eutils" to the printer-common also fix the error in printer-gnome? I doubt it ...
The bug mentions only printer-common ...


The error you posted is in app-admin/system-config-printer-common. I know you said above that you get a file collision in the other package, but that's a different issue. If it continues to fail you should open a new thread, or look in bugzilla and see if you can find something about it. In any case it's a separate issue.

[quote]What is weird:
The include is missing in all versions of the 2 packages: 1.3.6, 1.3.7 and 1.3.9-r1
They have been around for a while and no one else had the problem ...including my other laptop.[/code]

I have no idea what changed, maybe the ebuilds used to inherit some other eclass that in turn inherited the offending one. Maybe the developer mass-processed them, that's an usual procedure when you are the maintained for an ebuild and have to modify 40 ebuilds to do basically the same repetitive thing in all of them. Maybe it was something else. A lot of ebuilds are being changed lately because of the introduction of the pkgconfig virtual, so that might have something to do with it. I lack the interest to investigate it, but surely there's a reason ;)

About your last post, there's a tool called repoman which can check the ebuilds for some problems before they are submitted to the portage tree, I have no idea if checking for the script correctness at that level is between its capabilities. I've used repoman in the past myself, but that was long ago, and I used it occasionally, so I don't know. In any case, ebuilds are nothing but shell scripts, and so are eclasses as well ;)
Back to top
View user's profile Send private message
Wuodan
n00b
n00b


Joined: 21 May 2012
Posts: 23

PostPosted: Mon May 21, 2012 11:11 pm    Post subject: Reply with quote

What I ment is that the "epatch not found" is in both packages, no matter about the file collision (that was a result of it).
The developer fixed both packages, so he got me right
(http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-admin/system-config-printer-gnome/system-config-printer-gnome-1.3.9-r1.ebuild?view=markup)


But that brings me to the question:
Is it absolutely necessary for ebuild files to include eutils if they use epatch?

If so, I can find many ebuilds containing "epatch" but not "eutils" with:
Code:

find /usr/portage/ -name \*.ebuild -print0 \
| xargs -0 grep -Zli 'epatch' \
| xargs -0 grep -Li 'eutils'

And they all have a potential problem ...
Back to top
View user's profile Send private message
i92guboj
Bodhisattva
Bodhisattva


Joined: 30 Nov 2004
Posts: 10315
Location: Córdoba (Spain)

PostPosted: Tue May 22, 2012 8:27 am    Post subject: Reply with quote

The short answer is: yes.

The long answer is: this inheritance doesn't need to be direct. If you navigate to $PORTDIR/eclasses/, and try this:

Code:
$ grep "inherit.*eutils" *.eclass


You'll get a picture of what I am trying to tell you.

If a given ebuild inherits one of these eclasses that -in turn- inherit eutils.eclass, then the ebuild is also inheriting eutils.eclass to all purposes.

The problem here comes if, for some reason, one of the directly inherited eclasses, for some reason, stops inheriting eutils.eclass at a given version (eclasses are changed from time to time to fix bugs, add functionalities, etc), and the ebuild relies on functionalities from eutils.eclass. Then it needs to be fixed to inherit it directly so it can continue to access these functions.

This is just the theory. I am not following the bugs and I don't know if this is what happened in this case.
Back to top
View user's profile Send private message
Wuodan
n00b
n00b


Joined: 21 May 2012
Posts: 23

PostPosted: Tue May 22, 2012 9:32 am    Post subject: Reply with quote

Ok, now I get it.
Think I should learn some C basics ...

Thank you for answering all my noob questions!
Back to top
View user's profile Send private message
i92guboj
Bodhisattva
Bodhisattva


Joined: 30 Nov 2004
Posts: 10315
Location: Córdoba (Spain)

PostPosted: Wed May 23, 2012 6:41 am    Post subject: Reply with quote

Wuodan wrote:
Ok, now I get it.
Think I should learn some C basics ...


This is not C. It's shell scripting. Ebuild and eclasses are just shell scripts.

Portage itself is built mostly in python.

So, that's what you should focus on if you plan to write ebuilds or hack into portage. Shell scripting is going to help you throughout all your linux experience anyway.

Quote:
Thank you for answering all my noob questions!


You are always welcome :D
Back to top
View user's profile Send private message
wsh
n00b
n00b


Joined: 11 Jan 2010
Posts: 19

PostPosted: Fri Jun 22, 2012 5:00 am    Post subject: Reply with quote

I sorry to reopen this topic, but i having the same problem.
My history may be different.
I emerged gnome-light today, it installed a Gnome 2 version, (i thought that Gnome 3 was already stable, but i havent used gentoo in a while, like a year or so).
So, i have my working desktop, no complains.
I tried to emerge gnome now, instead of gnome light, so i can get all the extra things that come with the full version of gnome.

And i get stuck at this:

emerge -vat gnome

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!

!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

gnome-base/gnome-menus:0

(gnome-base/gnome-menus-2.30.5::gentoo, ebuild scheduled for merge) pulled in by
>=gnome-base/gnome-menus-2.27.92:0[python] required by (x11-misc/alacarte-0.13.2::gentoo, ebuild scheduled for merge)

(gnome-base/gnome-menus-2.30.5::gentoo, installed) pulled in by
(no parents that aren't satisfied by other packages in this slot)


!!! Enabling --newuse and --update might solve this conflict.
!!! If not, it might help emerge to give a more specific suggestion.


emerge: there are no ebuilds to satisfy "=app-admin/system-config-printer-common-1.3.9-r1".
(dependency required by "app-admin/system-config-printer-gnome-1.3.9-r1" [ebuild])
(dependency required by "gnome-base/gnome-2.32.1-r2[cups]" [ebuild])
(dependency required by "gnome" [argument])


I saw that the op fixed a thing in the ebuild adding some code to it.
The version i have in my portage dir is the one that already has that fix. Just to be sure i downloaded that ebuild and tried with that one, no luck either.
So i dont know where to go.
I tried the newuse and update options, no luck.

If i try to install system*-gnome it downgrades the system*-common one to the 1.3.7 because it says

emerge: there are no ebuilds to satisfy "=app-admin/system-config-printer-common-1.3.9-r1".
(dependency required by "app-admin/system-config-printer-gnome-1.3.9-r1" [ebuild])

Thanks and i sorry to bother.
Back to top
View user's profile Send private message
poncho
Tux's lil' helper
Tux's lil' helper


Joined: 06 Mar 2011
Posts: 92

PostPosted: Fri Jun 22, 2012 10:43 am    Post subject: Reply with quote

It's a bug.

See: https://bugs.gentoo.org/show_bug.cgi?id=422955
Back to top
View user's profile Send private message
wsh
n00b
n00b


Joined: 11 Jan 2010
Posts: 19

PostPosted: Fri Jun 22, 2012 4:40 pm    Post subject: Reply with quote

I got it to work.
I unmerged the 1.3.9 version.
Then emerged the package again (but the 1.3.7) and it installed a few other packages that seemed to be dependencies.
After that i emerged gnome, and the new version of both packages (1.3.9) came with it with no problems.

So in resume.
I downgraded to 1.3.7, it installed other missing dependencies.
Emerged gnome after that, and it worked fine.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
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