Hyprland/.github/workflows/release.yaml
2022-06-22 22:04:55 +02:00

51 lines
2 KiB
YAML

name: Release
on:
push:
tags:
- "v*.*.*"
jobs:
meson-rl:
name: "Build and release Hyprland with Meson (Arch)"
runs-on: ubuntu-latest
container:
image: archlinux
steps:
- name: Download dependencies
run: |
sed -i 's/SigLevel = Required DatabaseOptional/SigLevel = Optional TrustAll/' /etc/pacman.conf
pacman --noconfirm --noprogressbar -Syyu
pacman --noconfirm --noprogressbar -Sy glslang libepoxy libfontenc libxcvt libxfont2 libxkbfile vulkan-headers vulkan-validation-layers xcb-util-errors xcb-util-renderutil xcb-util-wm xorg-fonts-encodings xorg-server-common xorg-setxkbmap xorg-xkbcomp xorg-xwayland git go clang lld libc++ pkgconf meson ninja wayland wayland-protocols libinput libxkbcommon pixman glm libdrm libglvnd cairo pango systemd scdoc base-devel seatd
- name: Checkout Hyprland
uses: actions/checkout@v3
with:
submodules: true
- name: Configure
run: |
meson obj-x86_64-pc-linux-gnu \
-Ddefault_library=static
- name: Compile
run: ninja -C obj-x86_64-pc-linux-gnu
- name: Build wlroots
run: |
sed -i '$ d' ./Makefile
make config
- name: Compress and package artifacts
run: |
mkdir x86_64-pc-linux-gnu
mkdir release-files
mkdir release-files/example
mkdir release-files/assets
DESTDIR=$PWD/x86_64-pc-linux-gnu meson install -C obj-x86_64-pc-linux-gnu --tags runtime
cp ./LICENSE release-files/
cp subprojects/wlroots/build/libwlroots.so.11032 release-files/
cp x86_64-pc-linux-gnu/usr/local/bin/* release-files/
cp -r example/ release-files/
cp -r assets/ release-files/
tar -cvf Hyprland.tar.xz -C release-files
- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: Hyprland.tar.xz