diff --git a/.forgejo/workflows/bibata.yml b/.forgejo/workflows/bibata.yml new file mode 100644 index 0000000..fe87f51 --- /dev/null +++ b/.forgejo/workflows/bibata.yml @@ -0,0 +1,37 @@ +name: Build and publish bibata-cursor-theme + +# Bibata is AUR-only (not in Arch's official repos), so BOS maintains an +# in-house PKGBUILD and publishes the built package to the [breadway] repo. +# It's the prebuilt -bin variant, so no build deps beyond base-devel. +on: + push: + paths: + - 'packaging/bibata/**' + workflow_dispatch: + +jobs: + bibata: + runs-on: [self-hosted, hestia] + container: + image: archlinux:latest + steps: + - name: Build and publish + env: + PUBLISH_TOKEN: ${{ secrets.REGISTRY_TOKEN }} + run: | + set -euo pipefail + pacman -Syu --noconfirm base-devel git + useradd -m builder + git config --global --add safe.directory '*' + # Clone the branch that triggered this run (not the default branch), + # so the package can be built/published from a feature branch. + git clone --depth 1 --branch "${GITHUB_REF_NAME}" \ + "https://git.breadway.dev/${GITHUB_REPOSITORY}.git" /home/builder/src + chown -R builder:builder /home/builder/src + su builder -c "cd /home/builder/src/packaging/bibata && makepkg -f --noconfirm --nocheck" + PKG=$(find /home/builder/src/packaging/bibata -name '*.pkg.tar.zst' | head -1) + curl -fsS -X PUT \ + -H "Authorization: token ${PUBLISH_TOKEN}" \ + -H "Content-Type: application/octet-stream" \ + --data-binary "@${PKG}" \ + "https://git.breadway.dev/api/packages/Breadway/arch/os" diff --git a/iso/airootfs/etc/skel/.config/gtk-3.0/settings.ini b/iso/airootfs/etc/skel/.config/gtk-3.0/settings.ini index b0bff85..0902c5e 100644 --- a/iso/airootfs/etc/skel/.config/gtk-3.0/settings.ini +++ b/iso/airootfs/etc/skel/.config/gtk-3.0/settings.ini @@ -2,6 +2,5 @@ gtk-application-prefer-dark-theme=1 gtk-theme-name=Adwaita-dark gtk-icon-theme-name=Papirus-Dark -gtk-cursor-theme-name=Bibata-Modern-Ice gtk-cursor-theme-size=24 gtk-font-name=Noto Sans 11 diff --git a/iso/airootfs/etc/skel/.config/gtk-4.0/settings.ini b/iso/airootfs/etc/skel/.config/gtk-4.0/settings.ini index b0bff85..0902c5e 100644 --- a/iso/airootfs/etc/skel/.config/gtk-4.0/settings.ini +++ b/iso/airootfs/etc/skel/.config/gtk-4.0/settings.ini @@ -2,6 +2,5 @@ gtk-application-prefer-dark-theme=1 gtk-theme-name=Adwaita-dark gtk-icon-theme-name=Papirus-Dark -gtk-cursor-theme-name=Bibata-Modern-Ice gtk-cursor-theme-size=24 gtk-font-name=Noto Sans 11 diff --git a/iso/airootfs/etc/skel/.config/hypr/hyprland.lua b/iso/airootfs/etc/skel/.config/hypr/hyprland.lua index c1833aa..e5cd27c 100644 --- a/iso/airootfs/etc/skel/.config/hypr/hyprland.lua +++ b/iso/airootfs/etc/skel/.config/hypr/hyprland.lua @@ -62,7 +62,6 @@ hl.config({ -- --------------------------------------------------------------------------- hl.env("XCURSOR_SIZE", "24") hl.env("HYPRCURSOR_SIZE", "24") -hl.env("XCURSOR_THEME", "Bibata-Modern-Ice") hl.env("MOZ_ENABLE_WAYLAND", "1") hl.env("QT_QPA_PLATFORM", "wayland;xcb") hl.env("QT_QPA_PLATFORMTHEME", "qt5ct") @@ -156,7 +155,6 @@ hl.on("hyprland.start", function() "gsettings set org.gnome.desktop.interface color-scheme prefer-dark", "gsettings set org.gnome.desktop.interface gtk-theme Adwaita-dark", "gsettings set org.gnome.desktop.interface icon-theme Papirus-Dark", - "gsettings set org.gnome.desktop.interface cursor-theme Bibata-Modern-Ice", "gsettings set org.gnome.desktop.interface cursor-size 24", -- Clipboard history daemon (feeds SUPER+V history picker via wl-paste). "wl-paste --type text --watch cliphist store", diff --git a/iso/packages.x86_64 b/iso/packages.x86_64 index 20aa6a0..ec32e2b 100644 --- a/iso/packages.x86_64 +++ b/iso/packages.x86_64 @@ -207,9 +207,6 @@ reflector # Papirus-Dark: cohesive icon set used as the BOS default (set via gsettings in # hyprland.lua autostart and in skel gtk-3.0/settings.ini). papirus-icon-theme -# Bibata-Modern-Ice: clean dark cursor theme set via XCURSOR_THEME env in -# hyprland.lua and in skel gtk-3.0/settings.ini. -bibata-cursor-theme # Qt dark theme — makes Qt5/Qt6 apps (VLC, pavucontrol, etc.) respect the dark # palette. qt5ct/qt6ct are configured via skel to use Fusion style in dark mode; diff --git a/packaging/bibata/PKGBUILD b/packaging/bibata/PKGBUILD new file mode 100644 index 0000000..b49e382 --- /dev/null +++ b/packaging/bibata/PKGBUILD @@ -0,0 +1,22 @@ +# BOS in-house rebuild of bibata-cursor-theme-bin (AUR-only upstream). +# Bibata is the BOS default cursor theme; the AUR package is republished to the +# [breadway] repo so the ISO build can pull it via pacman (same pattern as +# zen-browser-bin and calamares). Prebuilt release tarball — no build step. +# Upstream maintainer: Mark Wagie +pkgname=bibata-cursor-theme-bin +pkgver=2.0.7 +pkgrel=1 +pkgdesc="Material Based Cursor Theme" +arch=('any') +url="https://github.com/ful1e5/Bibata_Cursor" +license=('GPL-3.0-or-later') +provides=("${pkgname%-bin}") +conflicts=("${pkgname%-bin}") +options=('!strip') +source=("${pkgname%-bin}-$pkgver.tar.xz::$url/releases/download/v$pkgver/Bibata.tar.xz") +sha256sums=('172e33c4ae415278384dcecc7d1a9b7a024266bc944bc751fd86532be1cc6251') + +package() { + install -d "$pkgdir/usr/share/icons" + cp -r Bibata* "$pkgdir/usr/share/icons" +}