Code Monkey home page Code Monkey logo

snapcrafters-template-plus's Introduction

Unofficial Snap Packaging for [Project]

This is the unofficial snap packaging for [Project], Snaps are universal Linux packages.

Refer snap/README.md for user-oriented information.

Remaining Tasks

Snapcrafters (join us) are working to land snap install documentation and the snapcraft.yaml upstream so [Project] can authoritatively publish future releases.

  • Create snap_name-snap (or any valid name you prefer) repository via the Use this template button above

    It is recommended to *avoid forking the template repository* unless you're working on the template itself because you can only fork a repository once
    
  • Update the description of the repository

  • Update logos and references to [Project], my-awesome-app, _namespace_, _project_, and other placeholder names in README.md, snap/README.md, and snap/snapcraft.yaml

  • Add upstream contact information to this README.md

  • Create a snap that runs in devmode, or in classic confinement if that's not possible

  • Add a screenshot to snap/README.md

  • Register the snap in the Snap Store, using the preferred upstream name(i.e. without custom postfix). If the preferred upstream name is not available or reserved, file a request to take over the preferred upstream name and temporary use a name with personal postfix instead.

  • Setup build.snapcraft.io and publish the devmode snap in the Snap Store edge channel

  • Add the provided Snapcraft build badge to snap/README.md

  • Update snap's metadata, icons and screenshots on the dashboard

  • Add install instructions to snap/README.md

  • File an Intent-To-Package issue/bug to the upstream's contact or issue/bug tracker to consolidate and let the upstream acknowledge the effort - template - link

  • Convert the snap to strict confinement, or classic confinement if it qualifies

  • Publish the confined snap in the Snap Store beta channel

  • Update the install instructions in snap/README.md

  • Post a call for testing on the Snapcraft Forum - template - link

  • Publish the snap in the Snap Store stable channel

  • Update the install instructions in snap/README.md

  • Post an announcement in the Snapcraft Forum - template - link

  • Submit a pull request or patch upstream that adds the snapcraft.yaml and any required assets/launchers - example - link

  • Submit a pull request or patch upstream that adds snap install documentation - example - link

If the upstream accepts the PRs AND willing to maintain the package on the Snap Store:

If the upstream rejects the offer:

  • Ask a Snapcrafters admin to fork your/upstream's repo into github.com/snapcrafters, transfer the snap name from you to snapcrafters, and configure the repo for automatic publishing into edge on commit - template - link

Finally:

If you have any questions, post in the Snapcraft forum.

Licensing

This project comply with the REUSE specification, please refer the .reuse/dep5 file and each applicable file's header for licensing requirement of each resource.

snapcrafters-template-plus's People

Contributors

brlin-tw avatar evandandrea avatar flexiondotorg avatar popey avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

snapcrafters-template-plus's Issues

set-snap-version consider upstream_version dirty for my-app-name part

ubuntu@snapcraft-cleanbuild-workaround:~/snapcrafters-template-plus$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean
ubuntu@snapcraft-cleanbuild-workaround:~/snapcrafters-template-plus$ ./snap/local/utilities/set-snap-version.bash 
3.1.0-d+pkg-3cf7ubuntu@snapcraft-cleanbuild-workaround:~/snapcrafters-templaterts/my-app-part/src describe --dirty
v3.1.0-dirty
ubuntu@snapcraft-cleanbuild-workaround:~/snapcrafters-template-plus$ git -C parts/my-app-part/src status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

	deleted:    snap/.editorconfig
	deleted:    snap/.gitignore
	deleted:    snap/README.md
	deleted:    snap/gui/README.md
	deleted:    snap/gui/my-app-name.desktop
	deleted:    snap/gui/my-awesome-app.png
	deleted:    snap/local/README.md
	deleted:    snap/local/launchers/README.md
	deleted:    snap/local/launchers/classic-launch
	deleted:    snap/local/launchers/my-awesome-app-launch
	deleted:    snap/local/patches/README.md
	deleted:    snap/local/screenshots/README.md
	deleted:    snap/local/utilities/README.md
	deleted:    snap/local/utilities/install-assets.bash
	deleted:    snap/local/utilities/patch-desktop-entries.bash
	deleted:    snap/local/utilities/patch-desktop-entries.sed
	deleted:    snap/local/utilities/set-snap-version.bash
	deleted:    snap/snapcraft.yaml

no changes added to commit (use "git add" and/or "git commit -a")

Unnecessary files under /snap will be copied to SNAPCRAFT_PRIME

$ tree prime
prime
├── bin
│   └── my-app-launch
├── command-my-app-name.wrapper
├── meta
│   ├── gui
│   │   ├── icon.png
│   │   └── README.md
│   └── snap.yaml
└── snap
    ├── gui
    │   ├── icon.png
    │   └── README.md
    ├── launchers
    │   ├── my-app-launch
    │   └── README.md
    ├── patches
    │   ├── patch-desktop-entries.sed
    │   └── README.md
    ├── README.md
    ├── screenshots
    │   └── README.md
    └── utilities
        └── README.md

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.