Making pkgbuild for keytouch
I'm trying to make a pkgbuild for keytouch
But as it's my first pkgbuild, I have some problems:
1) the docs say you need the following packages to be installed:
- GTK 2
- gksu
- X11 and Xlib
gtk2 and gksu are in pacman, but what do I have to add for X11 and Xlib?
2) running makepkg runs into an error:
mkdir /home/tom/download/PKGbuilds/keytouch/test1/pkg/usr/bin
/bin/install -c keytouchd /home/tom/download/PKGbuilds/keytouch/test1/pkg/usr/bin/keytouchd
XSESSION_KEYTOUCHD_LINE="keytouchd &";
XSESSION_DIR="/etc/X11/Xsession.d";
if [ -d $XSESSION_DIR ]; then
echo "$XSESSION_KEYTOUCHD_LINE" > $XSESSION_DIR/40keytouchd;
chmod +x $XSESSION_DIR/40keytouchd;
else
XSESSION_FILE="/etc/X11/Xsession";
if [ "`grep "$XSESSION_KEYTOUCHD_LINE" "$XSESSION_FILE" -m 1 -h`" != "$XSESSION_KEYTOUCHD_LINE" ]; then
XSESSION_TMP=`cat "$XSESSION_FILE"`;
echo "$XSESSION_KEYTOUCHD_LINE" > $XSESSION_FILE;
echo "$XSESSION_TMP" >> $XSESSION_FILE;
fi
fi
/bin/sh: /etc/X11/Xsession.d/40keytouchd: Permission denied
chmod: cannot access `/etc/X11/Xsession.d/40keytouchd': No such file or directory
make[2]: *** [install-data-local] Error 1
make[2]: Leaving directory `/home/tom/download/PKGbuilds/keytouch/test1/src/keytouch-2.0/keytouchd'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/tom/download/PKGbuilds/keytouch/test1/src/keytouch-2.0/keytouchd'
make: *** [install-recursive] Error 1
==> ERROR: Build Failed. Aborting...
It produces this error on the make install, and I thinks it's because the src/keytouch-2.0/keytouchd/Makefile.am contains the following:
install-data-local:
@$(NORMAL_INSTALL)
XSESSION_KEYTOUCHD_LINE="keytouchd &";
XSESSION_DIR="$(DESTDIR)/etc/X11/Xsession.d";
if [ -d $$XSESSION_DIR ]; then
echo "$$XSESSION_KEYTOUCHD_LINE" > $$XSESSION_DIR/40keytouchd;
chmod +x $$XSESSION_DIR/40keytouchd;
else
XSESSION_FILE="/etc/X11/Xsession";
if [ "`grep "$$XSESSION_KEYTOUCHD_LINE" "$$XSESSION_FILE" -m 1 -h`" != "$$XSESSION_KEYTOUCHD_LINE" ]; then
XSESSION_TMP=`cat "$$XSESSION_FILE"`;
echo "$$XSESSION_KEYTOUCHD_LINE" > $$XSESSION_FILE;
echo "$$XSESSION_TMP" >> $$XSESSION_FILE;
fi
fi
The make install tries to write directly to /etc/X11/Xsession, which is not allowed while make the pkg.
How do I solve this problem?
The pkgbuild so far:
# $Id: PKGBUILD,v 1.0 2005/21/11 $
# Maintainer: mouse256
pkgname=keytouch
pkgver=2.0.0
pkgrel=1
pkgdesc="A program which allows you to easily configure the extra function keys of your keyboard"
depends=('gtk2' 'gksu')
source=(http://dl.sourceforge.net/sourceforge/keytouch/$pkgname-$pkgver.tar.gz)
url="http://keytouch.sourceforge.net/"
md5sums=('a7a22320707b887b1c5dedb77d2cf3e6')
build() {
cd $startdir/src/$pkgname-2.0
./configure --prefix=/usr
make || return 1
make prefix=$startdir/pkg/usr install
thanks, it dit help somewhat, but I still had some errors. Now they're all solved, but I don't know whether my pkgbuild is according the arch rules:
pkgbuild;
# $Id: PKGBUILD,v 1.0 2005/21/11 $
# Maintainer: mouse256
pkgname=keytouch
pkgver=2.0.0
pkgrel=1
pkgdesc="A program which allows you to easily configure the extra function keys of your keyboard"
depends=('gtk2' 'gksu')
source=(http://dl.sourceforge.net/sourceforge/keytouch/$pkgname-$pkgver.tar.gz)
url="http://keytouch.sourceforge.net/"
md5sums=('a7a22320707b887b1c5dedb77d2cf3e6')
build() {
cd $startdir/src/$pkgname-2.0
./configure --prefix=/usr
make || return 1
#script checkt if Xsession directory exists, so create it
mkdir $startdir/pkg/etc
mkdir $startdir/pkg/etc/X11
mkdir $startdir/pkg/etc/X11/Xsession.d
mkdir $startdir/pkg/etc/rc.d
make DESTDIR=$startdir/pkg install
cd $startdir/src/$pkgname-2.0/keytouch-config
./configure --prefix=/usr
make || return 1
make DESTDIR=$startdir/pkg install
cd $startdir/src/$pkgname-2.0/keytouch-keyboard
./configure --prefix=/usr
make || return 1
make DESTDIR=$startdir/pkg install
mkdir -p $startdir/pkg/usr/share/applications
echo "Categories=Application;Accessoires;" >> $startdir/pkg/usr/share/keytouch/desktop/keytouch.desktop
mv $startdir/pkg/usr/share/keytouch/desktop/keytouch.desktop $startdir/pkg/usr/share/applications
The biggest problem I think is it creates a file in /etc/rc.d
FILELIST:
.FILELIST
.PKGINFO
etc/
etc/X11/
etc/X11/Xsession.d/
etc/X11/Xsession.d/40keytouchd
etc/rc.d/
etc/rc.d/keytouch-init.sh
usr/
usr/bin/
usr/bin/keytouch
usr/bin/keytouch-init
usr/bin/keytouch-keyboard
usr/bin/keytouch-keyboard-bin
usr/bin/keytouchd
usr/etc/
usr/etc/keytouch/
usr/share/
usr/share/keytouch-keyboard-bin/
usr/share/keytouch-keyboard-bin/pixmaps/
usr/share/keytouch-keyboard-bin/pixmaps/icon.png
usr/share/keytouch/
usr/share/keytouch/doc/
usr/share/keytouch/doc/html/
usr/share/keytouch/doc/html/WARNINGS
usr/share/keytouch/doc/html/images.aux
usr/share/keytouch/doc/html/images.log
usr/share/keytouch/doc/html/images.out
usr/share/keytouch/doc/html/images.pl
usr/share/keytouch/doc/html/images.tex
usr/share/keytouch/doc/html/img1.png
usr/share/keytouch/doc/html/img2.png
usr/share/keytouch/doc/html/img3.png
usr/share/keytouch/doc/html/img4.png
usr/share/keytouch/doc/html/index.html
usr/share/keytouch/doc/html/internals.pl
usr/share/keytouch/doc/html/labels.pl
usr/share/keytouch/doc/html/node1.html
usr/share/keytouch/doc/html/node10.html
usr/share/keytouch/doc/html/node11.html
usr/share/keytouch/doc/html/node12.html
usr/share/keytouch/doc/html/node13.html
usr/share/keytouch/doc/html/node14.html
usr/share/keytouch/doc/html/node15.html
usr/share/keytouch/doc/html/node16.html
usr/share/keytouch/doc/html/node17.html
usr/share/keytouch/doc/html/node18.html
usr/share/keytouch/doc/html/node2.html
usr/share/keytouch/doc/html/node3.html
usr/share/keytouch/doc/html/node4.html
usr/share/keytouch/doc/html/node5.html
usr/share/keytouch/doc/html/node6.html
usr/share/keytouch/doc/html/node7.html
usr/share/keytouch/doc/html/node8.html
usr/share/keytouch/doc/html/node9.html
usr/share/keytouch/doc/html/user_manual.css
usr/share/keytouch/doc/html/user_manual.html
usr/share/keytouch/keyboards/
usr/share/keytouch/keyboards/Aspire 1300.Acer
usr/share/keytouch/keyboards/Aspire 1350.Acer
usr/share/keytouch/keyboards/Cordless Desktop Pro.Logitech
usr/share/keytouch/keyboards/D47K.Promedion
usr/share/keytouch/keyboards/Easy Access Keyboard (8 keys).Compaq
usr/share/keytouch/keyboards/Internet Navigator.Logitech
usr/share/keytouch/keyboards/Latitude D505.Dell
usr/share/keytouch/keyboards/MultiMedia Keyboard 1.0.Microsoft
usr/share/keytouch/keyboards/TravelMate 4100.Acer
usr/share/keytouch/keyboards/Versa P550.Nec
usr/share/keytouch/keyboards/Y-RK49.Logitech
usr/share/keytouch/pixmaps/
usr/share/keytouch/pixmaps/icon.png
usr/share/keytouch/pixmaps/internet.png
usr/share/keytouch/pixmaps/key.png
usr/share/keytouch/pixmaps/key2.png
usr/share/keytouch/pixmaps/keyboard.png
usr/share/keytouch/pixmaps/keytouch.png
usr/share/keytouch/plugins/
usr/share/keytouch/plugins/amarok.so
usr/share/keytouch/plugins/aumix.so
usr/share/keytouch/plugins/browser.so
usr/share/keytouch/plugins/chat.so
usr/share/keytouch/plugins/common_actions.so
usr/share/keytouch/plugins/email.so
usr/share/keytouch/plugins/filemanager.so
usr/share/keytouch/plugins/lock_screen.so
usr/share/keytouch/plugins/xmms.so
the file etc/rc.d/keytouch-init.sh contains:
/usr/bin/keytouch-init
So this won't work on arch. Should the file be removed from the pkg? And should it be replaced by another deamon file that does work?
Similar Messages
-
Making PKGBUILD for iPhoneEthernetDriver
Someone could make the PKGBUILD for these drivers? --> http://giagio.com/wiki/moin.cgi/iPhoneEthernetDriver
ThanksWOW, nice!!
well, i really really hope this week i will have time, if someone else won't make before i will.
OR! it might happen tonight (israel time, +2:00 GMT), depends on my "motivation mode" which is not quiet well at the moment (sleepy)
well. i had some time and i created, works just fine , finally!
First you need this PKGBUILD of usbmuxd-git (the aur is outdated)
# Contributor: Erez Zarum <[email protected]>
pkgname=usbmuxd-git
pkgver=20100223
pkgrel=1
pkgdesc="USB multiplexing daemon for iPhone or iPod touch"
arch=('i686' 'x86_64')
url="http://www.libimobiledevice.org/"
license=('GPL' 'GPL2' 'GPL3')
depends=('libusb1')
makedepends=('git' 'cmake' 'gcc' 'make' 'pkgconfig' 'libtool')
provides=("usbmuxd=$pkgver")
conflicts=('usbmud')
install=usbmuxd-git.install
_gitroot="git://git.marcansoft.com/usbmuxd.git"
_gitname="usbmuxd"
build() {
cd "$srcdir"
msg "Connecting to GIT server...."
if [ -d $_gitname ] ; then
cd $_gitname && git pull origin
msg "The local files are updated."
else
git clone $_gitroot $_gitname
fi
msg "GIT checkout done or server timeout"
msg "Starting make..."
rm -rf "$srcdir/$_gitname-build"
git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build"
cd "$srcdir/$_gitname-build"
mkdir build
cd build
cmake .. -DLIB_SUFFIX= -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RELEASE || return 1
make || return 1
make DESTDIR="$pkgdir/" install || return 1
This is the usbmuxd-git.install (save it in the same dir of the PKGBUILD of usbmuxd-git)
post_install() {
echo ">>> You should also create a 'usbmux' user that has access to USB devices on your"
echo ">>> system. Alternatively, you can pass a different username after the -U argument. (/lib/udev/rules.d/85-usbmuxd.rules)"
then install libiphone-git from the AUR (it looks dated, though i created my own PKGBUILD without noticing there's one in the AUR)
then use this PKGBUILD from the AUR of the ipheth i created: http://aur.archlinux.org/packages.php?ID=34953
any question you can leave in the AUR comment or via my mail.
have fun
Last edited by Infin1ty (2010-02-22 22:57:04) -
"exists in filesystem" issue while making PKGBUILD for a python module
This is the package. http://packages.python.org/vcs/usage/vc … n-commands
Its already not in the AUR, so I decided of making the PKGBUILD http://sprunge.us/XVTA
Now, when I try to install it, I get this error
shadyabhi@archlinux /tmp $ sudo pacman -U python2-vcs-0.2.0-1-x86_64.pkg.tar.xz
Password:
resolving dependencies...
looking for inter-conflicts...
Targets (1): python2-vcs-0.2.0-1 [0.11 MB]
Total Download Size: 0.00 MB
Total Installed Size: 1.27 MB
Proceed with installation? [Y/n]
(1/1) checking package integrity [################################################################] 100%
(1/1) checking for file conflicts [################################################################] 100%
error: failed to commit transaction (conflicting files)
python2-vcs: /usr/lib/python2.7/site-packages/tests/__init__.py exists in filesystem
python2-vcs: /usr/lib/python2.7/site-packages/tests/__init__.pyc exists in filesystem
python2-vcs: /usr/lib/python2.7/site-packages/tests/__init__.pyo exists in filesystem
shadyabhi@archlinux /tmp $
Also, these files are owned by:
shadyabhi@archlinux ~ $ pacman -Qo /usr/lib/python2.7/site-packages/tests/__init__.py
/usr/lib/python2.7/site-packages/tests/__init__.py is owned by python-paste-deploy 1.3.4-1
shadyabhi@archlinux ~ $
So, what should be done?Added a note to the python packaging guidelines about not putting a directory named "tests" directly in "site-packages". Hope it helps avoiding this issue in the future.
https://wiki.archlinux.org/index.php/Py … Guidelines -
Making a PKGBUILD for a Qt Widget
I've made a pkgbuild for qtermwidget - it works - the "example" consoleq works, but I wonder if I have to add some source files to the pkg like lib/qtermwidget.h, so the widget could be used in other Qt apps code?
pkgname=qtermwidget
pkgver=0.1
pkgrel=1
pkgdesc="A terminal widget for Qt4 and a simple terminal"
url="http://www.qt-apps.org/content/show.php/QTermWidget?content=82832"
depends=('qt')
makedepends=('qt')
conflicts=()
arch=('x86_64')
replaces=()
backup=()
source=("http://dl.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz")
md5sums=('b6c246eb78cc91cb93c76e31ece8b3f1')
license=('GPL')
build() {
cd $startdir/src/$pkgname
qmake
make || return 1
mkdir -p $startdir/pkg/usr/bin
mkdir -p $startdir/pkg/usr/lib
cp consoleq $startdir/pkg/usr/bin/
cp consoleq_d $startdir/pkg/usr/bin/
cp libqtermwidget.a $startdir/pkg/usr/lib/
cp libqtermwidget_d.a $startdir/pkg/usr/lib/I've made a pkgbuild for qtermwidget - it works - the "example" consoleq works, but I wonder if I have to add some source files to the pkg like lib/qtermwidget.h, so the widget could be used in other Qt apps code?
pkgname=qtermwidget
pkgver=0.1
pkgrel=1
pkgdesc="A terminal widget for Qt4 and a simple terminal"
url="http://www.qt-apps.org/content/show.php/QTermWidget?content=82832"
depends=('qt')
makedepends=('qt')
conflicts=()
arch=('x86_64')
replaces=()
backup=()
source=("http://dl.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz")
md5sums=('b6c246eb78cc91cb93c76e31ece8b3f1')
license=('GPL')
build() {
cd $startdir/src/$pkgname
qmake
make || return 1
mkdir -p $startdir/pkg/usr/bin
mkdir -p $startdir/pkg/usr/lib
cp consoleq $startdir/pkg/usr/bin/
cp consoleq_d $startdir/pkg/usr/bin/
cp libqtermwidget.a $startdir/pkg/usr/lib/
cp libqtermwidget_d.a $startdir/pkg/usr/lib/ -
PKGBUILD for custom kernel issue
Hi all,
Last night I was putting together a PKGBUILD for a kernel I'd like to compile that has the ck patchset, grsecurity (latest testing), and had broadcom-wl on it already so I don't have to keep reinstalling it from AUR and doing depmod each time as it keeps making me have to find an ethernet cable. I used the kerne26 Arch PKGBUILD as a base and included parts of kernel-netbook for broadcom-wl, kernel26-grsecurity, and kernel26-ck and altered name variables and links etc so it all works and all sources are downloaded. I also got the two .patch files (semaphore and something else) from the kernel-netbook tarball to build the thing with, I don't know if it would work without them.
However when I get into the build() a few patches are applied before I get messages about patches already applied or reversed, and then it says build failed because of an error, I can't tell which package is causing thins or why (it all goes by too fast, and the error says failed without reason, and the reversed patch messages are what is immediately previous to it). I have not yet gone all the way through the pkgbuild - especially towards the end, and I felt that the standard setup of init file system creation and such were ok, and if anything does need altering about it, I can deal with it once I get these first troubles solved.
Below is my pkgbuild so far. Hopefully there are people out there who can aid me with this.
Thanks,
Ben.
# Maintainer: Ben Ward <[email protected]>
pkgbase="kernel26"
# pkgname=('kernel26' 'kernel26-headers' 'kernel26-docs') # Build stock -ARCH kernel
pkgname=kernel26-custom # Build kernel with a different name
#Base kernel info
_kernelname=${pkgname#kernel26}
_basekernel=2.6.38
pkgver=${_basekernel}.3
pkgrel=1
#ARCH patch info
_archpatchver=1
_archpatchname="patch-${pkgver}-${_archpatchver}-ARCH"
#_archpatchname="patch-${pkgver}-1-ARCH"
#grsecurity info
_grsec=2.2.2
_timestamp=201104182227
#Broadcom-wl info
_broadcom_ver=5.100.82.38
_broadcom="hybrid-portsrc_x86_32-v${_broadcom_ver//./_}"
#ck-patch info
_ckpatchversion=3
_ckpatchname="patch-${_basekernel}-ck${_ckpatchversion}"
arch=(i686 x86_64)
license=('GPL2')
url="http://www.kernel.org"
options=(!strip)
source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_basekernel.tar.bz2
ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-${pkgver}.bz2
ftp://ftp.archlinux.org/other/kernel26/${_archpatchname}.bz2
http://grsecurity.net/test/grsecurity-${_grsec}-${pkgver}-${_timestamp}.patch
http://www.broadcom.com/docs/linux_sta/${_broadcom}.tar.gz
http://www.kernel.org/pub/linux/kernel/people/ck/patches/2.6/${_basekernel}/${_basekernel}-ck${_ckpatchversion}/${_ckpatchname}.bz2
"semaphore.patch"
"mutex-sema.patch"
# the main kernel config files
config config.x86_64
# standard config files for mkinitcpio ramdisk
kernel26.preset)
md5sums=('7d471477bfa67546f902da62227fa976'
'b3677121c4b5efcb8128c2000788d0aa'
'5b14b6eb2cdcb074905d4974437c4df6'
'a19024797f192fe21a468de80c101d8a'
'c0074a1622c75916442e26763ddf47d0'
'88d5b3e0622f8c48dad19ab9ac3c16f0'
'aee89fe7f034aea2f2ca95322774c1b5'
'21ce3f7967d7305064bf7eb60030ffea'
'f66543886835ab8599b29cd0c48aa66d'
'd866bcc06672fee17736bd5022f700fe'
'25584700a0a679542929c4bed31433b6')
build() {
cd ${srcdir}/linux-$_basekernel
# Apply kernel.org patch to basekernel
msg "Checking basekernel is ip to date..."
if [[ "${_basekernel}" != "${pkgver}" ]]; then
msg "Patching source with upstream patch..."
patch -Np1 -i "${srcdir}/patch-${pkgver}" || return 1
fi
# Add -ARCH patches
# See http://projects.archlinux.org/linux-2.6-ARCH.git/
msg "Patching Kernel with ARCH patches..."
patch -Np1 -i ${srcdir}/${_archpatchname}
# Add ck patch
msg "Patching Kernel with ck patches..."
patch -Np1 -i ${srcdir}/${_ckpatchname}
# Add grsecurity patch
msg "Patching kernel with grsecurity testing branch..."
if [ "$CARCH" = "x86_64" ]; then
cat ../config.x86_64 >./.config
else
cat ../config >./.config
fi
if [ "${_kernelname}" != "" ]; then
sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config
fi
# get kernel version
make prepare
# load configuration
# Configure the kernel. Replace the line below with one of your choice.
#make menuconfig # CLI menu for configuration
make nconfig # new CLI menu for configuration
#make xconfig # X-based configuration
#make oldconfig # using old config from previous kernel version
# ... or manually edit .config
# stop here
# this is useful to configure the kernel
#msg "Stopping build"
#return 1
yes "" | make config
# build!
make ${MAKEFLAGS} bzImage modules
package_kernel26() {
pkgdesc="The Linux Kernel and modules"
groups=('base')
backup=(etc/mkinitcpio.d/${pkgname}.preset)
depends=('coreutils' 'linux-firmware' 'module-init-tools>=3.12-2' 'mkinitcpio>=0.6.8-2')
# pwc, ieee80211 and hostap-driver26 modules are included in kernel26 now
# nforce package support was abandoned by nvidia, kernel modules should cover everything now.
# kernel24 support is dropped since glibc24
replaces=('kernel24' 'kernel24-scsi' 'kernel26-scsi'
'alsa-driver' 'ieee80211' 'hostap-driver26'
'pwc' 'nforce' 'squashfs' 'unionfs' 'ivtv'
'zd1211' 'kvm-modules' 'iwlwifi' 'rt2x00-cvs'
'gspcav1' 'atl2' 'wlan-ng26' 'rt2500' 'nouveau-drm')
install=kernel26.install
optdepends=('crda: to set the correct wireless channels of your country')
KARCH=x86
cd ${srcdir}/linux-$_basekernel
# get kernel version
_kernver="$(make kernelrelease)"
mkdir -p ${pkgdir}/{lib/modules,lib/firmware,boot}
make INSTALL_MOD_PATH=${pkgdir} modules_install
cp System.map ${pkgdir}/boot/System.map26${_kernelname}
cp arch/$KARCH/boot/bzImage ${pkgdir}/boot/vmlinuz26${_kernelname}
# # add vmlinux
install -m644 -D vmlinux ${pkgdir}/usr/src/linux-${_kernver}/vmlinux
# install fallback mkinitcpio.conf file and preset file for kernel
install -m644 -D ${srcdir}/kernel26.preset ${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset
# set correct depmod command for install
sed \
-e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/g" \
-e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \
-i $startdir/kernel26.install
sed \
-e "s|source .*|source /etc/mkinitcpio.d/kernel26${_kernelname}.kver|g" \
-e "s|default_image=.*|default_image=\"/boot/${pkgname}.img\"|g" \
-e "s|fallback_image=.*|fallback_image=\"/boot/${pkgname}-fallback.img\"|g" \
-i ${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset
echo -e "# DO NOT EDIT THIS FILE\nALL_kver='${_kernver}'" > ${pkgdir}/etc/mkinitcpio.d/${pkgname}.kver
# remove build and source links
rm -f ${pkgdir}/lib/modules/${_kernver}/{source,build}
# remove the firmware
rm -rf ${pkgdir}/lib/firmware
# gzip -9 all modules to safe 100MB of space
find "$pkgdir" -name '*.ko' -exec gzip -9 {} \;
##Section: Broadcom-wl
msg "Compiling broadcom-wl module:"
cd ${srcdir}/
#patching broadcom as broadcom-wl package on AUR
patch -p1 < license.patch
patch -p1 < semaphore.patch
patch -p1 < mutex-sema.patch
make -C ${srcdir}/linux-$_basekernel M=`pwd`
install -D -m 755 wl.ko ${pkgdir}/lib/modules/$_kernver/kernel/drivers/net/wireless/wl.ko
package_kernel26-headers() {
pkgdesc="Header files and scripts for building modules for kernel26"
mkdir -p ${pkgdir}/lib/modules/${_kernver}
cd ${pkgdir}/lib/modules/${_kernver}
ln -sf ../../../usr/src/linux-${_kernver} build
cd ${srcdir}/linux-$_basekernel
install -D -m644 Makefile \
${pkgdir}/usr/src/linux-${_kernver}/Makefile
install -D -m644 kernel/Makefile \
${pkgdir}/usr/src/linux-${_kernver}/kernel/Makefile
install -D -m644 .config \
${pkgdir}/usr/src/linux-${_kernver}/.config
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/include
for i in acpi asm-generic config generated linux math-emu media net pcmcia scsi sound trace video xen; do
cp -a include/$i ${pkgdir}/usr/src/linux-${_kernver}/include/
done
# copy arch includes for external modules
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/x86
cp -a arch/x86/include ${pkgdir}/usr/src/linux-${_kernver}/arch/x86/
# copy files necessary for later builds, like nvidia and vmware
cp Module.symvers ${pkgdir}/usr/src/linux-${_kernver}
cp -a scripts ${pkgdir}/usr/src/linux-${_kernver}
# fix permissions on scripts dir
chmod og-w -R ${pkgdir}/usr/src/linux-${_kernver}/scripts
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/kernel
cp arch/$KARCH/Makefile ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/
if [ "$CARCH" = "i686" ]; then
cp arch/$KARCH/Makefile_32.cpu ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/
fi
cp arch/$KARCH/kernel/asm-offsets.s ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/kernel/
# add headers for lirc package
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video
cp drivers/media/video/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/
for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102; do
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/$i
cp -a drivers/media/video/$i/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/$i
done
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/staging/usbvideo/
cp -a drivers/staging/usbvideo/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/staging/usbvideo/
# add docbook makefile
install -D -m644 Documentation/DocBook/Makefile \
${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile
# add dm headers
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/md
cp drivers/md/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/md
# add inotify.h
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/include/linux
cp include/linux/inotify.h ${pkgdir}/usr/src/linux-${_kernver}/include/linux/
# add wireless headers
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/
cp net/mac80211/*.h ${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/
# add dvb headers for external modules
# in reference to:
# http://bugs.archlinux.org/task/9912
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core
cp drivers/media/dvb/dvb-core/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/
# add dvb headers for external modules
# in reference to:
# http://bugs.archlinux.org/task/11194
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/
cp include/config/dvb/*.h ${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/
# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
# in reference to:
# http://bugs.archlinux.org/task/13146
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/
cp drivers/media/dvb/frontends/lgdt330x.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/
cp drivers/media/video/msp3400-driver.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/
# add dvb headers
# in reference to:
# http://bugs.archlinux.org/task/20402
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb
cp drivers/media/dvb/dvb-usb/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends
cp drivers/media/dvb/frontends/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners
cp drivers/media/common/tuners/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/
# add xfs and shmem for aufs building
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/fs/xfs
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/mm
cp fs/xfs/xfs_sb.h ${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h
# add headers vor virtualbox
# in reference to:
# http://bugs.archlinux.org/task/14568
cp -a include/drm $pkgdir/usr/src/linux-${_kernver}/include/
# add headers for broadcom wl
# in reference to:
# http://bugs.archlinux.org/task/14568
cp -a include/trace $pkgdir/usr/src/linux-${_kernver}/include/
# add headers for crypto modules
# in reference to:
# http://bugs.archlinux.org/task/22081
cp -a include/crypto $pkgdir/usr/src/linux-${_kernver}/include/
# copy in Kconfig files
for i in `find . -name "Kconfig*"`; do
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/`echo $i | sed 's|/Kconfig.*||'`
cp $i ${pkgdir}/usr/src/linux-${_kernver}/$i
done
chown -R root.root ${pkgdir}/usr/src/linux-${_kernver}
find ${pkgdir}/usr/src/linux-${_kernver} -type d -exec chmod 755 {} \;
# strip scripts directory
find ${pkgdir}/usr/src/linux-${_kernver}/scripts -type f -perm -u+w 2>/dev/null | while read binary ; do
case "$(file -bi "$binary")" in
*application/x-sharedlib*) # Libraries (.so)
/usr/bin/strip $STRIP_SHARED "$binary";;
*application/x-archive*) # Libraries (.a)
/usr/bin/strip $STRIP_STATIC "$binary";;
*application/x-executable*) # Binaries
/usr/bin/strip $STRIP_BINARIES "$binary";;
esac
done
# remove unneeded architectures
rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}
package_kernel26-docs() {
pkgdesc="Kernel hackers manual - HTML documentation that comes with the Linux kernel."
cd ${srcdir}/linux-$_basekernel
mkdir -p $pkgdir/usr/src/linux-$_kernver
mv Documentation $pkgdir/usr/src/linux-$_kernver
find $pkgdir -type f -exec chmod 444 {} \;
find $pkgdir -type d -exec chmod 755 {} \;
# remove a file already in kernel26 package
rm -f $pkgdir/usr/src/linux-$_kernver/Documentation/DocBook/Makefile
I wonder if localyesconfig would take care of broadcom-wl for me...
Last edited by Ben9250 (2011-04-20 00:12:44)Thank you. I guess trying the abs method wouldn't hurt. My main issue was configuration. I've only just skimmed the PKGBUILD so I'm not aware of how it handles it. I suppose I could write my own as described in the wiki as well. Thanks again.
Edit: Further research has revealed to me that the kernel headers are merely there for when the full source tree isn't. Seeing as the full tree is present in my case, the headers are unnecessary. I may take graysky's advice though and use pacman to manage my kernel.
Last edited by smithr.michael1997 (2011-03-31 02:17:29) -
Help with PKGBUILD for nvidia driver cards
Hello, I'm trying to make a PKGBUILD for the new geforce beta driver for the kernel26-mm kernel, geforce-utils went just fine, but the the geforce package was more tricky, here's the PKGBUILD:
pkgname=geforce-mm
pkgver=173.08
_kernver='2.6.25-mm'
pkgrel=1
pkgdesc="NVIDIA drivers for kernel26mm."
arch=(i686 x86_64)
[ "$CARCH" = "i686" ] && ARCH=x86
[ "$CARCH" = "x86_64" ] && ARCH=x86_64
url="http://www.nvidia.com/"
depends=('kernel26mm' 'geforce-utils')
install=geforce.install
source=(http://us.download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg1.run)
md5sums=()
[ "$CARCH" = "x86_64" ] && md5sums=()
build()
# Extract
cd $startdir/src/
sh NVIDIA-Linux-$ARCH-${pkgver}-pkg1.run --extract-only
cd NVIDIA-Linux-$ARCH-${pkgver}-pkg1
cd usr/src/nv/
ln -s Makefile.kbuild Makefile
make SYSSRC=/lib/modules/${_kernver}/build module || return 1
# install kernel module
mkdir -p $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/
install -m644 nvidia.ko $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/
sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/*.install
Output when running it:
[roberth@Magda geforce-mm]$ makepkg
==> Making package: geforce-mm 173.08-1 (Mon Apr 14 22:44:41 CEST 2008)
==> Checking Runtime Dependencies...
==> Checking Buildtime Dependencies...
==> Retrieving Sources...
-> Downloading NVIDIA-Linux-x86-173.08-pkg1.run...
--2008-04-14 22:44:41-- http://us.download.nvidia.com/XFree86/Linux-x86/173.08/NVIDIA-Linux-x86-173.08-pkg1.run
Resolving us.download.nvidia.com... 193.213.121.82, 193.213.121.74
Connecting to us.download.nvidia.com|193.213.121.82|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 18958181 (18M) [application/octet-stream]
Saving to: `NVIDIA-Linux-x86-173.08-pkg1.run'
100%[===========================================================================================================================================================================================>] 18,958,181 710K/s in 26s
2008-04-14 22:45:07 (720 KB/s) - `NVIDIA-Linux-x86-173.08-pkg1.run' saved [18958181/18958181]
==> WARNING: Integrity checks (md5) are missing or incomplete.
==> Extracting Sources...
==> Entering fakeroot environment...
==> Starting build()...
Creating directory NVIDIA-Linux-x86-173.08-pkg1
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 173.08...............................................................................................................................................................................................................................................................................................
NVIDIA: calling KBUILD...
make CC=cc KBUILD_VERBOSE=1 -C /lib/modules/2.6.25-mm/build SUBDIRS=/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv modules
test -e include/linux/autoconf.h -a -e include/config/auto.conf || ( \
echo; \
echo " ERROR: Kernel configuration is invalid."; \
echo " include/linux/autoconf.h or include/config/auto.conf are missing."; \
echo " Run 'make oldconfig && make prepare' on kernel src to fix it."; \
echo; \
/bin/false)
mkdir -p /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/.tmp_versions ; rm -f /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/.tmp_versions/*
make -f scripts/Makefile.build obj=/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv
cc -Wp,-MD,/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/.nv.o.d -nostdinc -isystem /usr/lib/gcc/i686-pc-linux-gnu/4.3.0/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -O2 -fno-stack-protector -m32 -msoft-float -mregparm=3 -freg-struct-return -mpreferred-stack-boundary=2 -march=i686 -mtune=generic -ffreestanding -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -Iinclude/asm-x86/mach-default -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -I/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -Wno-multichar -Werror -MD -Wsign-compare -Wno-cast-qual -Wno-error -D__KERNEL__ -DMODULE -DNVRM -DNV_VERSION_STRING=\"173.08\" -UDEBUG -U_DEBUG -DNDEBUG -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(nv)" -D"KBUILD_MODNAME=KBUILD_STR(nvidia)" -c -o /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.o /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c
In file included from include/linux/list.h:8,
from include/linux/preempt.h:11,
from include/linux/spinlock.h:49,
from include/linux/seqlock.h:29,
from include/linux/time.h:8,
from include/linux/timex.h:57,
from include/linux/sched.h:54,
from include/linux/utsname.h:35,
from /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv-linux.h:19,
from /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:14:
include/linux/prefetch.h: In function 'prefetch_range':
include/linux/prefetch.h:57: warning: pointer of type 'void *' used in arithmetic
In file included from include/linux/gfp.h:4,
from include/linux/slab.h:14,
from include/linux/percpu.h:5,
from include/linux/rcupdate.h:41,
from include/linux/pid.h:4,
from include/linux/sched.h:74,
from include/linux/utsname.h:35,
from /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv-linux.h:19,
from /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:14:
include/linux/mmzone.h: In function 'first_zones_zonelist':
include/linux/mmzone.h:778: warning: comparison between signed and unsigned
include/linux/mmzone.h:781: warning: comparison between signed and unsigned
include/linux/mmzone.h: In function 'next_zones_zonelist':
include/linux/mmzone.h:798: warning: comparison between signed and unsigned
include/linux/mmzone.h:801: warning: comparison between signed and unsigned
In file included from include/asm/dma-mapping_32.h:5,
from include/asm/dma-mapping.h:2,
from include/linux/dma-mapping.h:52,
from include/asm-generic/pci-dma-compat.h:7,
from include/asm/pci.h:90,
from include/linux/pci.h:937,
from /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv-linux.h:86,
from /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:14:
include/linux/scatterlist.h: In function 'sg_virt':
include/linux/scatterlist.h:199: warning: pointer of type 'void *' used in arithmetic
In file included from /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv-linux.h:109,
from /home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:14:
include/linux/highmem.h: In function 'zero_user_segments':
include/linux/highmem.h:134: warning: pointer of type 'void *' used in arithmetic
include/linux/highmem.h:134: warning: pointer of type 'void *' used in arithmetic
include/linux/highmem.h:134: warning: pointer of type 'void *' used in arithmetic
include/linux/highmem.h:134: warning: pointer of type 'void *' used in arithmetic
include/linux/highmem.h:137: warning: pointer of type 'void *' used in arithmetic
include/linux/highmem.h:137: warning: pointer of type 'void *' used in arithmetic
include/linux/highmem.h:137: warning: pointer of type 'void *' used in arithmetic
include/linux/highmem.h:137: warning: pointer of type 'void *' used in arithmetic
/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c: In function 'nv_kern_vma_nopage':
/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:1846: error: 'NOPAGE_SIGBUS' undeclared (first use in this function)
/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:1846: error: (Each undeclared identifier is reported only once
/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:1846: error: for each function it appears in.)
/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c: At top level:
/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:1853: error: unknown field 'nopage' specified in initializer
/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.c:1853: warning: initialization from incompatible pointer type
make[3]: *** [/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv/nv.o] Error 1
make[2]: *** [_module_/home/roberth/pkg/geforce-mm/src/NVIDIA-Linux-x86-173.08-pkg1/usr/src/nv] Error 2
NVIDIA: left KBUILD.
nvidia.ko failed to build!
make[1]: *** [module] Error 1
make: *** [module] Error 2
==> ERROR: Build Failed.
Aborting...
Anybody have a clue?It seems I was wrong! I found a patch on the nvidia forums which actually makes it works
I don't know if it will work for you, or how safe it is, but I guess it is worth a shot.
The patch:
--- os-agp.c.25 2008-04-02 01:34:49.000000000 -0400
+++ os-agp.c 2008-04-02 01:39:00.000000000 -0400
@@ -293,7 +293,7 @@
nv_pte_t *page_ptr = at->page_table[i];
- page_ptr->phys_addr = (ptr->memory[i] & PAGE_MASK);
+ page_ptr->phys_addr = (ptr->memory[i]);
page_ptr->virt_addr = (unsigned long) __va(page_ptr->phys_addr);
page_ptr->dma_addr = page_ptr->phys_addr;
--- nv.c.25 2008-03-15 22:00:46.000000000 -0400
+++ nv.c 2008-04-02 01:31:46.000000000 -0400
@@ -613,7 +613,7 @@
nv_state_t *nv;
nv_linux_state_t *nvl;
- proc_nvidia = create_proc_entry("nvidia", d_flags, proc_root_driver);
+ proc_nvidia = create_proc_entry("driver/nvidia", d_flags, NULL);
if (!proc_nvidia)
goto failed;
@@ -1811,6 +1811,19 @@
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 24))
+int nv_kern_vma_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
+{
+struct page *page;
+
+ page = pfn_to_page(vma->vm_pgoff);
+ if (!page)
+ return VM_FAULT_SIGBUS;
+ get_page(page);
+ vmf->page = page;
+ return 0;
+}
+#else
struct page *nv_kern_vma_nopage(
struct vm_area_struct *vma,
unsigned long address,
@@ -1832,11 +1845,16 @@
return NOPAGE_SIGBUS;
#endif
+#endif /* 2.6.24 */
struct vm_operations_struct nv_vm_ops = {
.open = nv_kern_vma_open,
.close = nv_kern_vma_release, /* "close" */
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 24))
+ .fault = nv_kern_vma_fault,
+#else
.nopage = nv_kern_vma_nopage,
+#endif
static nv_file_private_t * -
I enabled computer home sharing between my fiance's apple computer and my windows computer, so I now can play his music on my computer; however, I am making playlists for our wedding and am unable to transfer any of his songs to my playlists. How can I do this?
Thanks
Are you sure that if I use my windows log in rather than my husbands, then open itunes it won't delete all his hundreds of songs and overwrite with mine?
I want to maintain my own apple ID login and he wants his but without losing his songs.....
how do i transfer the content of my itunes including apps and songs to the new computer. There doesn't seem to be an easy explanation on here. Do I just plug my iPhone in and it will all transfer? -
I downloaded a new APP to my iPhone it appears on my screen but can't get it to appear on my wife's iPhone screen. Her screens were initially full of Apps, I later made room for the new APP but can't get it to appear even after making room for the new APp. It can be opened, but I want the APP to be on her iPhone screen as well as on mine. Help, please.
Is the app downloaded on her phone also?
-
Finding a PKGBUILD for the 2.6.21.4 kernel (for Asus EEE )
I'm trying to build a kernel that will support the Asus Eee's non-source drivers out of the box without ndiswrapper. I also would like to install the whole thing using my pacman. Is there any way to get a complete PKGBUILD for this kernel? If possible, I'd also like to get the associated patches, etc if possible.
I'm basing my hack on some things listed here:
http://cliffhacks.blogspot.com
I played with the CVS for awhile, but couldn't find a way to get the kernel 2.6.21.4 PKGBUILD, and I'm not sure if CVS would even do this.
After this, I'll have to compare the PKGBUILD with the config that Asus used on their kernel. We'll see how it goes. Thanks for any help or tips.lilsirecho wrote:
beniro;
Normally PKGBUILDS for kernels are not provided in arch.
However, one has been inserted into the aur mix by raymano and it is for kernel 2.6.23.9-1.
What are you talking about - I thought the PKGBUILDs were publicly available. Atleast I can see them - and you could certainly create your own although with a little difficulty for such an early kernel - but It should be possible -
Help to create a pkgbuild for harpia
hi i want to create a pkgbuild for the harpia program http://s2i.das.ufsc.br/harpia/en/home.html
searching in the aur and in the net i couldn't find something
harpia exist for ubuntu and the .deb file is hosted here http://packages.ubuntu.com/oneiric/all/harpia
can someone help me create a working pkgbuild for arch through the .deb file
i tried to create a first approach by creating the following PKGBUILD:
pkgname=harpia
pkgver=1.1
pkgrel=1
pkgdesc="Image Processing/Computer Vision Automatic Prgm. Tool"
arch=('any')
url="http://s2i.das.ufsc.br/harpia/en/home.html"
license=('GPL2')
depends=('')
source=("http://archive.ubuntu.com/ubuntu/pool/universe/h/harpia/${pkgname}_${pkgver}-0ubuntu1.1_all.deb")
md5sums=('56c6cb146ea5652e41b77506ad8ec263')
build() {
bsdtar -C "$pkgdir" -xvf data.tar.gz
however when i am running the program i am taking the following error:
Traceback (most recent call last):
File "/usr/bin/harpia", line 32, in <module>
from harpia import harpiagcfrontend
ImportError: No module named harpia
i guess that the problem might have to do with some dependencies or with the python library, can you provide me with some tips
thanksWell, I'm not going to tell you every little thing .
I found a likely candidate for python-gnome2 in pacman using a judicious choice of search terms. As for the rest, I suggest you go to the Debian or Ubuntu package lists. The Debian ones are easy to find in Google. These lists contain lots of information about what packages contain and what they provide and where the source code is from.
Do some detective work, you will figure it out. -
Can anyone make a PKGBUILD for Novel iFolder and Novel consoleone ?
Like in subject. I tried install it from Novel homepage, but i have problem with make dependiences and this two package, can anyone make good PKGBUILD for new version ? In AUR i found PKGBUILD's but the mirror doesn't work and i can't find another mirror. Thanks Igor. Have a nice day !
Yes, but i saw many rpm package, and source code. If you talk about license there is oportunity to get free license for 30 or 60 day's. Thanx for respone.
-
Trying to modify Vultureseye PKGBUILD for Vulturesclaw
Ok I've got the PKGBUILD for Vultureseye now I've modified it, now I confess the work is not mine. But I presumed by changing references to nethack to slashem and vultureseye to vulturesclaw, this would work as the PKGBUILD is getting both.
But it seems I'm missing something could someone please point me in the right direction as I'm really not sure what is going on.
pkgname=vulturesclaw
pkgver=2.1.0
pkgrel=1
pkgdesc="An isometric graphics interface to NetHack."
arch=('i686' 'x86_64')
url="http://www.darkarts.co.za/projects/vultures/"
license=('custom')
depends=('sdl_mixer' 'sdl_ttf' 'sdl_image' 'libpng' 'flex' 'bison')
source=(http://usrsrc.org/svn/vultures/releases/$pkgver/vultures-$pkgver-full.tar.bz2)
md5sums=('f448f4fa74f07178683640a3f7985944')
build() {
mkdir -p $startdir/pkg/usr/bin
mkdir -p $startdir/pkg/usr/share/applications
mkdir -p $startdir/pkg/usr/share/icons/hicolor/48x48/apps
mkdir -p $startdir/pkg/usr/share/licenses/custom/$pkgname
mkdir -p $startdir/pkg/usr/share/$pkgname
cd $startdir/src
# tar -jxf vultures-$pkgver-full.tar.bz2?format=raw
cd $startdir/src/vultures-$pkgver/slashem/sys/unix
sh setup.sh
cd $startdir/src/vultures-$pkgver/slashem/include
sed -e '/define HACKDIR/ s|/usr/games/lib/nethackdir|/usr/share/vulturesclaw|' \
-e '/^#define COMPRESS\s/ s|/usr/bin/compress|/bin/gzip|' \
-e '/^#define COMPRESS_EXTENSION/ s|".Z"|".gz"|' \
-e 's|^/\* \(#define DLB\) \*/|\1|' -i config.h
sed -e 's|^/\* \(#define LINUX\) \*/|\1|' \
-e 's|^/\* \(#define TIMED_DELAY\) \*/|\1|' -i unixconf.h
cd $startdir/src/vultures-$pkgver/slashem
sed -e '/^GAMEDIR\s*=/ s|/games/.*$|/share/$(GAME)|' \
-e '/^GAMEUID\s*=/ s|games|root|' \
-e '/^GAMEGRP\s*=/ s|bin|root|' \
-e '/^SHELLDIR\s*=/ s|/games|/bin|' -i Makefile
make || return 1
make PREFIX=$startdir/pkg/usr install
cd $startdir/pkg/usr/bin
sed 's|HACKDIR=/.*/pkg/usr/share/vulturesclaw|HACKDIR=/usr/share/vulturesclaw|' -i vulturesclaw
install -Dm644 $startdir/src/vultures-$pkgver/slashem/dat/license $startdir/pkg/usr/share/licenses/$pkgname/license
install -Dm644 $startdir/src/vultures-$pkgver/dist/linux/vulturesclaw.desktop $startdir/pkg/usr/share/applications/vulturesclaw.desktop
install -Dm644 $startdir/pkg/usr/share/$pkgname/vulturesclaw.png $startdir/pkg/usr/share/icons/hicolor/48x48/apps/vulturesclaw.png
This seems to be bailing out on the 1st or second sed the error I'm getting is
sed: can't read vulturesclaw: No such file or directory
I have to admit the few package builds I've done have been a lot simpler in comparison so I suspect the error is between the chair and the keyboard.
Last edited by FeatherMonkey (2007-11-17 17:46:04)The error is probably from the last sed command :
sed 's|HACKDIR=/.*/pkg/usr/share/vulturesclaw|HACKDIR=/usr/share/vulturesclaw|' -i vulturesclaw
For vultureseye the file that starts the program is called vultureseye , vulturesclaw/slashem may use a different start script.
Check the files in pkg/usr/bin to find the correct name for the start script.
Sidenote :
this line in my vultureseye PKGBUILD is incorrect :
mkdir -p $startdir/pkg/usr/share/licenses/custom/$pkgname
it should be mkdir -p $startdir/pkg/usr/share/licenses/$pkgname -
ABS PKGBUILD for openoffice-base fails
The PKGBUILD for openoffice-base from the ABS tree is failing on my x86_64 system. The compilation finishes successfully, but I start getting errors beginning at the "# install binaries" stage. Here's the first part of the errors that I get. ((NOTE: I've replaced my username in the paths with 'userdir', for paranoia's sake ))
cp: cannot stat `instsetoo_native/unxlngx6.pro/OpenOffice/native/install/en-US/linux-2.6-x86_64/buildroot/*': No such file or directory
PKGBUILD: line 240: cd: /home/userdir/abs/local/openoffice-base/pkg/opt: No such file or directory
mv: cannot stat `openoffice.org2.4': No such file or directory
cp: cannot stat `/home/userdir/abs/local/openoffice-base/pkg/opt/openoffice/share/xdg/*.desktop': No such file or directory
sed: can't read *.desktop: No such file or directory
sed: can't read printeradmin.desktop: No such file or directory
sed: can't read base.desktop: No such file or directory
sed: can't read calc.desktop: No such file or directory
sed: can't read draw.desktop: No such file or directory
sed: can't read impress.desktop: No such file or directory
sed: can't read math.desktop: No such file or directory
sed: can't read writer.desktop: No such file or directory
sed: can't read *.desktop: No such file or directory
The PKGBUILD then moves through the "# install icons" step without problems. After that, the next round of errors begin:
sed: can't read /home/userdir/abs/local/openoffice-base/pkg/usr/share/applications/calc.desktop: No such file or directory
touch: cannot touch `/home/userdir/abs/local/openoffice-base/pkg/opt/openoffice/share/dict/ooo/.directory': No such file or directory
touch: cannot touch `/home/userdir/abs/local/openoffice-base/pkg/opt/openoffice/presets/template/.directory': No such file or directory
touch: cannot touch `/home/userdir/abs/local/openoffice-base/pkg/opt/openoffice/share/extension/install/.directory': No such file or directory
`./libnpsoplugin.so' -> `/opt/openoffice/program/libnpsoplugin.so'
PKGBUILD: line 308: cd: /home/userdir/abs/local/openoffice-base/pkg/opt/openoffice/program/: No such file or directory
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
|*** soffice.orig 2007-10-27 16:40:34.000000000 +0200
|--- soffice 2007-10-27 16:41:14.000000000 +0200
File to patch:
The PKGBUILD stops at this point. I have to Ctrl^C out of it.
When I look in the directories, I see that instsetoo_native/unxlngx6.pro/OpenOffice/native/install/en-US/linux-2.6-x86_64/buildroot/ does not exist. Instead, that path ends at instsetoo_native/unxlngx6.pro/OpenOffice/native/install/en-US/linux-2.6-x86_64/ , where I find a set of 25 openoffice.org-*.deb files. Removing the 'buildroot' part of the path might fix part of the problem, but I'm guessing something else may be going on here besides that.
Any ideas?the mirrors with old packages are listed here:
http://wiki.archlinux.org/index.php/Downgrade_packages
for example on http://ftp.parrswood.manchester.sch.uk/ … linux.org/ there is OO 2.2 -
[solved] new abs PKGBUILD for package kernel26...old kernel?
I was looking into the new PKGBUILD in the /var/abs/core/kernel26 folder, as I wanted to update my custom kernel. I was editing the new PKGBUILD when I saw something weird...references to kernel.org files and archlinux.org patch seems to be same as the 2.6.37 version. Is _basekernel value not updated? Am I wrong?
Take a look:
new PKGBUILD (I copied only relevant lines):
_basekernel=2.6.37
pkgver=${_basekernel}
pkgrel=6
_patchname="patch-${pkgver}-4-ARCH"
source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_basekernel.tar.bz2
ftp://ftp.archlinux.org/other/kernel26/${_patchname}.bz2
now...these is exactly the same as PKGBUILD for 2.6.37. But the new files are:
ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.37.1.tar.bz2
ftp://ftp.archlinux.org/other/kernel26/patch-2.6.37.1-1-ARCH.bz2
If I am right, someone has to update variable values...
TIA
Gemon
Last edited by gemon (2011-02-21 22:17:23)well...I had time to check so...this is the content for the PKGBUILD after I run abs yesterday (pasted only relevant lines):
# $Id: PKGBUILD 109724 2011-02-12 08:01:06Z tpowa $
pkgbase="kernel26"
pkgname=('kernel26' 'kernel26-headers' 'kernel26-docs') # Build stock -ARCH kernel
_kernelname=${pkgname#kernel26}
_basekernel=2.6.37
pkgver=${_basekernel}
pkgrel=6
_patchname="patch-${pkgver}-4-ARCH"
this is the one I run tonight...looks updated now
# $Id: PKGBUILD 110322 2011-02-18 20:13:49Z tpowa $
pkgbase="kernel26"
pkgname=('kernel26' 'kernel26-headers' 'kernel26-docs') # Build stock -ARCH kernel
_kernelname=${pkgname#kernel26}
_basekernel=2.6.37
pkgver=${_basekernel}.1
pkgrel=1
_patchname="patch-${pkgver}-${pkgrel}-ARCH"
now patch filename and kernel sources correctly resolve to the latest ones.
but believe me, right after I had the 2.6.37.1-arch kernel, the abs PKGBUILD was outdated...probably it is updated after kernel package is released. doesn't matter
all in all...now it's ok
Gemon -
Hdf4 and pyhdf AUR PKGBUILDS for review
pyhdf is a Python interface to the HDF4 library. HDF4 is a scientific data file format. pyhdf links to the static libs built by the HDF4 package. I decided to split HDF4 out into its own package because someone else might want to link to these libraries, or use the numerous HDF4 utilities that accompany them. There is an hdf5 package in the AUR already, but hdf5 coexists with hdf4, rather than replacing it.
Here is the HDF4 PKGBUILD:
# Contributor: David Scholl <djscholl>
pkgname=hdf4
pkgver=2r1
pkgrel=1
pkgdesc="General purpose library and file format for storing scientific data."
url="http://hdf.ncsa.uiuc.edu/hdf4.html"
license="custom"
depends=('zlib' 'libjpeg')
makedepends=(gcc-fortran)
source=(ftp://ftp.ncsa.uiuc.edu/HDF/HDF/HDF_Current/src/HDF4.$pkgver.tar.gz ftp://ftp.ncsa.uiuc.edu/HDF/HDF/HDF_Current/src/patches/configure)
md5sums=('9082c6fa913b9188452fa6c5217e1573' '845b0e1a20c0a969fca386b8830236ed')
build() {
cp ./configure $startdir/src/HDF4.$pkgver
cd $startdir/src/HDF4.$pkgver
./configure --prefix=/usr F77=gfortran FFLAGS=-ffixed-line-length-0
make || return 1
make prefix=$startdir/pkg/usr install
mkdir -p $startdir/pkg/usr/share/licenses/hdf4
cp $startdir/src/HDF4.$pkgver/COPYING $startdir/pkg/usr/share/licenses/hdf4
HDF4 was originally built with commercial Fortran 77 compilers, although g77 worked too. Since g77 is gone, I built it with gfortran. I encountered a couple of issues with the "make check" command, which compiles and runs tests of the libraries and utilities. The main package builds without errors using plain gfortran. However, the test code contains lines longer than 72 characters, so I had to add the FFLAGS=-ffixed-line-length-0 option to the configure script to be able to build the tests. When I manually do
cd $startdir/src/HDF4.$pkgver
make check || return 1
all of the tests are built and passed without errors. However, when I put these two lines into the build script, the tests fail as follows:
============================
HDF-SD C interfaces tests
============================
srcdir="." ./hdftest > hdfout.new
make[2]: *** [check] Error 1
make[2]: Leaving directory `/home/dscholl/abs/hdf4check/src/HDF4.2r1/mfhdf/libsrc'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/home/dscholl/abs/hdf4check/src/HDF4.2r1/mfhdf'
make: *** [check-recursive] Error 1
==> ERROR: Build Failed. Aborting...
I would like to include the tests in the build, because it's bad when your data gets mangled. However, I don't know how to get the tests to run in the build script. If anyone has any suggestions I would appreciate them.
HDF4 is released under a license which resembles other Open Source licenses I have read, so I treated it as a custom license. The HDF4 package can be built with an optional compression library called szip, which is not an Open Source product. szip is available under non-commercial and commercial licenses, but prospective commercial users must contact the licensing agent. The AUR doesn't have a way to make that clear to prospective users, so I left out szip.
Here is the PKGBUILD for pyhdf:
# Contributor: David Scholl <djscholl>
pkgname=pyhdf
pkgver=0.7.3
pkgrel=1
pkgdesc="Python bindings for the HDF library."
url="http://pysclint.sourceforge.net/pyhdf/"
license="Python"
depends=('python' 'python-numeric' 'zlib' 'libjpeg')
makedepends=(hdf4)
source=(http://dl.sourceforge.net/pysclint/$pkgname-0.7-3.tar.gz)
md5sums=('f55aa19e61cf6501f436e27783098000')
build() {
cd $startdir/src/$pkgname-0.7-3
sed -i '/#extra_compile_args=["-DNOSZIP"],/s/#//' setup.py
sed -i '/libraries = ["mfhdf", "df", "jpeg", "z", "sz"]/s/libraries/#libraries/' setup.py
sed -i '/#libraries = ["mfhdf", "df", "jpeg", "z"]/s/#//' setup.py
python setup.py install --root=$startdir/pkg
pyhdf assumes the availability of szip by default, so its setup.py must be hacked to build it without szip. I do this with three sed commands, following the instructions in the INSTALL file and the comments in the setup.py. The sourceforge page for pyhdf describes it as being released under the Python license, but there is no copyright file included with the source distribution, nor did I find one on the project website.
If anyone has corrections or improvements to suggest, please post.I have done some further digging into the "make check" issue, but I don't know enough to solve it. I'm hoping someone will be able to figure out a patch or work-around that I can use.
The error message announces leaving the src/HDF4.2r1/mfhdf/libsrc directory. We can find the first part of the error message in the Makefile:
less -N src/HDF4.2r1/mfhdf/libsrc/Makefile
729 check:
730 @echo "============================"
731 @echo "HDF-SD C interfaces tests"
732 @echo "============================"
733 srcdir="$(srcdir)" ./hdftest > hdfout.new
734 @cmd="$(DIFF) hdfout.new $(srcdir)/hdfout.sav";
It appears to me that line 733 bombs when "make check" is run from the build script, and the diff command in 734 doesn't get a chance to run.
The hdfout.new from the build script "make check" ends in
*** UNEXPECTED VALUE from second SDstart is 393216 at line 61 in tsd.c
num_err == 1
The file src/HDF4.2r1/mfhdf/libsrc/hdfout.sav ends in
num_err == 0
less -N src/HDF4.2r1/mfhdf/libsrc/tsd.c
24 #define FILE_NAME "sdtest.hdf" /* data file to test ID types */
59 /* Create a protected file */
60 fid = SDstart(FILE_NAME, DFACC_CREATE);
61 VERIFY(fid, FAIL, "second SDstart");
Running "make check" manually:
$ ls -l sdtest.hdf
--w------- 1 dscholl dscholl 2503 2006-08-13 09:45 sdtest.hdf
Running "make check" from within the build script:
$ ls -l sdtest.hdf
-rw------- 1 dscholl dscholl 2502 2006-08-13 09:48 sdtest.hdf
I'm not a C programmer, but it appears to me that the hdftest binary is trying to create a read-protected --w------- file, and actually creating a -rw------- file. When it tries to read it, it generates an error message and the Makefile stops running. What is different about the build script environment that would cause this difference in file creation?
Maybe you are looking for
-
I need help switching back to iPhoto
In February of this year I switched from iPhoto to Aperture for very specific reasons. My laptop's hard drive was running out of space, as it was housing my photo library that was quickly approaching 25,000 photos and pushing about 30 Gigabytes, and
-
please someone tell me what to do i have no idea where to put in the passcode let alone know what it is! and i need it because i need to sync all my contacts and apps and everything onto this new iphone
-
Why when I print photos from iphoto are they grainy ? They did not used to be.
When I print from Iphoto they are grainy, they did not previously. In other programs they are fine, so it is not the printer,
-
Need help to setup UMS adapter for email polling using BPEL
I am trying to use UMS adapter to read emails from a mailbox. I have followed the link(http://technology.amis.nl/2012/05/18/proces-email-with-the-new-ums-adapter-of-soa-suite-ps5/) to do the setup. But after the BPEL deployment in the logs i am seein
-
I have created my first template in dreaweaver (CS3). The editable region works except for one small problem... I cannot change the style. It will not allow changing any content from H2 tag & Style 2. My original template for this editable region