pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/43859: Some permission problems with misc/calibre and print/podofo
>Number: 43859
>Category: pkg
>Synopsis: Some permission problems with misc/calibre and print/podofo
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Sep 09 20:00:01 +0000 2010
>Originator: Rhialto
>Release: NetBSD 5.0.1
>Organization:
>Environment:
System: NetBSD radl.falu.nl 5.0.1 NetBSD 5.0.1
(Radl-s_Pervasion_of_the_Incorrect_Chord) #0: Tue Aug 4 20:57:29 CEST 2009
root%radl.falu.nl@localhost:/usr/src/sys/arch/amd64/compile/RADL5.0.1 amd64
Architecture: x86_64
Machine: amd64
>Description:
I built misc/calibre inside a pkg_comp started with sudo, and found 3
problems; I could "fix" the first one. Then I found a workaround with
its own problems.
- misc/podofo depends "optionally" on lua, but apparently the configure
script detects it anyway, even if its buildlink3.mk is not included.
Then the build fails. So I added
.include "../../lang/lua/buildlink3.mk"
to pkgsrc/print/podofo/Makefile
- After that, misc/calibre proper started building, but when making the
package ("make package") it failed like this:
####### Building extension fontconfig #######
####### Building extension msdes #######
####### Building extension cPalmdoc #######
####### Building extension podofo #######
####### Building extension pictureflow #######
*
* Running gui
*
Compiling form
/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/src/calibre/gui2/main.ui
Traceback (most recent call last):
File "setup.py", line 99, in <module>
sys.exit(main())
File "setup.py", line 85, in main
command.run_all(opts)
File "/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/setup/__init__.py",
line 158, in run_all
self.run_cmd(self, opts)
File "/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/setup/__init__.py",
line 151, in run_cmd
self.run_cmd(scmd, opts)
File "/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/setup/__init__.py",
line 154, in run_cmd
cmd.run(opts)
File "/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/setup/gui.py", line
36, in run
self.build_forms()
File "/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/setup/gui.py", line
60, in build_forms
build_forms(self.SRC, info=self.info)
File
"/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/src/calibre/gui2/__init__.py",
line 597, in build_forms
open(compiled_form, 'wb').write(dat)
IOError: [Errno 13] Permission denied:
'/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/src/calibre/gui2/main_ui.py'
*** Error code 1
Stop.
make: stopped in /usr/pkgsrc/misc/calibre
*** Error code 1
Stop.
make: stopped in /usr/pkgsrc/misc/calibre
*** Error code 1
Stop.
make: stopped in /usr/pkgsrc/misc/calibre
isc/calibre/default/calibre/src/calibre/gui2/main_ui.py <
-rw-r--r-- 1 root wheel 21246 Oct 11 2009
/pkg_comp/obj/pkgsrc/misc/calibre/default/calibre/src/calibre/gui2/main_ui.py
pkg_comp:default.conf#
Running a GUI while making a package? Whoever thought of that? Anyway, I
don't immediately see how/if that is the actual failure. The traceback
seems to suggest writing to some file which fails, but it the build runs
as root inside the chroot so that doesn't make immediate sense either.
Later...:
Another problem with calibre. I am now trying outside pkg_comp, but the
work directory ends up on NFS in my case. Maybe that causes this error:
c++
/mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre/work/calibre/build/pyqt/pictureflow/qt/pictureflow.o
/mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre/work/calibre/build/pyqt/pictureflow/qt/moc_pictureflow.o
-L/usr/pkg/lib -L/usr/lib -Wl,-R/usr/lib -L/usr/pkg/lib/python2.6/config
-Wl,-R/usr/pkg/lib/python2.6/config -Wl,-R/usr/pkg/lib -L/usr/X11R7/lib
-Wl,-R/usr/X11R7/lib -L/usr/pkg/qt4/lib -Wl,-R/usr/pkg/qt4/lib
-L/usr/pkg/qt4/lib -shared -Wl,-R/usr/pkg/qt4/lib -o pictureflow.so
sippictureflowcmodule.o sippictureflowPictureFlow.o sippictureflowFlowImages.o
-L/usr/pkg/lib -L/usr/pkg/qt4/lib -L/usr/X11R7/lib -lQtCore -lQtGui -lXext
-lX11 -lm -pthread
Traceback (most recent call last):
File "setup.py", line 99, in <module>
sys.exit(main())
File "setup.py", line 85, in main
command.run_all(opts)
File
"/mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre/work/calibre/setup/__init__.py",
line 158, in run_all
self.run_cmd(self, opts)
File
"/mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre/work/calibre/setup/__init__.py",
line 154, in run_cmd
cmd.run(opts)
File
"/mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre/work/calibre/setup/extensions.py",
line 235, in run
self.build(ext, dest)
File
"/mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre/work/calibre/setup/extensions.py",
line 255, in build
return self.build_pyqt_extension(ext, dest)
File
"/mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre/work/calibre/setup/extensions.py",
line 359, in build_pyqt_extension
shutil.copy2(module, dest)
File "/usr/pkg/lib/python2.6/shutil.py", line 100, in copy2
copystat(src, dst)
File "/usr/pkg/lib/python2.6/shutil.py", line 77, in copystat
os.chflags(dst, st.st_flags)
OSError: [Errno 45] Operation not supported:
'/mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre/work/calibre/src/calibre/plugins/pictureflow.so'
*** Error code 1
Stop.
make: stopped in /mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre
*** Error code 1
Stop.
make: stopped in /mnt/vol1/rhialto/cvs/pkgsrc/misc/calibre
Then, the workaround for #2:
looking closely at the output, I saw that the install process (inside
pkg_comp, started with sudo) was dropping privileges back to "rhialto".
I found out that it looked at the typical environment variables from
sudo, SUDO_UID, SUDO_GID, and SUDO_USER. When I unset these inside
pkg_comp before building (** how to automate that from the Makefile?? **)
problem #2 went away: now it could write the files it wanted.
However, installing calibre includes running it. It is a Python program,
so running it means compiling it, and if possible saving the compiled
modules. This meant that the modules from the py26-qt4 package were
compiled. The PLIST check detected these extra files and flagged this as
an error.
I haven't found a way to solve that one properly.
>How-To-Repeat:
see above
>Fix:
partly known.
-Olaf.
--
___ Olaf 'Rhialto' Seibert -- There's no point being grown-up if you
\X/ rhialto/at/xs4all.nl -- can't be childish sometimes. -The 4th Doctor
>Unformatted:
Home |
Main Index |
Thread Index |
Old Index