Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Debian packaging and CI via Ubuntu Noble 24.04 LTS #141

Merged
merged 15 commits into from
Jul 9, 2024
45 changes: 45 additions & 0 deletions .github/workflows/build-umu-ubuntu-noble.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: UMU Deb Build - Noble (Ubuntu 24.04 LTS)
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]

jobs:
build:
runs-on: ubuntu-latest
container:
image: ubuntu:noble
volumes:
- /proc:/proc
options: --privileged -it

steps:
- uses: actions/checkout@v2

- name: Copy debian packaging folder to the repository root
run: cp -rvf ./packaging/deb/debian ./

- name: Update APT Cache
run: apt update -y

- name: Install build dependencies
run: apt install -y dh-make dpkg-dev

- name: Setup dh_make quilt files
run: LOGNAME=root dh_make --createorig -y -l -p umu-launcher_1.0 || true

- name: Install apt build dependencies
run: apt build-dep -y ./

- name: Build
run: dpkg-buildpackage --no-sign

- name: Move DEB files to upload artifcat path
run: mkdir -p results && cp -rvf ../*.deb results/

- name: Upload artifact
uses: actions/[email protected]
with:
name: Binary DEB files
path: results/
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ __pycache__
umu_version.json
umu_version.json.in.tmp
Makefile
/debian
57 changes: 57 additions & 0 deletions packaging/deb/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Copy debian packaging folder to the repository root:
```
cp -rvf ./packaging/deb/debian ./
```


# Install build dependencies:
```
sudo apt install -y dh-make dpkg-dev
```

# Setup dh_make quilt files
```
LOGNAME=root dh_make --createorig -y -l -p umu-launcher_{PUT UMU VERSION HERE} || true
```

# Install apt build dependencies:
```
sudo apt build-dep -y ./
```

# Build:
```
dpkg-buildpackage --no-sign
```

# Install:
```
sudo apt install -y ../umu-launcher*.deb ../python3-umu-launcher*.deb
```

# Remove
```
sudo apt remove -y umu-launcher python3-umu-launcher
```

# Usage examples:

# winecfg:
```
GAMEID=umu-starcitizen WINEPREFIX=/home/tcrider/Games/umu/umu-starcitizen umu-run winecfg
```

# running a game using the default latest UMU-Proton:
```
GAMEID=umu-starcitizen WINEPREFIX=/home/tcrider/Games/umu/umu-starcitizen umu-run /path/to/some/game.exe
```

# running a game using the latest GE-Proton:
```
GAMEID=umu-starcitizen WINEPREFIX=/home/tcrider/Games/umu/umu-starcitizen PROTONPATH=GE-Proton umu-run /path/to/some/game.exe
```

# running a game using a specific proton version:
```
GAMEID=umu-starcitizen WINEPREFIX=/home/tcrider/Games/umu/umu-starcitizen PROTONPATH=GE-Proton9-1 umu-run /path/to/some/game.exe
```
5 changes: 5 additions & 0 deletions packaging/deb/debian/changelog
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
umu-launcher (1.0-1) noble; urgency=medium

* Initial release.

-- Ward Nakchbandi <[email protected]> Mon, 08 Jul 2024 06:13:24 +0300
38 changes: 38 additions & 0 deletions packaging/deb/debian/control
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
Source: umu-launcher
Section: python
Priority: optional
Maintainer: Ward Nakchbandi <[email protected]>
Rules-Requires-Root: no
Build-Depends:
debhelper-compat (= 13),
dh-python,
python3-all,
bash,
make,
scdoc,
python3-hatchling,
python3-installer,
python3-build,
Standards-Version: 4.6.2
Homepage: https://github.com/Open-Wine-Components/umu-launcher
Vcs-Browser: https://github.com/Open-Wine-Components/umu-launcher
Vcs-Git: https://github.com/Open-Wine-Components/umu-launcher

Package: umu-launcher
Section: games
Architecture: all
Depends:
python3-umu-launcher (= ${binary:Version}),
${misc:Depends},
Recommends: fontconfig, fonts-liberation, libasound2-plugins, libegl1, libexpat1, libfontconfig1, libgbm1, libnm0, libsdl2-2.0-0, libusb-1.0-0, libva-drm2, libva-glx2, libx11-6, libx11-xcb1, libxau6, libxcb-dri2-0, libxcb-glx0, libxcb-present0, libxcb-sync1, libxdamage1, libxdmcp6, libxext6, libxfixes3, libxss1, libxxf86vm1, mesa-vulkan-drivers, steam-devices, va-driver-all | va-driver, xdg-desktop-portal, xdg-desktop-portal-gtk | xdg-desktop-portal-backend, xdg-utils, xterm | x-terminal-emulator, zenity
Suggests: libudev0, nvidia-driver-libs, nvidia-vulkan-icd, pipewire
Description: A tool for launching non-steam games with proton.

Package: python3-umu-launcher
Architecture: all
Depends:
${shlibs:Depends},
${misc:Depends},
python3,
python3-xlib (>= 0.33)
Description: A tool for launching non-steam games with proton.
Loading
Loading