From bd3a790e6dbee36f3d53b4e8fccef917539fdaa1 Mon Sep 17 00:00:00 2001 From: Stefan Midjich Date: Wed, 20 Nov 2024 16:05:31 +0100 Subject: [PATCH] cambrian --- .github/workflows/build.yml | 40 +++++++++++++++++++++++++++++++++++++ Containerfile | 17 ++++++++++++++++ README.md | 3 +++ 3 files changed, 60 insertions(+) create mode 100644 .github/workflows/build.yml create mode 100644 Containerfile create mode 100644 README.md diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..5c8f877 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,40 @@ + +name: Build +on: + #schedule: + # - cron: "21 21 * * *" + push: + branches: ["main"] + +env: + REGISTRY: ghcr.io + IMAGE_NAME: "fedora-atomic-hyprland" + IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }} + REGISTRY_USER: ${{ github.actor }} + REGISTRY_PASSWORD: ${{ github.token }} + + +jobs: + podman-build: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4.1.1 + + - name: Build container image + uses: redhat-actions/buildah-build@v2.13 + with: + context: "." + containerfiles: Containerfile + image: ${{ env.IMAGE_NAME }} + layers: false + oci: true + + - name: Push to ghcr.io + uses: redhat-actions/push-to-registry@v2.6 + with: + image: ${{ env.IMAGE_NAME }} + tags: "latest" + registry: ${{ env.IMAGE_REGISTRY }} + username: ${{ env.REGISTRY_USER }} + password: ${{ env.REGISTRY_PASSWORD }} diff --git a/Containerfile b/Containerfile new file mode 100644 index 0000000..2a95949 --- /dev/null +++ b/Containerfile @@ -0,0 +1,17 @@ +#FROM quay.io/fedora/fedora-sway-atomic:latest +FROM quay.io/fedora/fedora-coreos:testing + +RUN dnf -y install \ + curl git tmux \ + # Hyprland build dependencies + ninja-build cmake meson gcc-c++ libxcb-devel libX11-devel pixman-devel \ + wayland-protocols-devel cairo-devel pango-devel wayland-devel libdrm-devel \ + libxkbcommon-devel systemd-devel libseat-devel mesa-libEGL-devel \ + libinput-devel xcb-util-wm-devel xorg-x11-server-Xwayland-devel \ + mesa-libgbm-devel xcb-util-renderutil-devel \ + hwdata libdisplay-info-devel libliftoff-devel 'dnf5-command(builddep)' && \ + dnf -y builddep hyprland && \ + pushd /tmp && curl -LO https://github.com/hyprwm/Hyprland/releases/latest/download/source-v0.45.2.tar.gz && \ + tar -xvaf source-v0.45.2.tar.gz && pushd /tmp/hyprland-source && \ + meson _build && ninja -C _build && sudo ninja -C _build install && \ + cp example/hyprland.desktop /usr/share/wayland-sessions/ diff --git a/README.md b/README.md new file mode 100644 index 0000000..2c2ab0c --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# Fedora Atomic Hyprland image + +This is a bootable image of Fedora Atomic Sway with the latest Hyprland Window Manager built and installed.