77
88env :
99 REPO_NAME : qcom
10- BUILD_DIR : ${{ github.workspace }}/ build
11- REPO_DIR : ${{ github.workspace }}/ repo
10+ BUILD_DIR : build
11+ REPO_DIR : repo
1212
1313jobs :
1414 build-packages :
@@ -23,21 +23,20 @@ jobs:
2323 ' q6voiced' ,
2424 ' soc-qcom-sdm845' ,
2525 ' persistent-mac' ,
26- ' linux-firmware' ,
26+ # 'linux-firmware',
2727 ' qbootctl' ,
2828 ' bootmac' ,
2929 ' alsa-ucm-oneplus' ,
3030 ' device-oneplus-fajita' ,
3131 ' device-lenovo-q706f' ,
3232 ' mkbootimg' ,
33- ' linux-firmware-lenovo-sm8250' ,
34- ' linux-sdm845' ,
35- ' linux-sm8250' ,
33+ # 'linux-firmware-lenovo-sm8250',
34+ # 'linux-sdm845',
35+ # 'linux-sm8250',
3636 ' sensors/iio-sensor-proxy' ,
3737 ' sensors/hexagonrpcd' ,
3838 ' sensors/libssc' ,
39- ' tinyalsa-git' ,
40- ' chromium'
39+ ' tinyalsa-git'
4140 ]
4241
4342 steps :
@@ -86,31 +85,21 @@ jobs:
8685 cp ./* /home/alarm/
8786 ${{ env.BUILD_ALARM_SH }} '(makepkg --cleanbuild --syncdeps --noconfirm)'
8887
89- - name : Sign package
90- working-directory : ${{ github.workspace }}/${{ matrix.package }}
91- run : |
92- ${{ env.BUILD_ALARM_SH }} '
93- for pkg in /home/alarm/*.pkg.tar.*; do
94- [[ -f "$pkg" ]] || continue
95- echo "Signing $pkg ..."
96- gpg --batch --yes --pinentry-mode loopback \
97- --passphrase ${{ secrets.GPG_PASSPHRASE }}\
98- --detach-sign --no-armor "$pkg"
99- done'
100-
10188 - name : Upload artifacts
10289 uses : actions/upload-artifact@v4
10390 with :
10491 name : ${{ env.RELEASE }}-pkg
10592 path : |
10693 /home/alarm/*.pkg.tar.*
107- /home/alarm/*.sig
10894
10995 create-repository :
11096 name : Create Repository
11197 runs-on : ubuntu-22.04-arm
11298 needs : build-packages
11399 container : danhunsaker/archlinuxarm
100+ env :
101+ BUILD_ALARM_SH : ' sudo su - alarm -c'
102+
114103 steps :
115104 - name : Download all artifacts
116105 uses : actions/download-artifact@v4
@@ -120,22 +109,43 @@ jobs:
120109 - name : Setup repository directory
121110 run : |
122111 mkdir -p ${{ env.REPO_DIR }}
123- pacman -Syyu --noconfirm --ask=4 arch-install-scripts cloud-guest-utils sudo binutils fakeroot base-devel git bc distcc ccache libqmi protobuf-c glib2
124- find ${{ env.BUILD_DIR }} -name '*.pkg.tar.*' -exec cp {} ${{ env.REPO_DIR }} \;
125- find ${{ env.BUILD_DIR }} -name '*.sig' -exec cp {} ${{ env.REPO_DIR }} \;
126-
112+ pacman -Syyu --noconfirm --ask=4 arch-install-scripts cloud-guest-utils sudo binutils fakeroot base-devel git bc distcc
113+ useradd -m alarm
114+ passwd -d alarm
115+ usermod -aG wheel alarm
116+ echo 'alarm ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
117+ mkdir /home/alarm/ -p
118+ chown alarm /home/alarm/
119+ find ./ -mindepth 2 -name '*.pkg.tar.*' -exec cp {} ${{ env.REPO_DIR }} \;
120+ - name : Setup GPG
121+ run : |
122+ # Import the GPG private key
123+ ${{ env.BUILD_ALARM_SH }} 'echo "${{ secrets.GPG_PRIVATE_KEY }}" | gpg --import --passphrase "${{ secrets.GPG_PASSPHRASE }}" --pinentry-mode loopback'
124+ # Configure the GPG agent to use the passphrase
125+ ${{ env.BUILD_ALARM_SH }} 'echo "default-cache-ttl 18000" > ~/.gnupg/gpg-agent.conf'
126+ ${{ env.BUILD_ALARM_SH }} 'echo "max-cache-ttl 18000" >> ~/.gnupg/gpg-agent.conf'
127+ ${{ env.BUILD_ALARM_SH }} 'gpgconf --reload gpg-agent'
128+ - name : Sign package
129+ run : |
130+ cp ${{ env.REPO_DIR }}/* /home/alarm/ -r
131+ chown -R alarm:alarm /home/alarm/*
132+ ${{ env.BUILD_ALARM_SH }} '
133+ for pkg in /home/alarm/*.pkg.tar.*; do
134+ [[ -f "$pkg" ]] || continue
135+ echo "Signing $pkg ..."
136+ gpg --batch --yes --pinentry-mode loopback \
137+ --passphrase ${{ secrets.GPG_PASSPHRASE }}\
138+ --detach-sign --no-armor "$pkg"
139+ done'
127140 - name : Generate repository database
128- working-directory : ${{ env.REPO_DIR }}
129141 run : |
130- repo-add -s -v ${{ env.REPO_NAME }}.db.tar.gz *.pkg.tar.zst
131- ln -s ${{ env.REPO_NAME }}.db.tar.gz ${{ env.REPO_NAME }}.db
132- ln -s ${{ env.REPO_NAME }}.files.tar.gz ${{ env.REPO_NAME }}.files
142+ ${{ env.BUILD_ALARM_SH }} 'repo-add -s -v -n ${{ env.REPO_NAME }}.db.tar.xz *.pkg.tar.xz'
133143
134144 - name : Upload repository
135145 uses : actions/upload-artifact@v4
136146 with :
137147 name : ${{ env.REPO_NAME }}
138- path : ${{ env.REPO_DIR }} /*
148+ path : /home/alarm /*
139149
140150 # - name: create release
141151 # uses: softprops/action-gh-release@v2
0 commit comments