Implement snap packaging, snaps are universal linux packages

This patch implements the necessary details to package gotop as a snap
that can be installed on various GNU/Linux distributions supported by
Snapd.

Signed-off-by: 林博仁(Buo-ren Lin) <Buo.Ren.Lin@gmail.com>
This commit is contained in:
林博仁(Buo-ren Lin) 2019-03-03 00:13:33 +08:00 committed by Caleb Bassi
parent 56662fda14
commit 0817bea2bb
2 changed files with 46 additions and 0 deletions

8
.gitignore vendored
View File

@ -1,2 +1,10 @@
dist/ dist/
gotop* gotop*
# snap packaging specific
/parts/
/prime/
/stage/
/*.snap
/snap/.snapcraft/
/*_source.tar.bz2

38
snap/snapcraft.yaml Normal file
View File

@ -0,0 +1,38 @@
name: gotop-cjbassi
base: core18
version: determined-by-version-script
version-script: git describe --always --tags --dirty
summary: A terminal based graphical activity monitor inspired by gtop and vtop
description: |
Another terminal based graphical activity monitor, inspired by [gtop](https://github.com/aksakalli/gtop) and [vtop](https://github.com/MrRio/vtop), this time written in [Go](https://golang.org/)!
grade: stable
confinement: strict
icon: assets/logo.png
license: AGPL-3.0
parts:
gotop:
source: .
plugin: go
go-importpath: github.com/cjbassi/gotop
build-packages:
- git-core
- gcc
plugs:
# Required by the "Temperatures" widget
hardware-observe:
# Required by the "Disk Usage" widget
mount-observe:
# Required by the "Processes" widget
system-observe:
apps:
gotop-cjbassi:
command: bin/gotop
environment:
LANG: C.UTF-8
LC_ALL: C.UTF-8