Skip to content
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

Intent To Package: Snaps are Universal Linux Packages #169

Closed
brlin-tw opened this issue Feb 21, 2019 · 9 comments
Closed

Intent To Package: Snaps are Universal Linux Packages #169

brlin-tw opened this issue Feb 21, 2019 · 9 comments

Comments

@brlin-tw
Copy link
Contributor

brlin-tw commented Feb 21, 2019

Dear maintainer(s),

Snaps are universal Linux packages that can be installed and run on many GNU+Linux distributions with ease. I've been following the Snapcrafters instructions and have built a working snap on the Snap Store, you may try it by running the following command after installing snapd:

# snap install gallery-dl

I'm also looking forward to working with you to make the packaging work upstream (if you're interested). You may want to check out the current packaging recipe, the documentation, registering a developer account on the Snap Store, and get in touch with us to transfer the snap under your control.

Thanks for your time and attention.

@mikf
Copy link
Owner

mikf commented Feb 22, 2019

Thanks for your efforts.

I tried installing snap to test your package, but building it from source failed (there is currently no binary package available for my distro):

*** Setting version to '2.37.3-1' from shell.
# os/user
cannot load DWARF output from $WORK/b055//_cgo_.o: decoding dwarf section info at offset 0x0: too short
# net
cannot load DWARF output from $WORK/b047//_cgo_.o: decoding dwarf section info at offset 0x0: too short

I'm guessing I need to have snap installed to build and upload snap-packages, so transferring the package over to me will have to wait until I've got this figured out.

@brlin-tw
Copy link
Contributor Author

brlin-tw commented Feb 22, 2019

I'm guessing I need to have snap installed to build and upload snap-packages

That's not really necessary if you use the snapcraft build service, which, when configured properly, can build the snap package and publish it to the Snap Store for you automatically whenever you push code changes to the repository.

Also, to build and publish snap packages instead of Snapd you'll need Snapcraft, which should be relatively easy to be installed as it is a pure Python utility.

@brlin-tw
Copy link
Contributor Author

brlin-tw commented Feb 25, 2019

@mikf
I just added your committer e-mail address to the snap collaborator list, you should be able to access the snap administration pages at https://snapcraft.io/snaps and https://dashboard.snapcraft.io (may require registration of an Ubuntu One account)

@mikf
Copy link
Owner

mikf commented Mar 1, 2019

Sorry for my late response. I managed to build snap and install your gallery-dl snap package. Everything seems to work as far as the snap-confinements allow it to. (I'm used to be able to write to /tmp/ or any location outside my home directory)

I've also registered an Ubuntu One account, but there is nothing to see at those two pages you linked to. I only have the option to create my own, new snap. https://snapcraft.io/build has kind of the same problem: I would like to link this repo to your snap page, but that doesn't seem to be possible

@brlin-tw
Copy link
Contributor Author

brlin-tw commented Mar 1, 2019

@mikf
Now that the packaging recipe is merged I would like to ask if you are willing to take over the maintenance of the snap? Here are the procedures:

  1. Creating your developer account on the Snap Store.
  2. Post a snap name transfer request under the store topic category of the Snapcraft Forum, you'll have to mention either your snap account id listed in https://dashboard.snapcraft.io/dev/account/ or the associated e-mail address. You may check out this example: Transfer brook - store - snapcraft.io
    I can also make the post for you, in this case simply mention the aforementioned account details here.
  3. After the name transfer is completed, you may start adding this repository to the snapcraft build service to set up the automatic snap build and publishing, you may manage the snap's release details at the snap's releases page

It's also fine if you don't want to take over, in this case I'll setup a repo on Launchpad that will periodically sync this repository and build the snap.

@brlin-tw
Copy link
Contributor Author

brlin-tw commented Mar 1, 2019

I'm used to be able to write to /tmp/ or any location outside my home directory

This is not the case for snaps as regular file access is restricted to what the home interface and optionally the removable-media interface allows.

@mikf
Copy link
Owner

mikf commented Mar 1, 2019

I can make the post for you, in this case simply mention the aforementioned account details here.

That would be preferable, since you know better how things are supposed to be handled,

My snap account ID is oI14mtob8VE3ttmeXnS0GCAtgKFRMnYV, snap store username is mikf123 ´, and e-mail address is the same as my committer e-mail.

It's also fine if you don't want to take over, in this case I'll setup a repo on Launchpad that will periodically sync this repository and build the snap.

This may actually be better than giving ownership of this snap package to me. It is probably preferable to leave it in the hands of someone who is using it on a regular basis and therefore knows what kind of changes and improvements might be necessary. I wouldn't mind settings up the automatic build process and marking releases as stable, but I doubt I'm ever going to be using the snap version of gallery-dl again.
Do whatever you think is best and I'll roll with it.

@brlin-tw
Copy link
Contributor Author

brlin-tw commented Mar 1, 2019

As the snap technology is made for the upstream to deliver their software directly to the users, let's go with the original plan and make the transfer. If you no longer willing to maintain it you can simply:

  1. Modify the launcher to print a simple message to notify the users you have obsolete the snap on the next execution.
  2. Build and publish the final obsoletion update and close all alternate release channels at the releases page so all the current users will receive it.
  3. Make the snap unlisted via the snap's settings page
  4. Drop all the bits relating to the snap and forget everything about it.

I've initiated the name transfer on the Snapcraft Forum: Please transfer gallery-dl to mikf123 - store - snapcraft.io, it might take a few days for the store staffs to pick it up.

@brlin-tw
Copy link
Contributor Author

brlin-tw commented Mar 5, 2019

@mikf
The ownership transfer is now completed, you may now configure the snapcraft build service to start building the snap right from this repository.

Feel free to ask any question regarding the distribution of the snap package either via GitHub @mentions, Buo.Ren.Lin@gmail.com, or on the snapcraft forum, cheers!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants