This directory contains package definitions for various package managers.
-
debian/- Debian/Ubuntu package filescontrol- Package metadata and dependenciesrules- Build ruleschangelog- Version historycompat- Debian compatibility level
-
rpm/- RHEL/CentOS/Fedora package filesinsta.spec- RPM spec file
-
arch/- Arch Linux package filesPKGBUILD- Build script
-
chocolatey/- Windows Chocolatey package filesinsta.nuspec- Package metadatatools/- Installation and uninstallation scripts
A build script (build.sh) is provided to automate the package building process. This script will:
- Build the Go binary
- Detect the current platform
- Build the appropriate package(s) for that platform
- Place all built packages in the
build/packagesdirectory
# Make the script executable
chmod +x packaging/build.sh
# Run the build script
./packaging/build.shThe script will check for the following requirements based on the platform:
-
Debian/Ubuntu:
dpkg-buildpackagegolang-go
-
RHEL/CentOS/Fedora:
rpmbuildgolang
-
Arch Linux:
makepkggo
-
Windows (Chocolatey):
chocogo
If you prefer to build packages manually, here are the commands for each platform:
cd packaging/debian
dpkg-buildpackage -us -uccd packaging/rpm
rpmbuild -ba insta.speccd packaging/arch
makepkg -sicd packaging/chocolatey
choco pack