You are not logged in.
Hi all,
I am writing a PKGBUILD for a little wrapper program I wrote. I'd be grateful if someone could review this.
The file builds and installs fine on my system.
# Maintainer: pseudoroot <pseudoroot@protonmail.ch>
pkgname='yt-audio'
pkgver=0.1
pkgrel=1
pkgdesc="youtube-dl wrapper for downloading/managing youtube audio (with added features)."
arch=('any')
url="https://github.com/pseudoroot/yt-audio"
license=('MIT')
depends=('youtube-dl' 'ffmpeg')
makedepends=('python-setuptools')
source=("$url/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz")
md5sums=('13a2535b49555c89a9bab71da5502334')
build() {
cd "$pkgname-$pkgver"
python setup.py build
}
package() {
cd "$pkgname-$pkgver"
python setup.py install --root="$pkgdir" --optimize=1 --skip-build
# Install MIT licence
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
Thank you
Another question -
I have a configuration file for this program. The program by default looks for config file in $XDG_CONFIG_HOME/yt-audio/ directory.
If $XDG_CONFIG_HOME is not set, then $HOME/.config/yt-audio is used.
From my findings, there is no direct way provided by pip to copy config files. So users will have to copy the config file manually (or is there a way that I am missing?)
Would it be fine (or rather ethical) to copy config file when installing program using PKGBUILD?
I played around with PKGBUILD a bit (implementing the same)(code below). It worked fine, but as mentioned here - Packages should not contain '/home' directory.
(I got a directory permission warning as well when installing the program).
So should I copy the config file during installation? And if its fine, how can I achieve the same?
Here is what I wrote in package() function of PKGBUILD to copy config file
package() {
cd "$pkgname-$pkgver"
python setup.py install --root="$pkgdir" --optimize=1 --skip-build
# Install MIT licence
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
# Copy config file
if [ -z $XDG_CONFIG_HOME ]
then
_DIR=$(echo $HOME | cut -c2-)
mkdir -p $pkgdir/$_DIR/.config/yt-audio
cp config.ini $pkgdir/$_DIR/.config/yt-audio
else
_DIR=$(echo $XDG_CONFIG_HOME | cut -c2-)
mkdir -p $pkgdir/$_DIR/.config/yt-audio
cp config.ini $pkgdir/$_DIR/.config/yt-audio
fi
}
This worked fine and config file was copied to appropriate directory (I did, however, got a permission mis-match warning for /home/<user> directory).
Thanks
Offline
Hi all,
I am writing a PKGBUILD for a little wrapper program I wrote. I'd be grateful if someone could review this.
It looks good to me and builds in a clean chroot.
Using the PKGBUILD to install config files in a user's home directory is a no-no if you plan to submit to the AUR. You may leave instructions for the users to copy the configuration to their homes in a `.install` file. Alternatively, since you're upstream, you could modify your program so it copies its config on the first run (or tell users to do so).
For personal use you can do whatever you want with the PKGBUILD.
Offline
Using the PKGBUILD to install config files in a user's home directory is a no-no if you plan to submit to the AUR. You may leave instructions for the users to copy the configuration to their homes in a `.install` file. Alternatively, since you're upstream, you could modify your program so it copies its config on the first run (or tell users to do so).
Thanks. I'll look into adding .install file for config instructions.
Offline