|
…
|
||
|---|---|---|
| .. | ||
| 001_hyprwayland-scanner.sh | ||
| 003_hyprutils.sh | ||
| 005_hyprlang.sh | ||
| 007_hyprcursor.sh | ||
| 020_hyprland-hyprdots.sh | ||
| 020_hyprland-protocols.sh | ||
| 020_hyprland.sh | ||
| README.md | ||
README.md
Hyprland for debian
Here we have a number of scripts to build the dependencies for hyprland tiling wayland compositor.
Our goal is to have a 'debian' way to build these packages using gitbuildpackage to update from upstream, apply patches in a patch queue branch and output debian packages which can be added to the gitea package repo using the automate/utils helper scripts.
NB. We have a working example from salsa in /space/code_repositories/hyprland/ that successfully built the 0.36 and upgraded to 0.39.1 using these watch files which were missing from the salsa hyperland and hyperlang repos:
conf_print_debian-watch_hyprland() {
cat <<-'EOF'
version=4
opts=filenamemangle=s/.+\/v?(\d\S*)\.tar\.gz/hyprland-$1\.tar\.gz/ \
https://github.com/hyprwm/hyprland/tags .*/v?(\d\S*)\.tar\.gz
EOF
}
# conf_print_debian-watch_hyprland | sudo tee debian/watch
This is now included in the salsa hyperlang repo:
conf_print_debian-watch_hyprlang() {
cat <<-'EOF' | tee debian/watch
version=4
opts=filenamemangle=s/.+\/v?(\d\S*)\.tar\.gz/hyprlang-$1\.tar\.gz/ \
https://github.com/hyprwm/hyprlang/tags .*/v?(\d\S*)\.tar\.gz
EOF
}
# conf_print_debian-watch_hyprlang | sudo tee debian/watch
From phind:
version=4
opts="searchmode=html, filenamemangle=s/.+\/v?(\d+\.\d+)\.tar\.gz/hyprland-protocols-$1.tar.gz/"
https://github.com/hyprwm/hyprland-protocols/tags .*/v?(\d+\.\d+)\.tar\.gz
From salsa repo:
version=4
opts="searchmode=html" \
https://github.com/hyprwm/hyprland-protocols/tags \
https://github.com/hyprwm/hyprland-protocols/archive/refs/tags/v(\d+)\.(\d+).tar\.gz
This did not work for 0.4.0 or 0.4.1
resulting packages
the hyprland build provides:
- hyprland
- hyprland-common
- hyprland-completitions (locally added)
- hyprland-dev
the hyperlang build provides:
- hyprlang
- libhyprlang-dev
- libhyprlang2
dpkg -i libudis86-0_0+20221013-1_amd64.deb dpkg -i udcli_0+20221013-1_amd64.deb dpkg -i hyprwayland-scanner_0.3.10-1_amd64.deb dpkg -i libhyprlang2_0.5.2-1_amd64.deb dpkg -i libhyprcursor0_0.1.9-1_amd64.deb dpkg -i libhyprutils0_0.1.5-1_amd64.deb dpkg -i hyprcursor-util_0.1.9-1_amd64.deb dpkg -i hyprland-protocols_0.3.0-1_all.deb dpkg -i hyprland_0.41.2+ds-1_amd64.deb dpkg -i hyprland-backgrounds_0.41.2+ds-1_all.deb dpkg -i hyprpaper_0.7.0-1_amd64.deb so far we have manually updated these from the debian source directory with uscan command from the devscripts package:
conf_print_debian-watch_hyprland | sudo tee debian/watch
uscan --no-download --verbose
uscan
while dquilt push; do dquilt refresh; done
dch
UPSTREAM_VERSION="0.3.0"
LOCAL_VERSION="1"
gbp import-orig --uscan
gbp pqapply
gbp dch -N ${UPSTREAM_VERSION}-${LOCAL_VERSION} -R
git add .
git commit -m "Update debian/changelog for version ${UPSTREAM_VERSION)-${LOCAL_VERSION}"
build sequence for build from git
NB these scripts only build a debianized upstream git packages, better to fix the salsa packages.
-
hyprwayland-scanner - available in debian unstable
001_hyprwayland-scanner.sh hyprwayland-scanner - A Hyprland implementation of wayland-scanner, in and for C++.
-
hyprutils available in debian
003_hyprutils.sh hyprutils - Hyprutils is a small C++ library for utilities used across the Hypr* ecosystem.
-
hyprlang available in debian
005_hyprlang.sh hyprlang - The official implementation library for the hypr config language.
-
hypcursor available in debian
007_hyprcursor.sh hyprcursor - The hyprland cursor format, library and utilities.
-
hyprland-protocols - available in debian unstable
010_hyprland-protocols.sh hyprland-protocols - Wayland protocol extensions for Hyprland
-
hyprland available in debian
020_hyprland.sh Hyprland - Hyprland is a highly customizable dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
And a bonus - dot files to configure a pretty hypr (not working yet):
-
hyprpaper - wallpaper utility for Hyprland with the ability to dynamically change wallpapers through sockets.
-
hyprdots
025_hyprland-hyprdots.sh hyprland dotfiles to be converted from arch.