Fork tutorial: `Build Bazzite` job fails on check Just Syntax

Hello =] I am kinda new to the project so I want to keep track and even customize for studying and hobby purposes.

I tried to follow the Fork Your Own image and got stuck on item 3 - after generating credentials with cosign and setting up on repo, I tried to run the job build bazzite and got the following error on Check Just Syntax:


Run ublue-os/just-action@v1
  env:
    IMAGE_REGISTRY: ghcr.io/guizanelato
Run extractions/setup-just@v1
  with:
    github-token: ***
  env:
    IMAGE_REGISTRY: ghcr.io/guizanelato
/usr/bin/tar xz --warning=no-unknown-keyword --overwrite -C /home/runner/work/_temp/b158ced1-9a2f-407e-bbc2-3a8e16d92e5e -f /home/runner/work/_temp/62fdf855-3add-4f72-875f-9b14d7e48b22
Successfully setup just v1.25.2
Run find "./" -type f -name "*.just" | while read -r file; do
  find "./" -type f -name "*.just" | while read -r file; do
    echo "Checking syntax: $file"
    just --unstable --fmt --check -f $file || { exit 1; }
  done
  shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
  env:
    IMAGE_REGISTRY: ghcr.io/guizanelato
Checking syntax: ./system_files/deck/shared/usr/share/ublue-os/just/85-bazzite-image.just
Checking syntax: ./system_files/deck/shared/usr/share/ublue-os/just/90-bazzite-de.just
Checking syntax: ./system_files/desktop/silverblue/usr/share/ublue-os/just/90-bazzite-de.just
Checking syntax: ./system_files/desktop/shared/usr/share/ublue-os/just/82-bazzite-waydroid.just
Checking syntax: ./system_files/desktop/shared/usr/share/ublue-os/just/10-update.just
Checking syntax: ./system_files/desktop/shared/usr/share/ublue-os/just/81-bazzite-fixes.just
Checking syntax: ./system_files/desktop/shared/usr/share/ublue-os/just/83-bazzite-audio.just
Checking syntax: ./system_files/desktop/shared/usr/share/ublue-os/just/85-bazzite-image.just
Checking syntax: ./system_files/desktop/shared/usr/share/ublue-os/just/82-bazzite-apps.just
 # vim: set ft=make :
 
 # Install LACT for overclocking & undervolting AMD GPUs
 install-lact:
     #!/usr/bin/bash
     IMAGE_INFO="/usr/share/ublue-os/image-info.json"
     BASE_IMAGE_NAME=$(jq -r '."base-image-name"' < $IMAGE_INFO)
     ublue-update --wait
     if [[ ${BASE_IMAGE_NAME} == 'silverblue' ]]; then
         echo 'Installing LACT Libadwaita...'
         wget \
           $(curl -s https://api.github.com/repos/ilya-zlobintsev/LACT/releases/latest | \
           jq -r ".assets[] | select(.name | test(\"lact-libadwaita.*fedora-$(rpm -E %fedora)\")) | .browser_download_url") \
           -O /tmp/lact.rpm
     else
error: Formatted justfile differs from original.
         echo 'Installing LACT...'
         wget \
           $(curl -s https://api.github.com/repos/ilya-zlobintsev/LACT/releases/latest | \
           jq -r ".assets[] | select(.name | test(\"lact-[0-9].*fedora-$(rpm -E %fedora)\")) | .browser_download_url") \
           -O /tmp/lact.rpm
     fi
     rpm-ostree install --apply-live -y /tmp/lact.rpm
     sudo systemctl enable --now lactd
     rm /tmp/lact.rpm
     echo 'Complete.'
 
 # Install CoolerControl, a GUI for viewing all your system's sensors and for creating custom fan and pump profiles based on any available temperature sensor28
 install-coolercontrol:
     #!/usr/bin/bash
     ublue-update --wait
     sudo wget https://copr.fedorainfracloud.org/coprs/codifryed/CoolerControl/repo/fedora-$(rpm -E %fedora)/codifryed-CoolerControl-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_codifryed-CoolerControl.repo
     rpm-ostree install --apply-live -y liquidctl coolercontrol
     systemctl enable coolercontrold.service
     mkdir -p $HOME/.config/autostart
     cp /usr/share/applications/org.coolercontrol.CoolerControl.desktop $HOME/.config/autostart/org.coolercontrol.CoolerControl.desktop
     echo 'Complete.'
 
 alias get-steamcmd := install-steamcmd
 
 # Install SteamCMD (https://developer.valvesoftware.com/wiki/SteamCMD)
 install-steamcmd:
     echo 'Installing SteamCMD...'
     wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz -O /tmp/steamcmd.tar.gz
     mkdir -p ~/.steam
     tar -xvzf /tmp/steamcmd.tar.gz -C ~/.steam
     rm /tmp/steamcmd.tar.gz
 
 # Install OpenRazer for Razer gaming hardware
 install-openrazer:
     sudo wget https://download.opensuse.org/repositories/hardware:/razer/Fedora_$(rpm -E %fedora)/hardware:razer.repo -O /etc/yum.repos.d/hardware:razer.repo && \
     ublue-update --wait && \
     rpm-ostree install -y openrazer-meta razergenie && \
     if ! grep -q "plugdev" /etc/group; then \
       sudo bash -c 'grep "plugdev" /lib/group >> /etc/group' \
     ; fi && \
     sudo usermod -a -G plugdev $USER && \
     echo "Please reboot to apply needed changes."
 
 alias get-wootility := install-wootility
 
 # Install Wootility for configuring Wooting Keyboards
 install-wootility:
     #!/usr/bin/bash
     if grep -q 'it.mijorus.gearlever' <<< $(flatpak list); then
       wget "https://api.wooting.io/public/wootility/download?os=linux&branch=lekker" -O $HOME/Downloads/wootility.AppImage
       flatpak run it.mijorus.gearlever $HOME/Downloads/wootility.AppImage
     else
       wget "https://api.wooting.io/public/wootility/download?os=linux&branch=lekker" -O $HOME/Desktop/wootility.AppImage
       chmod +x $HOME/Desktop/wootility.AppImage
     fi
 
 # Install Adwaita-for-Steam theme for CSS Loader (https://github.com/tkashkin/Adwaita-for-Steam)
 install-adwaita-for-steam:
     #!/usr/bin/bash
     if [ -d "$HOME/homebrew/themes" ]; then
         rm -rf "$HOME/homebrew/themes/Adwaita-for-Steam"
         git clone https://github.com/tkashkin/Adwaita-for-Steam.git --single-branch "$HOME/homebrew/themes/Adwaita-for-Steam"
     else
         echo 'Please install Decky Loader by running "ujust setup-decky install" first, then install CSS Loader from the Decky Plugin Store.'
     fi
 
 # Install Oversteer for Logitech steering wheels
 install-oversteer: distrobox-check-fedora
     distrobox enter -n fedora -- bash -c 'sudo dnf copr enable -y kylegospo/oversteer && \
       sudo dnf install -y oversteer && \
       distrobox-export --app oversteer'
 
 # Install Resilio Sync, a file synchronization utility powered by BitTorrent
 install-resilio-sync: distrobox-check-fedora
     distrobox-enter -n fedora -- bash -c 'sudo rpm --import https://linux-packages.resilio.com/resilio-sync/key.asc' && \
     distrobox-enter -n fedora -- bash -c 'sudo wget https://raw.githubusercontent.com/ublue-os/bazzite/main/post_install_files/resilio_sync/resilio-sync.repo -O /etc/yum.repos.d/resilio-sync.repo' && \
     distrobox-enter -n fedora -- bash -c 'sudo dnf install -y resilio-sync' && \
     mkdir -p ~/.config/systemd/user/ && \
     rm -f ~/.config/systemd/user/fedora-resilio-sync.service && \
     wget https://raw.githubusercontent.com/ublue-os/bazzite/main/post_install_files/resilio_sync/fedora-resilio-sync.service -O ~/.config/systemd/user/fedora-resilio-sync.service && \
     systemctl --user daemon-reload && \
     systemctl enable --user --now fedora-resilio-sync.service
 
 # Install scrcpy, a utility that mirrors Android devices (video and audio) connected via USB or over TCP/IP
 install-scrcpy: distrobox-check-fedora
     distrobox enter -n fedora -- bash -c 'sudo dnf copr enable -y zeno/scrcpy && \
       sudo dnf install -y scrcpy && \
       distrobox-export --app scrcpy'
 
 # Install OpenTabletDriver, an open source, cross-platform, user-mode tablet driver
 install-opentabletdriver:
     #!/usr/bin/bash
     source /usr/lib/ujust/ujust.sh
     if grep -qvz "arch" <<< $(distrobox list); then \
       Assemble noconfirmcreate "" "arch"; \
     fi && \
     distrobox enter -n arch -- bash -c 'paru -S opentabletdriver --noconfirm' && \
     mkdir -p ~/.config/systemd/user/ && \
     rm -f ~/.config/systemd/user/arch-opentabletdriver.service && \
     wget https://raw.githubusercontent.com/ublue-os/bazzite/main/post_install_files/OpenTabletDriver/opentabletdriver.service -O ~/.config/systemd/user/arch-opentabletdriver.service && \
     systemctl --user daemon-reload && \
     systemctl enable --user --now arch-opentabletdriver.service && \
     distrobox enter -n arch -- bash -c 'distrobox-export --app otd-gui'
 
 # This installs ollama, a way to run various open LLMs locally on the CPU or GPU
 install-ollama:
     #!/usr/bin/env bash
     echo 'Follow the prompts and check the tutorial: '
     echo
     GPU_CHOICES=()
     # Detect nvidia drivers
     if which nvidia-smi > /dev/null 2>&1; then
         GPU_CHOICES+=("Nvidia (CUDA)")
     fi
     # Detect radeon hardware
     if lspci | grep ' VGA ' | grep -sq Radeon; then
         GPU_CHOICES+=("AMD (ROCm)")
     fi
     GPU_SELECTION=$(printf '%s\n' "${GPU_CHOICES[@]}" | gum choose --select-if-one --header "Select the type of graphics card you have")
     echo "Selected ${GPU_SELECTION}!"
     case "$GPU_SELECTION" in
         "Nvidia (CUDA)")
             IMAGE=latest
             CUSTOM_ARGS="AddDevice=nvidia.com/gpu=all"
             ;;
- 
+
         "AMD (ROCm)")
             IMAGE=rocm
             read -r -d '' CUSTOM_ARGS <<-'EOF'
     AddDevice=/dev/dri
     AddDevice=/dev/kfd
     EOF
             ;;
     esac
- 
+
     read -r -d '' QUADLET <<-EOF
     [Unit]
     Description=The Ollama container
     After=local-fs.target
- 
+
     [Service]
     Restart=always
     TimeoutStartSec=60
     # Ensure there's a userland podman.sock
     ExecStartPre=/bin/systemctl --user enable podman.socket
     # Ensure that the dir exists
     ExecStartPre=-mkdir -p %h/.ollama
- 
+
     [Container]
     ContainerName=ollama
     PublishPort=11434:11434
     RemapUsers=keep-id
     RunInit=yes
     NoNewPrivileges=no
     Volume=%h/.ollama:/.ollama
     PodmanArgs=--userns=keep-id
     PodmanArgs=--group-add=keep-groups
     PodmanArgs=--ulimit=host
     PodmanArgs=--security-opt=label=disable
     PodmanArgs=--cgroupns=host
- 
+
     Image=docker.io/ollama/ollama:${IMAGE}
     ${CUSTOM_ARGS}
- 
+
     [Install]
     RequiredBy=default.target
     EOF
     if [  ! -f ~/.config/containers/systemd/ollama.container ]; then
         mkdir -p ~/.config/containers/systemd
         echo "${QUADLET}" > ~/.config/containers/systemd/ollama.container
     else
         echo "Ollama container already exists, skipping..."
     fi
     systemctl --user daemon-reload
     systemctl --user start ollama.service
     echo "Please install the ollama cli via \`brew install ollama\`"
     echo "If you do not have brew yet, please install it via \`ujust install-brew\`"
 
 # Create fedora distrobox if it doesn't exist
 [private]
 distrobox-check-fedora:
     #!/bin/env bash
     source /usr/lib/ujust/ujust.sh
     if grep -qvz "fedora" <<< $(distrobox list); then
       echo "Setting up Fedora distrobox"
       Assemble noconfirmcreate "" "fedora"
     fi
Error: Process completed with exit code 1.

Could anyone help me? thanks in advance.

Hi @guilherme.zanelato,

Depending on what your goal is, you may have an easier time using our image-template rather than doing a fork. A fork is better for if you are making large structural changes to Bazzite.

If you are just trying to make modifications, the image template would be a better choice.

Here is an example of what I did with my own custom Bazzite which is roughly based off the image-template: isengard

Hope that helps!