diff --git a/.github/workflows/snap.yml b/.github/workflows/snap.yml new file mode 100644 index 0000000..f6edf1f --- /dev/null +++ b/.github/workflows/snap.yml @@ -0,0 +1,16 @@ +name: Test build Ubuntu snap on Linux amd64 + +on: + push: + pull_request: + workflow_dispatch: + # Automatic cron build every 6 months to check if everything still works. + schedule: + - cron: "0 0 1 1/6 *" + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: snapcore/action-build@v1 diff --git a/README.md b/README.md index 0970bd1..bff5176 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,17 @@ **bittorrent-tracker-editor** will add/remove bittorrent tracker from the torrent file(s). -This software works on Windows XP SP3, Windows 7+, macOS and Linux. +This software works on Windows 7+, macOS and Linux. --- ## Software latest release: ## [![GitHub Latest release](https://img.shields.io/github/release/GerryFerdinandus/bittorrent-tracker-editor/all.svg)](https://github.com/GerryFerdinandus/bittorrent-tracker-editor/releases) - --- -## Code Status: ## -Continuous integration|Status| Build operating system -------------|---------|--------- -Travis-CI |[![Build Status](https://travis-ci.com/GerryFerdinandus/bittorrent-tracker-editor.svg?branch=master)](https://travis-ci.com/GerryFerdinandus/bittorrent-tracker-editor) |Linux, macOS and Windows -Snapcraft-CI |[![Snap Status](https://build.snapcraft.io/badge/GerryFerdinandus/bittorrent-tracker-editor.svg)](https://build.snapcraft.io/user/GerryFerdinandus/bittorrent-tracker-editor)|Linux +## Build Status: ## +Continuous integration|Status| Generate an executable file for the operating system| Download link +------------|---------|---------|---------- +GitHub Actions |[![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/gerryferdinandus/bittorrent-tracker-editor/cicd.yml)](https://github.com/GerryFerdinandus/bittorrent-tracker-editor/actions/workflows/cicd.yml)|Linux(amd64), macOS(Intel processors) and Windows|[![GitHub Latest release](https://img.shields.io/github/release/GerryFerdinandus/bittorrent-tracker-editor/all.svg)](https://github.com/GerryFerdinandus/bittorrent-tracker-editor/releases) +GitHub Actions (Ubuntu snap) |[![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/gerryferdinandus/bittorrent-tracker-editor/snap.yml)](https://github.com/GerryFerdinandus/bittorrent-tracker-editor/actions/workflows/snap.yml)|Linux (amd64, arm64 and armhf)|[![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-white.svg)](https://snapcraft.io/bittorrent-tracker-editor) --- ## Warning: ## diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 001b96f..3632cd7 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -1,6 +1,6 @@ name: bittorrent-tracker-editor version: '1.33.0' -base: core18 +base: core22 summary: Software for add or remove tracker from torrent files. description: | Features: @@ -18,13 +18,12 @@ confinement: strict architectures: - build-on: amd64 - - build-on: i386 - build-on: arm64 - build-on: armhf apps: bittorrent-tracker-editor: - command: desktop-launch $SNAP/app/trackereditor + command: app/trackereditor environment: # Fallback to XWayland if running in a Wayland session. DISABLE_WAYLAND: 1 @@ -51,59 +50,39 @@ parts: override-build: | snapcraftctl build lazbuild --build-mode=Release --widgetset=gtk2 source/project/tracker_editor/trackereditor.lpi - mkdir $SNAPCRAFT_PART_INSTALL/app - mv enduser/trackereditor $SNAPCRAFT_PART_INSTALL/app - stage-packages: - - libcanberra-gtk-module - - openssl - - libgail-common - - libatk-adaptor - - overlay-scrollbar-gtk2 - after: - - desktop-gtk2 - - # This part installs the `desktop-launch` script which initialises desktop - # features such as fonts, themes and the XDG environment. It also installs - # the GTK2 runtime libraries. - # - # It is copied straight from the snapcraft desktop helpers project. Please - # periodically check the source for updates and copy the changes. - # https://github.com/ubuntu/snapcraft-desktop-helpers/blob/master/snapcraft.yaml - # - desktop-gtk2: - source: https://github.com/ubuntu/snapcraft-desktop-helpers.git - source-subdir: gtk - plugin: make - make-parameters: ["FLAVOR=gtk2"] + mkdir $CRAFT_PART_INSTALL/app + mv enduser/trackereditor $CRAFT_PART_INSTALL/app build-packages: - libgtk2.0-dev stage-packages: - - libxkbcommon0 # XKB_CONFIG_ROOT - - ttf-ubuntu-font-family - - dmz-cursor-theme - - light-themes - - adwaita-icon-theme - - gnome-themes-standard - - shared-mime-info - libgtk2.0-0 - - libgdk-pixbuf2.0-0 - - libglib2.0-bin - - libgtk2.0-bin - - unity-gtk2-module - - libappindicator1 - - locales-all - - ibus-gtk - - libibus-1.0-5 + - openssl + +# This part removes all the files in this snap which already exist in +# connected content and base snaps. Since these files will be available +# at runtime from the content and base snaps, they do not need to be +# included in this snap itself. +# +# More info: https://forum.snapcraft.io/t/reducing-the-size-of-desktop-snaps/17280#heading--cleanup-part +# + cleanup: + after: # Make this part run last; list all your other parts here + - bittorrent-tracker-editor + plugin: nil + build-snaps: # List all content-snaps and base snaps you're using here + - core22 + - gtk-common-themes + override-prime: | + set -eux + for snap in "core22" "gtk-common-themes"; do # List all content-snaps and base snaps you're using here + cd "/snap/$snap/current" && find . -type f,l -exec rm -f "$SNAPCRAFT_PRIME/{}" \; + done plugs: gtk-2-engines: interface: content target: $SNAP/lib/gtk-2.0 default-provider: gtk2-common-themes - gtk-2-themes: - interface: content - target: $SNAP/data-dir/themes - default-provider: gtk-common-themes icon-themes: interface: content target: $SNAP/data-dir/icons