-
Notifications
You must be signed in to change notification settings - Fork 419
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
Is. #748 - Implement snap packaging #749
Conversation
470a4fc
to
999ac6b
Compare
Snaps are universal Linux packages that can be installed and run on multiple GNU+Linux distributions with ease. This patch implements the necessary files to build tidy as a snap. Refer-to: Snapcraft - Snaps are universal Linux packages <https://snapcraft.io> Intent-To-Package: Snaps are Universal Linux Packages · Issue htacg#748 · htacg/tidy-html5 <htacg#748> Conforming-to: tidy-html5/CONTRIBUTING.md at next · htacg/tidy-html5 <https://github.com/htacg/tidy-html5/blob/next/README/CONTRIBUTING.md> Conforming-to: tidy-html5/CODESTYLE.md at next · htacg/tidy-html5 <https://github.com/htacg/tidy-html5/blob/next/README/CODESTYLE.md> Signed-off-by: 林博仁(Buo-ren, Lin) <Buo.Ren.Lin@gmail.com>
999ac6b
to
f0d6844
Compare
@Lin-Buo-Ren, I'd rather give you access to another repository under htacg, if you're willing to maintain this. Tidy does not distribute on any platform, and we can't take responsibility for every different distribution means that is out there. For example, you'll see that someone else maintains the Linux distros, Chocolately, homebrew, etc. We do have build options in our CMakeLists.txt file that helps with various distros, however, and if you can come up with a pure cmake solution for snap, or want to add something to the CMakeLists.txt that makes it easier to distribute to snap from another repo, then that would be much, much more appropriate. |
Apologies for the delay. Although it is definitely possible to publish the snap in a separate repository I would like to ask for a reconsideration of taking over the maintenance of the snap package. In contrast to traditional packaging systems packages, snap packages can be installed on a broad range of Linux distributions that can run snapd, this makes it a suitable release target to be featured in the HTML Tidy Binary Releases page and provides an up-to-date and aligned experience to the users. With the continuous integration and delivery setup it is also easier to let the user test changes in the latest development snapshots by simply telling them to install the package via the automatic publishing edge channel with a simple command:
The snap technology is built for the upstream, in addition to the release channels, it provides tracks that enable developers to publish multiple supported releases of their application under the same name. By using this feature you can provide releases of both master and next branch as a track simultaneously with 4 independent release channels for QA purposes. Last but not least the packaging of this snap is, in fact, the simplest one I have ever done and only took me less than one day to set it up into a usable state. It would really be a pity if you don't take over the maintenance. I appreciate your offer of providing the separate GitHub repository under the HTACG organization, but currently due to the limitation of the build infrastructure on build.snapcraft.io the automatic build and publish of edge channel snaps is only possible when the packaging files and the snapped app's source are in the same repository AND the snap publisher has the write access to the repository. |
I'm currently proposing of acquiring a webhook that can be set in the upstream's repository for triggering automatic third party snap build on every push and would like to ask if you're willing to set up one if it's available. |
@Lin-Buo-Ren, agree with the comments of @balthisar, this should not be in this main tidy repo, but maybe other arrangements could be made... sorry... Accordingly, closing this PR for now, and the associated issue #748... thanks... |
Snaps are universal Linux packages that can be installed and run on
multiple GNU+Linux distributions with ease. This patch implements the
necessary files to build tidy as a snap.
Refer-to: Snapcraft - Snaps are universal Linux packages
https://snapcraft.io
Intent-To-Package: Snaps are Universal Linux Packages · Issue #748 · htacg/tidy-html5
#748
Conforming-to: tidy-html5/CONTRIBUTING.md at next · htacg/tidy-html5
https://github.com/htacg/tidy-html5/blob/next/README/CONTRIBUTING.md
Conforming-to: tidy-html5/CODESTYLE.md at next · htacg/tidy-html5
https://github.com/htacg/tidy-html5/blob/next/README/CODESTYLE.md
Signed-off-by: 林博仁(Buo-ren, Lin) Buo.Ren.Lin@gmail.com