Skip to content
This repository has been archived by the owner on Sep 6, 2021. It is now read-only.

Linux: provide tar.gz download #5021

Open
rombert opened this issue Sep 2, 2013 · 11 comments
Open

Linux: provide tar.gz download #5021

rombert opened this issue Sep 2, 2013 · 11 comments

Comments

@rombert
Copy link

rombert commented Sep 2, 2013

I've seen that Brackets now has a Linux build, which is great. However, only offering deb files is not friendly towards distros which are not based on Ubuntu, like RedHat, Fedora, SuSE, Gentoo and Arch to name just a few.

If you would provide a tarball which contains the resulting binary files, distro packagers could then provide their own packages based on it.

I understand that providing packages for every possible distro is out of scope, and therefore having a tarball download makes it easier to have other do the packaging :-)

@ingorichter
Copy link
Contributor

What exactly should be part of the tar ball?
To create the deb package, we stage all required files in one directory and run the tools to produce the deb. There are a lot of files like brackets.desktop, brackets.menu and some icons. What do you think is the minimum set of files to help distro packagers to create a package?

@peterflynn
Copy link
Member

@jasonsanjose Is this the kind of thing that would be resolved by the "universal installer" PR?

@jasonsanjose
Copy link
Member

@peterflynn Eh, sort of? All the "universal" change really does is standardize some aspects of packaging then fire off distribution-specific packaging shell scripts.

@rombert I'd like to see some examples of a tarball that you have in mind. At it's simplest, we're basically packaging Chromium (ok...maybe oversimplifying). Chromium's officially supported packaging is .deb and .rpm only (http://src.chromium.org/viewvc/chrome/trunk/src/chrome/installer/linux/) and the bulk of that packaging is resolving dependencies that aren't compiled into the binary.

@rombert
Copy link
Author

rombert commented Sep 4, 2013

@ingorichter , @jasonsanjose - The binary tarball IMO should contain everything you package in the deb files, dumped under one directry.

If you look at what Sublime Text 3 does, you get a tarball with a top-level-directory that I can drop into /opt/ and start using. And please keep the desktop/icon files in the tarball, even if they're not installed/registered, as they can be reused by packagers.

@peterflynn - This is I guess orthogonal to the universal installer. Getting a tarball out which will be reused by distro packagers mean that this will potentially end up being installable from distro repositories, rather than manually downloaded from the brackets website, with automatic updates etc.

@jasonsanjose
Copy link
Member

I took a look at the firefox tarball for linux and their install instructions https://support.mozilla.org/en-US/kb/install-firefox-linux. It's interesting that they bundle their library dependencies in the extracted files. I wonder how they determine compatibility and if they do any sort of first-run setup.

@jasonsanjose
Copy link
Member

@rombert I forgot to address your original point about being debian only for now. We were definitely aware of that going in and had considered .deb and .rpm as our first targets for packaging. We're learning as we go here. So, if you have any other suggestions or pointers, or would like to contribute, that would be great. Thanks!

@rombert
Copy link
Author

rombert commented Sep 5, 2013

@jasonsanjose

  1. Seems my email regarding Firefox was lost, so here goes. FF does not perform any initial setup and no dependency checking. That's the job of package managers.

I'm not sure how they choose their dependencies, but it doesn't always work. For instance, nightlies don't work on OpenSUSE right now.

  1. Regarding RPM packaging, I'm trying to pick that up for OpenSUSE, but it'd be easer with a tarball. My idea is to package it on the OpenSUSE build service ( think of it as a PPA repository ) and to make it available for everyone to download and receive updates.

The OpenSUSE build service also allows packaging software for Debian/Ubuntu, RHEL/CentOS/Fedora, Arch , but TBH I haven't tried those and I don't plan to.

@macie
Copy link

macie commented Sep 9, 2013

@peterflynn "universal installer" is no more than @rombert proposition with my install bash scripts.

I like this idea - one download for all distros.

@rombert
Copy link
Author

rombert commented Sep 11, 2013

@macie - for the end user, I agree. For distro packagers, a tar.gz is much more useful, since we'll be writing our own installers anyway.

At any rate, I've built some OpenSUSE packages for Brackets Sprint 30 - see http://software.opensuse.org/package/brackets . Not sure where (if) I can announce them, but it would be good to get some testing outside my own machine.

@librehat
Copy link

@jasonsanjose I hope you could provide RPM package in a near future. With a yum repo maintained just like Adobe Flash Player plugin in the old days. While release a generic tarball file is definitely worthwhile, the tarball contains everything just like deb package.

@lqueryvg
Copy link

Sadly I think you have a dependency on glibc 2.15 (via CEF3), which will exclude RHEL/CentOS for quite a while - until RHEL/CentOS 7 comes along.

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

No branches or pull requests

8 participants