-
Notifications
You must be signed in to change notification settings - Fork 1
113 lines (96 loc) · 4.04 KB
/
build-release.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
name: "Build release"
on:
push:
branches: main
tags: v*.*.*
pull_request:
branches: main
permissions:
contents: write
jobs:
build:
runs-on: ubuntu-latest
name: nix build
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Nix
uses: cachix/install-nix-action@v27
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Build a release
run: nix build .#_ci.release
- name: Create a ZIP package
id: zip
run: |
ref="${{github.ref_name}}"
ref="${ref//\//.}"
echo "::debug::Git ref resolved to slashless '$ref'"
release="grubshin-bootpact-$ref"
cp -rL result "$release"
echo "::debug::Created a dereferenced release directory '$release'"
artefact="grubshin-bootpact-$ref.zip"
zip -r "$artefact" "$release"
echo "::debug::Generated release artefact '$artefact'"
echo "artefact=$artefact" >> "$GITHUB_OUTPUT"
echo "::debug::Release artefacts saved to step outputs"
- name: Create Release
id: create_release
uses: softprops/action-gh-release@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
name: ${{ github.ref_name }} Release
tag_name: ${{ github.ref_name }}
draft: ${{ !startsWith(github.ref, 'refs/tags/') }}
discussion_category_name: announcements
generate_release_notes: true
fail_on_unmatched_files: true
files: |
${{ steps.zip.outputs.artefact }}
body: |
# Version ${{ github.ref_name }} Released!
<p align="center">
View the large images at
<a href="https://github.com/max-ishere/grubshin-bootpact/blob/${{ github.sha }}/SHOWCASE.md#screenshots">
SHOWCASE.md
</a>
</p>
<table>
<tr>
<th>
<img src="https://github.com/max-ishere/grubshin-bootpact/blob/${{ github.sha }}/screenshots/teleport-night-720.png"/>
</th><th>
<img src="https://github.com/max-ishere/grubshin-bootpact/blob/${{ github.sha }}/screenshots/teleport-day-720.png" />
</th>
</tr><tr>
<th>
<img src="https://github.com/max-ishere/grubshin-bootpact/blob/${{ github.sha }}/screenshots/teleport-abyss-720.png" />
</th><th>
<img src="https://github.com/max-ishere/grubshin-bootpact/blob/${{ github.sha }}/screenshots/classic-night-720.png" />
</th>
</tr><tr>
<th>
<img src="https://github.com/max-ishere/grubshin-bootpact/blob/${{ github.sha }}/screenshots/classic-day-720.png" />
</th><th>
<img src="https://github.com/max-ishere/grubshin-bootpact/blob/${{ github.sha }}/screenshots/classic-abyss-720.png" />
</th>
</tr>
</table>
## Installation
Here is the TLDR of the installation instructions ([Full instuctions](https://github.com/max-ishere/grubshin-bootpact/blob/${{ github.sha }}/INSTALLATION.md)):
- Download the release zip (`${{ steps.zip.outputs.artefact }}`). It contains all the variants of the theme.
- Unzip and copy the variant you like to `/boot/grub/themes/grubshin-bootpact`.
> [!IMPORTANT]
> Make sure that after the theme is copied `theme.txt` is in
> `/boot/grub/themes/grubshin-bootpact/theme.txt`. Otherwise GRUB will not be able to find it.
- Add this to `/etc/default/grub`:
```
GRUB_THEME="/boot/grub/themes/grubshin-bootpact/theme.txt"
```
If its your first time installing see the full instructions using the link above.
> [!TIP]
> You can install multiple variants of the theme but only 1 can be active. Select the variant by
> changing the `GRUB_THEME` variable in `/etc/default/grub`
## Release notes
View the detailed release notes in the linked discussion (Join Discussion button below).