Skip to content

Commit 5dd2370

Browse files
authored
Initial commit
0 parents  commit 5dd2370

File tree

5 files changed

+135
-0
lines changed

5 files changed

+135
-0
lines changed

.github/workflows/appimage.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: Anylinux-AppImage
2+
concurrency:
3+
group: build-${{ github.ref }}
4+
cancel-in-progress: true
5+
on:
6+
schedule:
7+
- cron: "0 7 1/21 * *" # We default to rebuilding every 21 days, change this to your liking
8+
workflow_dispatch: {}
9+
10+
jobs:
11+
build:
12+
name: "${{ matrix.name }} (${{ matrix.arch }})"
13+
runs-on: ${{ matrix.runs-on }}
14+
strategy:
15+
matrix:
16+
include:
17+
- runs-on: ubuntu-latest
18+
name: Build AppImage
19+
arch: x86_64
20+
# comment out these 3 lines if aarch64 is not wanted
21+
- runs-on: ubuntu-24.04-arm
22+
name: Build AppImage
23+
arch: aarch64
24+
container: ghcr.io/pkgforge-dev/archlinux:latest
25+
steps:
26+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
27+
- name: Preparing Container
28+
uses: pkgforge-dev/anylinux-setup-action@8872fabe63f9a00b35e25b2f46da62a05afc9a7d # v1
29+
- name: Install Dependencies
30+
run: /bin/sh ./get-dependencies.sh
31+
- name: Make AppImage
32+
run: /bin/sh ./make-appimage.sh
33+
- name: Upload artifact
34+
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
35+
with:
36+
name: AppImage-${{ matrix.arch }}
37+
path: dist
38+
39+
release:
40+
if: ${{ github.ref_name == 'main' }}
41+
needs: [build]
42+
permissions: write-all
43+
runs-on: ubuntu-latest
44+
steps:
45+
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0
46+
with:
47+
pattern: AppImage-*
48+
merge-multiple: true
49+
- name: Release AppImage
50+
uses: pkgforge-dev/make-stable-appimage-release@4ed3d48ccb065352b6e6c0db6d39885b201c54a0 #v1.1

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 Package Forge (Dev)
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# TEMPLATE-AppImage 🐧
2+
3+
[![GitHub Downloads](https://img.shields.io/github/downloads/pkgforge-dev/TEMPLATE-AppImage/total?logo=github&label=GitHub%20Downloads)](https://github.com/pkgforge-dev/TEMPLATE-AppImage/releases/latest)
4+
[![CI Build Status](https://github.com//pkgforge-dev/TEMPLATE-AppImage/actions/workflows/appimage.yml/badge.svg)](https://github.com/pkgforge-dev/TEMPLATE-AppImage/releases/latest)
5+
6+
* [Latest Stable Release](https://github.com/pkgforge-dev/TEMPLATE-AppImage/releases/latest)
7+
8+
---
9+
10+
AppImage made using [sharun](https://github.com/VHSgunzo/sharun), which makes it extremely easy to turn any binary into a portable package without using containers or similar tricks.
11+
12+
**This AppImage bundles everything and should work on any linux distro, even on musl based ones.**
13+
14+
This AppImage can work **without FUSE** at all thanks to the [uruntime](https://github.com/VHSgunzo/uruntime)
15+
16+
More at: [AnyLinux-AppImages](https://pkgforge-dev.github.io/Anylinux-AppImages/)
17+
18+
<details>
19+
<summary><b><i>raison d'être</i></b></summary>
20+
<img src="https://github.com/user-attachments/assets/d40067a6-37d2-4784-927c-2c7f7cc6104b" alt="Inspiration Image">
21+
</a>
22+
</details>
23+
24+
---
25+
26+
# Fork this repository to quickly make an AppImage using the [Anylinux-AppImages](https://github.com/pkgforge-dev/Anylinux-AppImages) tools

get-dependencies.sh

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#!/bin/sh
2+
3+
set -eu
4+
5+
ARCH=$(uname -m)
6+
7+
echo "Installing package dependencies..."
8+
echo "---------------------------------------------------------------"
9+
# pacman -Syu --noconfirm PACKAGESHERE
10+
11+
echo "Installing debloated packages..."
12+
echo "---------------------------------------------------------------"
13+
get-debloated-pkgs --add-common --prefer-nano
14+
15+
# Comment this out if you need an AUR package
16+
#make-aur-package PACKAGENAME
17+
18+
# If the application needs to be manually built that has to be done down here

make-appimage.sh

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/sh
2+
3+
set -eu
4+
5+
ARCH=$(uname -m)
6+
VERSION=$(pacman -Q PACKAGENAME | awk '{print $2; exit}') # example command to get version of application here
7+
export ARCH VERSION
8+
export OUTPATH=./dist
9+
export ADD_HOOKS="self-updater.bg.hook"
10+
export UPINFO="gh-releases-zsync|${GITHUB_REPOSITORY%/*}|${GITHUB_REPOSITORY#*/}|latest|*$ARCH.AppImage.zsync"
11+
export ICON=PATH_OR_URL_TO_ICON
12+
export DESKTOP=PATH_OR_URL_TO_DESKTOP_ENTRY
13+
14+
# Deploy dependencies
15+
quick-sharun /PATH/TO/BINARY_AND_LIBRARIES_HERE
16+
17+
# Additional changes can be done in between here
18+
19+
# Turn AppDir into AppImage
20+
quick-sharun --make-appimage

0 commit comments

Comments
 (0)