[SOLVED] help with PKGBUILD-svn

I am able to build a python-based package from svn using bash, but am having a problem writing the PKGBUILD.  The bash commands are as follows:
svn co http://svn.berlios.de/svnroot/repos/wsjt/branches/wspr
cd wspr
export PYTHON="/usr/bin/python2"
export F2PY="/usr/bin/python2 f2py.py"
./configure --enable-gfortran --prefix=/usr
make
and this works fine.  Following the ABS PKGBUILD-svn.proto template, I came up with the following PKGBUILD:
pkgname=wspr-svn
pkgver=1
pkgrel=1
pkgdesc="Weak Signal Propagation Reporter"
arch=('any')
url="http://physics.princeton.edu/pulsar/K1JT/wsjt.html"
license=('GPL')
optdepends=('g95')
depends=('python2' 'python-imaging' 'python2-numpy' 'libsamplerate' 'portaudio' 'fftw')
makedepends=('subversion')
_svntrunk="http://svn.berlios.de/svnroot/repos/wsjt/branches/wspr"
_svnmod="wspr"
build() {
export PYTHON="/usr/bin/python2"
export F2PY="/usr/bin/python2 f2py.py"
cd "$srcdir"
if [ -d $_svnmod/.svn ]; then
(cd $_svnmod && svn up -r $pkgver)
else
svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod
fi
msg "SVN checkout done or server timeout"
msg "Starting make..."
rm -rf "$srcdir/$_svnmod-build"
cp -r "$srcdir/$_svnmod" "$srcdir/$_svnmod-build"
cd "$srcdir/$_svnmod-build"
./configure --prefix=/usr --enable-gfortran
make
but get stuck with the following error:
Found executable /usr/bin/gfortran
error: unknown file type '' (from '-Wl,--hash-style=gnu')
make: *** [WsprMod/w.so] Error 1
Aborting...
I've been googling for hours, but feel like I might be getting in over my head.  I suspect I'm missing something trivial since everything is in place for a successful build.
Last edited by sportscliche (2011-03-14 11:03:38)

Thanks for the fast reply Snowman.  You had the right idea.  Although your suggested edit did not work, the following line did:
unset LDFLAGS
I got this from the discussion here:
https://bbs.archlinux.org/viewtopic.php?pid=668971
(Note: in that thread there is an alternative approach suggested by Ranguvar:
export LDFLAGS="${LDFLAGS//-Wl,--as-needed}"
export LDFLAGS="${LDFLAGS//,--as-needed}"
export LDFLAGS="${LDFLAGS//--as-needed}"
which did not work for me.) 
The PKGBUILD concludes with:
package() {
cd "$srcdir/$_svnmod-build"
sudo make DESTDIR="$pkgdir/" install
This runs makepkg -s to completion although I get a warning about a reference to $srcdir.  Performing pacman -U on the tarball installs python files in /usr/lib/python2.7/site-packages/WsprMod and adds wspr.py in /usr/bin/.  Launching the program with python2 wspr.py leads to an immediate segmentation fault.  After the manual build, all the files were in the same directory.  I tried moving everything into the same python directory and still got the seg fault.
When I built manually, I did not have to do a sudo make install.  If I leave out this step in PKGBUILD, however, setup.py does not run and the package doesn't install anything.  So I tried this instead
package() {
cd "$srcdir/$_svnmod-build"
python2 setup.py install --root=$pkgdir/ --optimize=1
which aborts makepkg because of file conflicts.
Can anyone see what I'm doing wrong?

Similar Messages

  • [SOLVED] Help with updating conky-colors PKGBUILD

    I'm looking to update my PKGBUILD for https://aur.archlinux.org/packages/conky-colors/ to support the latest version.  After getting annoyed with DeviantArt replacing the zips of the package when it is updated upstream, I've decided to pull in specific commits from the git repo instead.  I'm trying to use the ...#commit= option on the source line.  It seems to be building ok but I'm getting the following errors:
    /usr/bin/makepkg: eval: line 2225: unexpected EOF while looking for matching `"'
    /usr/bin/makepkg: eval: line 2226: syntax error: unexpected end of file
    Can anyone give any help as to what may be the cause here.  If i remove the #commit it goes away.  I need to clean up the depends section to remove those that are no longer needed, but I can do that easy enough.
    # Maintainer: Android_808 <android underscore 808 at hotmail dot com>
    # Contributor: Pauline123 <321eniluap at gmail dot com>
    # Contributor: Shanto <shanto at hotmail>
    # Contributor: Piotr Rogoża <rogoza dot piotr at gmail dot com>
    pkgname=conky-colors
    _pkgname=conky_colors
    pkgver=9.0
    pkgrel=1
    pkgdesc="An easier way to configure Conky."
    arch=('i686' 'x86_64')
    url="http://gnome-look.org/content/show.php/CONKY-colors?content=92328"
    license=('GPL')
    depends=('pystatgrab' 'ttf-liberation' 'hddtemp' 'curl' 'lm_sensors' 'conky' 'ttf-droid' 'ttf-ubuntu-font-family' 'ttf-ms-fonts')
    makedepends=('perl' 'git')
    optdepends=('conky-lua')
    conflicts=('ttf-openlogos' 'ttf-weather')
    options="!strip"
    install=$pkgname.install
    source=("$pkgname::git+https://github.com/helmuthdu/conky_colors.git#commit=f4b530a94d5f3f73d4c21c4417c51b6011a71b28")
    md5sums=('SKIP')
    build() {
    cd "$srcdir/conky-colors"
    make
    package() {
    cd "$srcdir/conky-colors"
    mkdir -p ${pkgdir}/usr/share
    mkdir -p ${pkgdir}/usr/share/fonts
    mkdir -p ${pkgdir}/usr/bin
    cp -v conky-colors ${pkgdir}/usr/bin
    cp -v -r conkycolors ${pkgdir}/usr/share
    #cp -v -r fonts ${pkgdir}/usr/share/conkycolors
    cp -v -r fonts/conkycolors ${pkgdir}/usr/share/fonts/TTF
    ln -fs /usr/share/conkycolors/bin/conkyTask ${pkgdir}/usr/bin/ct
    #ln -fs /usr/share/conkycolors/fonts/conkycolors ${pkgdir}/usr/share/fonts/
    chmod +x ${pkgdir}/usr/share/conkycolors/scripts/*
    chmod +x ${pkgdir}/usr/share/conkycolors/bin/*
    chmod -R 755 ${pkgdir}/usr/share/conkycolors/
    Last edited by android_808 (2013-11-11 19:33:06)

    I didn't post the install earlier because I've never had an issue with it, been using the same file for several releases of several custom built packages.  The eval: lines posted appear before "Making package: conky-colors 9.0-1 (Mon 11 Nov 18:58:03 GMT 2013)" but doesn't prevent it from building.  Just don't get what's causing them.
    Install files "s have matching end ", brackets have brackets. namcap PKGBUILD gave no error.
    PKGBUILD ' has matching '
                     " has matching "
                     ( has matching )

  • [Solved]Help with printer

    Hi!
    I`m really frustrated... I never thought that installing printer can be such a paint in the rear...
    Ok, now back to the point:
    I`m trying to set up my Deskjet 930c on 32 bit Arch through usb. I did everything that Wiki says: installed
    cups ghostscript gsfonts hplip and net-snmp
    I loaded the module
    modprobe usblp
    and i see the  that the printer is connected alright
    [andy@andy ~]$ dmesg
    usb 6-1: new full speed USB device using uhci_hcd and address 3
    usb 6-1: configuration #1 chosen from 1 choice
    usblp1: USB Bidirectional printer dev 3 if 0 alt 1 proto 2 vid 0x03F0 pid 0x1204
    I added the cups and usblp to rc.conf to make sure it is being loaded on startup. I rebooted, and then opened http://localhost:631 in firefox. It allows me to setup the printer, but when it comes to printing the test page, adding users or removing printers i get a Firefox message:
    Port Restricted for Security Reasons
    This address uses a network port which is normally used for purposes other than Web browsing. Firefox has canceled the request for your protection.
    The requested address specified a port (e.g. "mozilla.org:80" for port 80 on mozilla.org) normally used for purposes other than Web browsing. The browser has canceled the request for your protection and security.
    When i run gnome-cups-manager i see an error in terminal:
    ** (gnome-cups-manager:13143): WARNING **: IPP request failed with status 1030
    , and when trying to print a test page i get an error:
    Ready: /usr/lib/cups/filter/foomatic-rip-hplip failed
    So i`ve ran
    hp-setup
    and setup my printer. I can than print a test page.
    But when it comes to printing by a usual user, the "print" button in all applications is grayed out/inactive.
    Also hp-toolbox is segfaulting all the time...
    Also, running a system-config-printer says:
    There was an error during the CUPS operation: 'server-error-service-unavailable'.
    The funny thing is... The only way to print something is to print it to a .pdf file first, and than printing that file.
    Any help, please?...
    Last edited by K0tuk (2009-05-02 11:19:12)

    skottish wrote:
    Do you mean this message screen?
    http://bbs.archlinux.org/viewtopic.php?id=70775
    If that thread doesn't solve your problem, then there are a bunch more CUPS threads that are less than two weeks old that will.
    omg! huge thanks, that completely solved my problem... i wasn`t actually concentrating on the firefox error, more on the cups errors that followed... thanks again!

  • [SOLVED] Help with dual monitors (second monitor won't wake up)

    Hi.  I'm trying to set up dual monitors, but I can't seem to get it to work. 
    I've got an ASUS P8H67-M EVO motherboard, and I'm using the xf86-video-intel driver.  I'm using one VGA and one HDMI.
    xrandr gives this
    xrandr
    Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 32767 x 32767
    VGA1 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 474mm x 296mm
    1680x1050 60.0*+ 74.9
    1600x1000 60.0
    1280x1024 75.0 72.0 60.0
    1440x900 75.0 59.9
    1152x864 75.0
    1024x768 75.1 70.1 60.0
    800x600 72.2 75.0 60.3
    640x480 72.8 75.0 66.7 60.0
    720x400 70.1
    HDMI1 disconnected (normal left inverted right x axis y axis)
    DP1 disconnected (normal left inverted right x axis y axis)
    HDMI2 disconnected (normal left inverted right x axis y axis)
    HDMI3 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 531mm x 299mm
    1920x1080 60.0*+ 50.0 60.0
    1920x1080i 50.0 60.1
    1680x1050 59.9
    1600x900 60.0
    1280x1024 75.0 60.0
    1280x960 60.0
    1152x864 75.0
    1280x720 50.0 60.0
    1152x720 60.0
    1440x576i 50.1
    1024x768 75.1 60.0
    1440x480i 60.1
    832x624 74.6
    800x600 75.0 60.3
    720x576 50.0
    720x480 59.9
    640x480 75.0 60.0 59.9
    720x400 70.1
    DP2 disconnected (normal left inverted right x axis y axis)
    DP3 disconnected (normal left inverted right x axis y axis)
    So it looks to me like both displays are being detected.  The geometry looks such that one display is on top of the other, but I can change that using an xorg.conf.d config file (e.g. https://wiki.archlinux.org/index.php/Mu … xorg.conf).  I also tried using arandr.
    The real problem is that the display on HDMI3 just isn't "waking up".  The power is on, but it just sits there in sleep mode.
    Any help would be great.  I might just be missing something simple.  Thanks.
    Edit:  I just saw a short list of window managers near the bottom of the Arch Multihead page (https://wiki.archlinux.org/index.php/Mu … _xorg.conf).  I don't see openbox on that list.  Does that mean I'm SOL if I want to use openbox with multiple monitors?  This page seems to imply that it should work fine with openbox http://magnatecha.com/dual-monitors-wit … nd-xrandr/.
    Last edited by Pacopag (2013-08-19 18:58:36)

    I use XFCE, and when I boot my computer I just run:
    xrandr --output DVI-I-1 --auto --output DVI-I-2 --auto --left-of DVI-I-1
    I'm assuming if you modify the names appropriately that it'll work too.  I have had issues before trying to run dual monitors without taking both outputs off of a single video card (which is what I'm doing now).  For example, I had a graphics card with one (VGA) output and a VGA output on my motherboard.  But, connecting the graphics card disabled the on-board VGA.  So it is possible (I'm not an expert here) that two displays coming off the motherboard may not work for hardware reasons.

  • [SOLVED] Error with PKGBUILD for package hash-identifier

    Hi,
    I tried to install the package hash-identifier.
    While running makepkg -s, there is an error:
    ==> ERROR: PKGBUILD contains CRLF characters and cannot be sourced.
    I guess this is due to the New Line character at line 17 of the PKGBUILD:
    sed -e 's|
    ||g' -i Hash_ID_v${pkgver}.py
    So I remove it, but then I get this other error and I don't know what to do with it:
    ==> Extracting sources...
    ==> Starting prepare()...
    sed: -e expression #1, char 0: no previous regular expression
    ==> ERROR: A failure occurred in prepare().
    Aborting...
    Last edited by PâtéDeCerf (2015-03-11 08:18:34)

    Thanks for your reply. I'm not familiar with package build syntax nor python, so I don't understand everything you wrote.
    It would be good if you could explain more clearly though.
    By applying the change you propose, I was able to build the package and install it.
    NB: To run the program, type from the command-line :
    $ hash-id
    ...and not simply "hash-identifier"
    Last edited by PâtéDeCerf (2015-03-11 08:21:10)

  • [SOLVED] Help with a simple script

    Hi guys! A problem is connected with switching cpu governors. Usually I set it by commands and made alias in .bashrc:
    sudo cpufreq-set -c 0 -g performance && sudo cpufreq-set -c 1 -g performance
    sudo cpufreq-set -c 0 -g ondemand && sudo cpufreq-set -c 1 -g ondemand
    sudo cpufreq-set -c 0 -g powersave && sudo cpufreq-set -c 1 -g powersave
    Could you help me with script which can read system information about current cpu governor and switches the next governor
    Last edited by noMaster (2012-01-27 06:36:55)

    noMaster wrote:
    JuseBox wrote:Can you please be more specific with what you are trying to accomplish?
    I need that script for set it on hotkey and change cpu states. Unfortunately I havent scripting experience
    I make one thing but it doesnt work for me
    ### Toggle Super Hybrid Engine ##################################
    she_names=("performance" "ondemand" "powersave")
    she_value_performance=( "0" "performance")
    she_value_ondemand=( "1" "ondemand")
    she_value_powersave=( "2" "powersave")
    # Find current
    she_current=`cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor`
    if [[ "${she_current}" == "${she_value_performance[0]}" ]]; then
    she_next=${she_value_ondemand[0]}
    elif [[ "${she_current}" == "${she_value_ondeman[1]}" ]]; then
    she_next=${she_value_powersave[0]}
    elif [[ "${she_current}" == "${she_value_powersave[1]}" ]]; then
    she_next=${she_value_performance[0]}
    fi
    function she_toggle() {
    if [[ "${she_names[${she_current}]}" != "${she_names[${she_next}]}" ]]; then
    cmd="/usr/bin/notify-send -t 5000 SHE changed"
    echo ${she_next} > ${she_current}
    else
    cmd="/usr/bin/notify-send -t 5000 SHE original"
    fi
    case $1 in
    # "debug")
    # print_debug
    "powersave")
    she_next=2
    she_toggle
    "normal")
    she_next=1
    she_toggle
    "performance")
    she_next=0
    she_toggle
    she_toggle
    esac
    ### End of file #################################################
    I am looking over the script. Without it, do you think you could explain what your trying to accomplish? What states and when should they toggle? Something rough to get an idea? I think if I am thinking correctly this could be easier then it seems. I will help ya.

  • [SOLVED]Help with sudoers file?

    I haveing alot of trouble with my sudoers file. I would like to run the utility rkhunter as a cron job. But it must be run as root. So i wont to give myself the privledge to use it without a passwd. But when i us the line "%wheel ALL=(ALL) NOPASSWD: /usr/bin/rkhunter" it does not work. Out of curiosity i put the ALL parameter and that did not work either o,0 Either something has gone very wrong or Im in need of a lesson in sudo'ing. Can someone help? btw i looked at tutorials on the web and from what i can see im doing everything right. and before you suggest i checked that rkhunter is in /usr/bin/. here is my sudoers file.
    EDIT: removed the comment in the first line i did not have that there when i ran it.
    # sudoers file.
    # This file MUST be edited with the 'visudo' command as root.
    # Failure to use 'visudo' may result in syntax or file permission errors
    # that prevent sudo from running.
    # See the sudoers man page for the details on how to write a sudoers file.
    # Host alias specification
    # User alias specification
    # Cmnd alias specification
    # Defaults specification
    # Runas alias specification
    # User privilege specification
    root ALL=(ALL) ALL
    generic ALL=(ALL) ALL
    # Uncomment to allow people in group wheel to run all commands
    # %wheel ALL=(ALL) ALL
    # Same thing without a password
    #%wheel ALL=(ALL) NOPASSWD: ALL
    # Samples
    # %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom
    # %users localhost=/sbin/shutdown -h now
    Last edited by generic_ (2009-06-11 13:38:41)

    rkhunter is not is /usr/sbin i checked specifically for that before i tried doing it in sudo. Its output is
    bash:/usr/bin/rkhunter: Permission Denied
    I tried your suggestion xyne with no luck. I double checked and im in the wheel group. The problem is, it is important I see the output the of rkhunter, if i didn't it would be pointless, and annoying to check the log. Also rkhunter has breaks in its output that require me to press enter to continue. So it will never finish if i dont see it. My plan is to have pop up in a terminal in front of me do its job, finish, and thats it. I was thinking I can use a simple shell script with the command. "urxvt -e rkhunter -c" Then run that shell script as a cron job. Can I get the results I want in the root crontab? Im also new to cron as well. Ive been using linux for while and I have little experience with both of these programs. Its time to learn them.
    Thanks for your effort so though,
    Last edited by generic_ (2009-06-11 11:35:41)

  • Help with PKGBUILD

    trying to install lcdproc, and gnome global menu, and i get the same error for both of them.
    [mark@markspc lcdproc]$ makepkg
    ==> ERROR: lcdproc is not available for the '' architecture.
    Note that many packages may need a line added to their PKGBUILD
    such as arch=('').
    [mark@markspc lcdproc]$
    here is the PKGBUILD for lcdproc
    # Contributor: Bernhard Walle <[email protected]>
    pkgname=lcdproc
    pkgver=0.5.2
    pkgrel=0
    pkgdesc="LCDproc is a utility to drive one or more LCD (and LCD-like) devices attached to a host."
    url="http://lcdproc.omnipotent.net/"
    license="GPL"
    depends=(libusb serdisplib libftdi autoconf automake lirc libnxml libmrss pkgconfig)
    backup=(etc/LCDd.conf)
    arch=('x86_64')
    source=(http://switch.dl.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz
    lcdd
    lcdproc-add-serdisplib
    md5sums=('860f192d061d87dda6512b11b79daac2'
    '56f52dcccd6e129a9cf84cd1a0452d56'
    '274322642740ad323c43ec5d324519d4')
    build() {
    cd $startdir/src/$pkgname-$pkgver
    patch -p1 < ../lcdproc-add-serdisplib
    autoreconf
    ./configure --prefix=/usr --sysconfdir=/etc --enable-libusb --enable-lcdproc-menus --enable-stat-smbfs --enable-drivers=all
    make
    make DESTDIR=$startdir/pkg install
    sed -e "s/server\/drivers\//\/usr\/lib\/lcdproc\//g" LCDd.conf > $startdir/pkg/etc/LCDd.conf
    mkdir -p $startdir/pkg/etc/rc.d
    install -m 755 $startdir/src/lcdd $startdir/pkg/etc/rc.d
    as you can see it has the arch set. and i dont know what to do now.
    I am running 64bit.
    this is driving me MAD, what do i do now?
    thanks Markp1989
    Last edited by markp1989 (2009-02-12 18:03:59)

    here is my makepkg.conf
    # /etc/makepkg.conf
    # SOURCE ACQUISITION
    #-- The download utilities that makepkg should use to acquire sources
    # Format: 'protocol::agent'
    DLAGENTS=('ftp::/usr/bin/wget -c --passive-ftp -t 3 --waitretry=3 -O %o %u'
    'http::/usr/bin/wget -c -t 3 --waitretry=3 -O %o %u'
    'https::/usr/bin/wget -c -t 3 --waitretry=3 --no-check-certificate -O %o %u'
    'rsync::/usr/bin/rsync -z %u %o'
    'scp::/usr/bin/scp -C %u %o')
    # Other common tools:
    # /usr/bin/snarf
    # /usr/bin/lftpget -c
    # /usr/bin/curl
    # ARCHITECTURE, COMPILE FLAGS
    #CHOST="x86_64-pc-linux-gnu"
    #CFLAGS="-march=nocona -O2 -pipe"
    #CXXFLAGS="${CFLAGS}"
    CHOST="x86_64-pc-linux-gnu"
    CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer"
    CXXFLAGS="${CFLAGS}"
    #-- Exclusive: will only run on -march=x86-64
    # -march (or -mcpu) builds exclusively for an architecture
    # -mtune optimizes for an architecture, but builds for whole processor family
    CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe"
    CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe"
    #-- Make Flags: change this for DistCC/SMP systems
    #MAKEFLAGS="-j2"
    # BUILD ENVIRONMENT
    # Defaults: BUILDENV=(fakeroot !distcc color !ccache !xdelta)
    # A negated environment option will do the opposite of the comments below.
    #-- fakeroot: Allow building packages as a non-root user
    #-- distcc: Use the Distributed C/C++/ObjC compiler
    #-- color: Colorize output messages
    #-- ccache: Use ccache to cache compilation
    #-- xdelta: Generate delta patch from previous to current package
    BUILDENV=(fakeroot !distcc color !ccache !xdelta)
    #-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
    #-- specify a space-delimited list of hosts running in the DistCC cluster.
    #DISTCC_HOSTS=""
    # GLOBAL PACKAGE OPTIONS
    # These are default values for the options=() settings
    # Default: OPTIONS=(strip docs libtool emptydirs zipman)
    # A negated option will do the opposite of the comments below.
    #-- strip: Strip symbols from binaries/libraries
    #-- docs: Save doc and info directories
    #-- libtool: Leave libtool (.la) files in packages
    #-- emptydirs: Leave empty directories in packages
    #-- zipman: Compress manpages with gzip
    OPTIONS=(strip docs libtool emptydirs zipman)
    #-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
    INTEGRITY_CHECK=(md5)
    #-- Info and doc directories to remove (if option set correctly above)
    DOC_DIRS=(usr/{,share/}{info,doc,gtk-doc} opt/*/{info,doc,gtk-doc})
    #-- Directories to be searched for the strip option (if option set correctly above)
    STRIP_DIRS=(bin lib sbin usr/{bin,lib,sbin,local/{bin,lib,sbin}} opt/*/{bin,lib,sbin})
    # PACKAGE OUTPUT
    # Default: put built package and cached source in build directory
    #-- Destination: specify a fixed directory where all packages will be placed
    #PKGDEST=/home/packages
    #-- Source cache: specify a fixed directory where source files will be cached
    #SRCDEST=/home/sources
    #-- Packager: name/email of the person or organization building packages
    #PACKAGER="John Doe <[email protected]>"
    # BUILDSCRIPT/EXTENSION DEFAULTS
    # WARNING: Do NOT modify these variables unless you know what you are
    # doing.
    BUILDSCRIPT='PKGBUILD'
    PKGEXT='.pkg.tar.gz'
    SRCEXT='.src.tar.gz'
    DB_COMPRESSION='gz'
    DB_CHECKSUMS=(md5)
    # vim: set ft=sh ts=2 sw=2 et:

  • Help with PKGBUILD for PyCharm Professional

    All,
    I recently took over this package as it was not being maintained regularly. I'm new to this, so I updated the obvious fields so everyone could get the most up to date PyCharm Professional out there.  I have received some feedback, but wanted to submit the PKGBUILD here for suggestions to incorporate.
    Here is the file in pastebin:  http://pastebin.com/sJiAHAcZ

    Scimmia wrote:
    You don't need the || return 1s at all.
    Just put the .desktop file in the source array instead of echoing it in the PKGBUILD.
    When installing a single file with install -D, you don't need to create the dir first.
    Use cp -a instead of cp -R
    Quote all paths that use $srcdir or $pkgdir, you don't know if they might contain a space
    That link created in the last line won't work, you need the leading slash on /opt.
    That's a cursory reading, I'm sure I missed something.
    Thank you, I will spend some time on these items this afternoon/evening. I appreciate the feedback, gives me a chance to learn more.

  • [SOLVED] Help with systemd .service script

    Hello,
    I have been using ArchLinux (ARM version) on some “plug computers” for over a year and love it.  Recently I forced myself to move to systemd by upgrading all my computers from scratch.  I migrated all my applications and learned new ways of doing things but am having trouble with one last migration.  I run a c++ communication program that monitors a TCP port for traffic.  In the past I started this program (daemon) from an entry in rc.conf.  I have read all I can about systemd’s new approach to starting daemons (https://wiki.archlinux.org/index.php/Systemd and https://wiki.archlinux.org/index.php/Systemd/Services)
    So far I created what I thought is the correct systemd .service file listed below.
    [Unit]
    Description=EQBCS
    After=network.target
    [Service]
    Type=simple
    ExecStart=/home/public/EQBCS/eqbcs -p 12947 -d &> /dev/null
    [Install]
    WantedBy=multi-user.target
    I put this file in /usr/lib/systemd/system/eqbcs.service.  I then ran the following commands in the following order:
    systemctl daemon-reload
    systemctl enable eqbcs.service (created a link in /etc/systemd/system/multi-user.target.wants)
    systemctl start eqbcs.service
    Here is output from systemctl (status)
    eqbcs.service                                 loaded failed failed    EQBCS
    I thought this would start the service but no luck.  I also thought maybe a reboot would work but no luck.  I verified I can start the daemon manually if I run /home/public/EQBCS/eqbcs -p 12947 -d &> /dev/null from the command line.
    I think I am close, but after several hours of looking at examples of .service files and other posts, I am at a loss.  I am not one of those types who posts a question without taking the time to read the wealth of information on these boards, but I am truly out of ideas and can’t figure out what to do next.  I sincerely could use some help/advice.
    Last edited by calzon65 (2013-06-01 21:18:20)

    Thank you for the suggestions, I believe I am getting closer to success. When I run systemctl start eqbcs.servcie it starts the service but the only way I can get out of systemctl is to ^c out.
    Here is my current .service file:
    [Unit]
    Description=EQBCS
    After=network.target
    [Service]
    ExecStart=/home/public/EQBCS/eqbcs -p 12947
    Type=forking
    [Install]
    WantedBy=multi-user.target
    Output from systemctl status eqbcs:
    eqbcs.service - EQBCS
       Loaded: loaded (/etc/systemd/system/eqbcs.service; enabled)
       Active: failed (Result: timeout) since Sat 2013-06-01 12:48:43 PDT; 2min 11s ago
      Process: 427 ExecStart=/home/public/EQBCS/eqbcs -p 12947 (code=killed, signal=TERM)
    Main PID: 396 (code=killed, signal=KILL)
       CGroup: name=systemd:/system/eqbcs.service
    Jun 01 12:47:13 alarm systemd[1]: Starting EQBCS...
    Jun 01 12:47:13 alarm eqbcs[427]: WARNING: Running as root NOT recommended.
    Jun 01 12:47:13 alarm eqbcs[427]: EQ Box Chat Server 10.12.18
    Jun 01 12:47:13 alarm eqbcs[427]: Waiting for connections on port: 12947...
    Jun 01 12:48:43 alarm systemd[1]: eqbcs.service operation timed out. Terminating.
    Jun 01 12:48:43 alarm systemd[1]: Failed to start EQBCS.
    Jun 01 12:48:43 alarm systemd[1]: Unit eqbcs.service entered failed state.
    Are there any other suggestions for settings in my .service file?

  • [SOLVED] Help with GPG

    Goodmorning everyone! I want to export my GPG public keys, but I need to know how to do it in my situation:
    I have only one secret key like this
    Name Surname <[email protected]>
    In this key I have more subkeys:
    Name Surname <[email protected]
    Nickname <[email protected]
    Nickname <[email protected]
    Name Surname <[email protected]>
    My question is: how can I export all this (secret and public) keys? I need to export only the main key to export them all, or I need to export them one by one? If the latter, how can I select one key from another if they have the same username or the same email?
    The wiki wasn't helpful, and so the GPG manual...
    Last edited by Delcaran (2012-03-22 15:01:51)

    Your subkeys will be exported along with the main key.
    gpg -a -o output.asc --export [email protected]
    (-a enables ASCII output, -o output.asc sets output.asc as your output file.)

  • [solved]Help with USB install...

    Well, my dual boot attempt went disastrously wrong and destroyed my Windows partition..... So I figured I'll just go ahead and install Arch.
    I have the i686-core.img file downloaded, formatted a 1gb drive as FAT, then used the flashnul method as described in the wiki to transfer over the img. When I boot from the drive on my laptop all I see is "GRUB" with no option to do anything else... Help?
    Last edited by Atreides (2009-12-13 00:00:34)

    ->md5 matches up
    I just tried again using the flashnul method, still nothing but "GRUB". I only have access to a Windows machine at the moment so I won't be able to do it from within linux. I'm not entirely sure what is going on the 2 links, I really have zero experience with this stuff
    I had kind of hoped the usb boot would be straightforward, I was able to do it to install Windows

  • [solved] Help with simple bash script

    #!/bin/bash
    current_state=cat /home/phil/.screen_state
    if ["$current_state" = "laptop"];
    then
    disper -S
    echo TV > .screen_state
    else
    disper -s
    echo laptop > .screen_state
    fi
    [phil@pwned ~]$ ./screenswitch.sh
    ./screenswitch.sh: line 3: /home/phil/.screen_state: Permission denied
    ./screenswitch.sh: line 5: [: missing `]'
    [phil@pwned ~]$ cat /home/phil/.screen_state
    laptop
    [phil@pwned ~]$
    I'm not sure why I'm getting the permission denied, and also I can't see whats wrong with line 5.
    Last edited by Dethredic (2011-08-21 19:46:57)

    IIRC you need spaces
    if [ "foo" = "foo" ]; then
    between '[' and another character.
    Edit: Got it.
    current_state=cat /home/phil/.screen_state
    This is plain wrong. I get 'Permission denied' too.
    Try
    current_state=$(cat /home/phil/.screen_state)
    Last edited by karol (2011-08-21 17:59:16)

  • 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 *

  • [Solved] Help with ABS

    New to Arch,
    I'm trying to wrap my head around abs and aur.  I understand having to make the files, but I'm not sure where to put the url's for the mirrors I want to DL from, such as github, I read the guide and put them in the files and it kept saying they were invalid.  It's confusing me alot. I understand this is probably a dumb question but if someone could point me to the correct information I would greatly appreciate it.  The guides I found didn't get me through it.
    EDIT:  I reread the wiki and the man pages, I was following a guide I found which got me more and more confused, from now on I'll ensure the hostname is archlinux.org before following a guide so closely
    Last edited by cshenkan (2013-11-10 03:46:22)

    cshenkan wrote:Thanks alot, sorry if I come off as another lazy jerk who just wants the answers without putting in the work.  I'm new to a linux distro that doesn't hold your hand, the wiki sure helps alot but my google searches seem to be counter-productive if an archlinux.org page doesn't come up in the top ten. (though it usually does)
    Hey, welcome.  You will fit in here just fine
    No one holds a grudge.  If you don't do your homework, someone will make it clear.  And, it does not just happen to newbies.  Even as a moderator, I still am sometimes humbled by by peers for not having done my own research.

Maybe you are looking for

  • I can't sync my mobile with laptop, and dialogue on android device gets stuck. Is this a bug?

    I use my Ee PC notebook as the "main device" and have successfully synced with my other laptop. When I try to sync with Android Phone however, I don't get a 3 x 4 digit code that I should enter in the dialogue pop-up on the main device. My Android al

  • Apple tv is no longer connected to Home Sharing

    I have home sharing running on my Windows 7 PC with two Apple TV's.  One of them is on version 4.4.3 the other is on verison 4.4.4.  The apple TV with the latest version is no longer seeing my Home Share, yet the apple TV with the older software is. 

  • Claim processing - Financial processing

    I am working on claim processing and know about it as below 1. Create Claim 2. Plan cost to it manually or by using costing variant 3. Assign the vendor/contractor as a partner 3. Approve the claim I understood that there is one BADI, which if activa

  • Writing methods within JSP that have HTML

    Hi! I'm programming a jsp that has a script method which iterates a vector retrived from the session and buid a menu with links. The HTML code interrupts the script <% script... %> <a href= ... <% more script... %> I'm getting the error: scriptlet cl

  • Security Issues with Flash Player 9

    I created a swf embedded on a web document and hosted on our local server. I have no problem previewing and playing it on flash player 10 but whenever I attempted to play the same swf in flash player 9 I'm getting a popup security warning. I went ahe