Skip to content

Commit 9f29a40

Browse files
binarypieclaude
andauthored
feat(image): install zellij from Hypercube COPR (#219)
## What Now that zellij is built and published in the `binarypie/hypercube` COPR, install it from there instead of downloading the upstream static musl binary. - **`build_files/hyprland/01-hyprland-desktop.sh`**: replace the pinned `curl ... | tar` static-binary download with `dnf5 -y install zellij`. The COPR repo is already enabled in `base/01-base-system.sh`. This drops the hardcoded version pin, gains shell completions + proper rpm tracking, and removes a network fetch from the image build. - **`build_files/hypercube/99-tests.sh`**: restore the rpm-based check — add `zellij` to `REQUIRED_PACKAGES` and remove the now-redundant `/usr/bin/zellij` file check (the `/etc/zellij/config.kdl` config check stays). This is the `TODO(#198)` cleanup that the old static-binary block called for. ## Dependency Requires the zellij package to exist in the COPR — done (build succeeded). The packaging itself (spec fix + workflow wiring) is in #218. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent b376e8f commit 9f29a40

2 files changed

Lines changed: 5 additions & 17 deletions

File tree

build_files/hypercube/99-tests.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ REQUIRED_PACKAGES=(
1919
"quickshell"
2020
# Terminals
2121
"ghostty"
22+
"zellij"
2223
# Dev tools
2324
"neovim"
2425
"lazygit"
@@ -48,8 +49,6 @@ REQUIRED_FILES=(
4849
# Config files
4950
"/etc/fish/config.fish"
5051
"/etc/zellij/config.kdl"
51-
# zellij ships as a static binary (not an rpm), so check the file directly
52-
"/usr/bin/zellij"
5352
"/usr/share/hypercube/config/starship/starship.toml"
5453
# Theming
5554
"/usr/share/themes/Tokyonight-Dark/gtk-3.0/gtk.css"

build_files/hyprland/01-hyprland-desktop.sh

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -56,21 +56,10 @@ dnf5 -y install \
5656
### Fish Shell (set as default)
5757
dnf5 -y install fish
5858

59-
### Terminal multiplexer - zellij
60-
# zellij isn't packaged in the ublue/Fedora repos (`dnf install zellij` ->
61-
# "No match"), so install the official static musl binary. The base image is
62-
# amd64-only (no platform matrix in build.yml), so x86_64 is sufficient. Pinned
63-
# for reproducibility. Gives the host the same Ctrl+Space multiplexer keymap
64-
# (installed to /etc/zellij/config.kdl by 03-hypercube-configs.sh) as devcube.
65-
#
66-
# TODO(#198): a COPR spec now exists at packages/zellij/zellij.spec. Once the
67-
# `zellij` package is configured + built in the binarypie/hypercube COPR (already
68-
# enabled in base/01-base-system.sh), replace this block with `dnf5 -y install
69-
# zellij` and move the test in hypercube/99-tests.sh back to REQUIRED_PACKAGES.
70-
ZELLIJ_VERSION=0.44.3
71-
curl -fsSL "https://github.com/zellij-org/zellij/releases/download/v${ZELLIJ_VERSION}/zellij-x86_64-unknown-linux-musl.tar.gz" \
72-
| tar -xz -C /usr/bin zellij
73-
chmod 0755 /usr/bin/zellij
59+
### Terminal multiplexer - zellij (from Hypercube COPR)
60+
# Gives the host the same Ctrl+Space multiplexer keymap (installed to
61+
# /etc/zellij/config.kdl by 03-hypercube-configs.sh) as devcube.
62+
dnf5 -y install zellij
7463

7564
### Terminal - Ghostty (from scottames COPR)
7665
dnf5 -y copr enable scottames/ghostty

0 commit comments

Comments
 (0)