Skip to content
This repository has been archived by the owner. It is now read-only.

Distributing for Ubuntu #3520

Closed
bbondy opened this issue Aug 29, 2016 · 1 comment
Closed

Distributing for Ubuntu #3520

bbondy opened this issue Aug 29, 2016 · 1 comment

Comments

@bbondy
Copy link
Member

@bbondy bbondy commented Aug 29, 2016

Chris writes:

Hi Brian,

As requested on Twitter, here's a few ways to get Brave to Ubuntu users.

First of all I'll introduce Snappy [1], which would be the preferred way
for you to deliver Brave on Ubuntu. Snappy is a new way to package apps
that are isolated, self-contained, and will allow you to upload directly
to the app store. However, it's still in development which means you
might hit some bugs along the way. One of my colleagues is fixing bugs
in Snappy that are specific to Electron and Chromium based applications
though, and it's considered a priority to have this working well (we
need it to work for our own webview anyway, which is also Chromium
based). That said, some people have had some success with Electron based
apps already [2]. It's probably also worth checking out the initial work
done for a Chromium snap package [3], although this does just repackage
the existing Debian package.

I'm currently not that familiar with Snappy, so I can't help you much
with it right now. However, when I return from vacation next week I'm
probably going to be asked to help the Mozilla folk with Firefox, so I
might be in a better position to help then. If you have any questions in
the meantime, feel free to ask Jamie Strandboge [4].

Other than Snappy, there are the legacy methods which involve creating
Debian packages. There's quite a lot of documentation online for this,
as well as plenty of example packages. If you wanted to go down this
route, I'd probably start with the packaging guide though [5]. There are
a few ways you can distribute Debian packages - the main one being via
the Ubuntu archive. However, I wouldn't recommend this for new
applications, and particularly not for applications that should be
updated regularly like a web browser. In addition to having to find an
Ubuntu developer to sponsor your uploads [6], you would also be bound by
other Ubuntu processes (eg, [7], [8]), which are a pain. As a result,
applications in the Ubuntu archive are often slow to be updated. Firefox
is a bit special here because it's shipped by default and is therefore
in the "main" component of the archive [9].

Another way to distribute Debian based packages is via PPAs [10] - these
avoid some of the disadvantages of using the Ubuntu archive (you can
upload them yourself and you're not bound by other Ubuntu development
processes). However, installing packages from PPAs is not the greatest
experience [11]. In addition to that, Debian packages are very powerful
(eg, dpkg runs their maintainer scripts as root and will install files
anywhere), so I wouldn't want to encourage the use of PPAs.

The other way to distribute Debian based packages is to do what the
Chrome, Vivaldi and Opera guys do - they provide their own apt
repository (eg, [12]) and then make the Debian package available to
download from their website. The package creates the required Apt source
entry in /etc/apt/sources.list.d/ on install so that it stays
up-to-date. I don't have any experience of setting up an apt repository,
but there is some documentation available [13].

I hope this is a good starting point, and I'll hopefully be available to
help a bit more when I return to work next week.

Regards

  • Chris

[1] - http://snapcraft.io/
[2] -
http://www.linuxuk.org/post/20160518_snapping_electron_based_applications_simplenote/
[3] - https://code.launchpad.net/~jdstrand/+junk/chromium-snap.jdstrand
[4] - https://launchpad.net/~jdstrand
[5] - http://packaging.ubuntu.com/html/packaging-new-software.html
[6] - https://wiki.ubuntu.com/SponsorshipProcess
[7] - https://wiki.ubuntu.com/StableReleaseUpdates
[8] - https://wiki.ubuntu.com/UbuntuDevelopment/ReleaseProcess
[9] -
https://help.ubuntu.com/community/Repositories/Ubuntu#What_are_Repositories.3F
[10] - https://help.launchpad.net/Packaging/PPA
[11] - https://help.launchpad.net/Packaging/PPA/InstallingSoftware
[12] - https://dl.google.com/linux/chrome/deb/
[13] - https://wiki.debian.org/HowToSetupADebianRepository

@posix4e
Copy link
Collaborator

@posix4e posix4e commented Dec 21, 2016

I think thi scan be closed?

@bbondy bbondy closed this Dec 21, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants
You can’t perform that action at this time.