You are not logged in.
Hidamari is a video wallpaper for Linux. It is written in python.
Here's the PKGBUILD:
# Maintainer: Ali Rohman <lymth@proton.me>
pkgname=hidamari-git
pkgver=3.0.beta4.r0.ga1b752c
_pkgver=3.0-beta4
pkgrel=1
pkgdesc='Video wallpaper for Linux. Written in Python.'
arch=('x86_64')
url='https://github.com/jeffshee/hidamari'
license=('GPL3')
depends=('python-gobject' 'python-pillow' 'python-pydbus' 'python-vlc' 'yt-dlp' 'ffmpeg' 'vlc' 'libx11' 'gnome-desktop-4' 'python-requests' 'libwnck3' 'mesa-utils' 'vdpauinfo' 'libappindicator-gtk3' 'xdg-user-dirs' 'webkit2gtk')
makedepends=('git' 'meson')
provides=("${pkgname%-git}")
source=("git+https://github.com/jeffshee/hidamari.git#tag=v${_pkgver}")
sha256sums=('SKIP')
pkgver() {
cd "$srcdir/${pkgname%-git}"
git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
cd "$srcdir/${pkgname%-git}"
meson setup build
}
build() {
arch-meson "${pkgname%-git}" build
}
package() {
meson install -C build --destdir "$pkgdir"
}
Any suggestions are welcome :)
Last edited by laymoth (2023-02-19 23:46:40)
Offline
A -git package doesn't build from a tag. Either build from HEAD or make it a release package.
Offline
There's no need for a prepare() function. See Meson package guidelines:
build() {
arch-meson "${pkgname%-git}" build
meson compile -C build
}
Offline
A -git package doesn't build from a tag. Either build from HEAD or make it a release package.
Thanks! I will change the package name to hidamari.
Offline
There's no need for a prepare() function. See Meson package guidelines:
build() { arch-meson "${pkgname%-git}" build meson compile -C build }
Is this correct?
# Maintainer: Ali Rohman <lymth@proton.me>
pkgname=hidamari
pkgver=3.0.beta4
_pkgver=3.0-beta4
pkgrel=1
pkgdesc='Video wallpaper for Linux. Written in Python.'
arch=('x86_64')
url='https://github.com/jeffshee/hidamari'
license=('GPL3')
depends=('python-gobject' 'python-pillow' 'python-pydbus' 'python-vlc' 'yt-dlp' 'ffmpeg' 'vlc' 'libx11' 'gnome-desktop-4' 'python-requests' 'libwnck3' 'mesa-utils' 'vdpauinfo' 'libappindicator-gtk3' 'xdg-user-dirs' 'webkit2gtk')
makedepends=('git' 'meson')
provides=("hidamari")
source=("git+https://github.com/jeffshee/hidamari.git#tag=v${_pkgver}")
sha256sums=('SKIP')
build() {
arch-meson "${pkgname}" build
meson compile -C build
}
package() {
meson install -C build --destdir "$pkgdir"
}
Last edited by laymoth (2023-02-19 23:46:57)
Offline
provides=("hidamari")
All packages provide $pkgname making the provides line redundant.
Offline
provides=("hidamari")
All packages provide $pkgname making the provides line redundant.
Thanks for the information.
# Maintainer: Ali Rohman <lymth@proton.me>
pkgname=hidamari
pkgver=3.0.beta4
_pkgver=3.0-beta4
pkgrel=1
pkgdesc='Video wallpaper for Linux. Written in Python.'
arch=('x86_64')
url='https://github.com/jeffshee/hidamari'
license=('GPL3')
depends=('python-gobject' 'python-pillow' 'python-pydbus' 'python-vlc' 'yt-dlp' 'ffmpeg' 'vlc' 'libx11' 'gnome-desktop-4' 'python-requests' 'libwnck3' 'mesa-utils' 'vdpauinfo' 'libappindicator-gtk3' 'xdg-user-dirs' 'webkit2gtk')
makedepends=('git' 'meson')
source=("git+https://github.com/jeffshee/hidamari.git#tag=v${_pkgver}")
sha256sums=('SKIP')
build() {
arch-meson "${pkgname}" build
meson compile -C build
}
package() {
meson install -C build --destdir "$pkgdir"
}
Any other suggestion?
Last edited by laymoth (2023-02-19 23:46:26)
Offline
depends=('python-gobject' 'python-pillow' 'python-pydbus' 'python-vlc' 'yt-dlp' 'ffmpeg' 'vlc' 'libx11' 'gnome-desktop-4' 'python-requests' 'libwnck3' 'mesa-utils' 'vdpauinfo' 'libappindicator-gtk3' 'xdg-user-dirs' 'webkit2gtk')
Those dependencies look weird, why does a wallpaper program require a youtube downloader, mesa-utils and vdpauinfo ?
The addtion of gnome-desktop-4 suggests it uses gtk4 , but why would it then also need a gtk3 utility ?
How did you determine the deps ?
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
depends=('python-gobject' 'python-pillow' 'python-pydbus' 'python-vlc' 'yt-dlp' 'ffmpeg' 'vlc' 'libx11' 'gnome-desktop-4' 'python-requests' 'libwnck3' 'mesa-utils' 'vdpauinfo' 'libappindicator-gtk3' 'xdg-user-dirs' 'webkit2gtk')
Those dependencies look weird, why does a wallpaper program require a youtube downloader, mesa-utils and vdpauinfo ?
The addtion of gnome-desktop-4 suggests it uses gtk4 , but why would it then also need a gtk3 utility ?How did you determine the deps ?
I took the reference from:
https://github.com/jeffshee/hidamari/bl … amari.spec
https://github.com/jeffshee/hidamari/is … 1241902990
https://github.com/jeffshee/hidamari/is … 1242068001
https://github.com/jeffshee/hidamari/is … 1242077254
Offline
It now makes a bit more sense.
Archlinux doesn't have a concept of 'weak depedencies' , but optional depeendencies may come close.
Fortunately there's a good method to determine what's needed on archlinux : build in a clean chroot without deps to see where things go wrong and add the needed ones.Working on it now.
Added:
There doesn't appear to be any elf binaries in the package, so it should be arch=('any') instead of x86_64.
Minimum needed to build succesfully and satisfy external dependencies
depends=('python-gobject' 'python-pillow' 'python-pydbus' 'python-vlc' 'yt-dlp' 'dconf' 'python-requests')
makedepends=('git' 'meson' 'gtk-update-icon-cache' 'desktop-file-utils')
vlc & ffmpeg are pulled in by python-vlc so don't need to be mentioned explicitly.
runtime tests made clear libwnck3, libappindicator-gtk3, webkit2gtk, gnome-desktop-4 and mesa-utils are hard dependencies.
A missing vdpauinfo results in a warning, so should be an optdepend .
Last edited by Lone_Wolf (2022-09-27 18:44:59)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline