From 57ef794864fbdb758d6410f13abc80a2efc2cbbf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?xzvf=20=28P=C3=A9ter=20Bohner=29?= Date: Sat, 22 Jan 2022 11:56:11 +0100 Subject: [PATCH] Add packaging for Debian based distributions. This commit adds a script (`create-deb-pkg.sh`), which creates a deb package containing the fastfetch and flashfetch executables as well as the bash-completion file. The script must be executed in an environment, where `dpkg-deb` is present (a debian based environment). Because Deb versioning is not compatible with fastfetch version strings, it is adapted to the format: `0:1$FF_VERSION-0`. --- packaging/deb/control-template | 13 +++++++++++++ packaging/deb/create-deb-pkg.sh | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 packaging/deb/control-template create mode 100755 packaging/deb/create-deb-pkg.sh diff --git a/packaging/deb/control-template b/packaging/deb/control-template new file mode 100644 index 000000000..c0a92a103 --- /dev/null +++ b/packaging/deb/control-template @@ -0,0 +1,13 @@ +Package: fastfetch +Version: +Section: utils +Priority: extra +Architecture: amd64 +Maintainer: peter@bohner.me +Homepage: https://github.com/LinusDierheimer/fastfetch +Installed-Size: 410K +Description: A fast alternative to neofetch + fastfetch is a neofetch-like tool for fetching system information and + displaying them in a pretty way. It is written in c to achieve much better + performance, in return only Linux and Android are supported. It also uses + mechanisms like multithreading and caching to finish as fast as possible. diff --git a/packaging/deb/create-deb-pkg.sh b/packaging/deb/create-deb-pkg.sh new file mode 100755 index 000000000..5a159a4b7 --- /dev/null +++ b/packaging/deb/create-deb-pkg.sh @@ -0,0 +1,32 @@ +#!/bin/sh + +cd "$(dirname "$0")" +echo "cleanup" +rm -rf ./build ./fastfetch fastfetch.deb + +echo "building fastfetch" +mkdir build +cd build +cmake ../../.. +cmake --build . -j$(nproc) + +echo "generating package contents" +# deb versions must start with a number, hence the 1 added before the rXXX +version="0:1$(./fastfetch --version | cut -d ' ' -f2)-0" +echo "Using package version: $version" +cd .. + +mkdir -p fastfetch/DEBIAN +sed "s//$version/g" control-template > fastfetch/DEBIAN/control + +mkdir -p fastfetch/usr/bin +cp build/fastfetch fastfetch/usr/bin/ +cp build/flashfetch fastfetch/usr/bin/ +mkdir -p fastfetch/usr/share/bash-completion/completions +cp ../../completions/bash fastfetch/usr/share/bash-completion/completions/fastfetch + +echo "building package" +dpkg-deb --build fastfetch +echo "package built." +echo "cleaning up" +rm -rf build fastfetch