brackets-archive / brackets-shell

CEF3-based application shell for Brackets.
http://brackets.io
MIT License
0 stars 0 forks source link

[CLOSED] [LINUX] build a .tar.gz to be unpacked anywhere. #280

Open core-ai-bot opened 3 years ago

core-ai-bot commented 3 years ago

Issue by radicaled Thursday Apr 17, 2014 at 19:28 GMT Originally opened as https://github.com/adobe/brackets-shell/pull/433


Generates a .tar.gz based off the current Linux build.

Includes 2 simple scripts, install.sh and uninstall.sh, that install/uninstall desktop and command-line entries for brackets.

According to adobe/brackets/issues/5021 this binary tarball might make actual packaging easier for maintainers.


radicaled included the following code: https://github.com/adobe/brackets-shell/pull/433/commits

core-ai-bot commented 3 years ago

Comment by radicaled Thursday Apr 17, 2014 at 20:58 GMT


@ingorichter how are my changes?

core-ai-bot commented 3 years ago

Comment by ingorichter Friday Apr 18, 2014 at 17:36 GMT


@radicaled That looks good to me. I'll give it a try later today. Thanks

core-ai-bot commented 3 years ago

Comment by ingorichter Wednesday Apr 23, 2014 at 00:57 GMT


@radicaled I tried it out and the tar.gz is properly generated. What do you think of copying the whole folder to the final destination instead of creating links? I accidentally removed the brackets directory and I wasn't able to start Brackets anymore. This could be confusing for the end user. Is ~/.local the right place to install applications? It seems that this was primarily intended for apps to store preferences and app data. Perhaps you could install it into /usr/local or /opt/. Ubuntu didn't show the icon and couldn't find Brackets. I wonder if we need to call xdg-desktop-menu/xdg-desktop-icon in order to make them appear. What do you think?

core-ai-bot commented 3 years ago

Comment by radicaled Wednesday Apr 23, 2014 at 01:13 GMT


~/.local is where configuration files, .desktop files, and command line binaries that only apply to the currently logged in user go. You don't put the actual application files there.

For instance, when you download the Linux version of RubyMine or WebStorm or any of IntelliJ's excellent IDE products, you unzip them to whatever location you'd like them to be (in my case they're in ~/Development/RubyMine). Then they create the appropriate links within ~/.local to their command line binaries ("mine" for RubyMine), and create a .desktop file so that the application is recognized by the currently running GUI.

install.sh does the same thing here. A side-effect of this, and probably a benefit, is that you can install Brackets without having to use sudo.

The actual location where you unzip a .tar.gz like this is entirely up to the user: you could actually unzip it to /opt/ directly and run the install scripts from there. I could alter the install.sh to copy all of the unzipped files to a location like /opt despite its currently unzipped location, but you will have some seriously cranky Linux users to contend with.

RE Ubuntu, I don't really know why Unity isn't monitoring ~/.local/applications. I can call xdg-desktop-menu as part of the install / uninstall script, though.

core-ai-bot commented 3 years ago

Comment by jasonsanjose Wednesday Apr 23, 2014 at 16:36 GMT


Great work @radicaled! Thanks for your help.

A few suggestions for moving forward:

core-ai-bot commented 3 years ago

Comment by ingorichter Wednesday Apr 23, 2014 at 16:42 GMT


@jasonsanjose I have only tested it briefly yesterday on 64 bit Linux. So the symlink won't probably work 32 bit Linux.

core-ai-bot commented 3 years ago

Comment by radicaled Wednesday Apr 23, 2014 at 20:10 GMT


Latest changes should now register .desktop file for Ubuntu's Unity.

Let me know if it's OK: if not I will provision a fresh Ubuntu VM and take a closer look.

core-ai-bot commented 3 years ago

Comment by radicaled Thursday Apr 24, 2014 at 00:10 GMT


@jasonsanjose I can't find your comment, so I'm replying to it here:

What about the last script on this wiki page from node-webkit https://github.com/rogerwang/node-webkit/wiki/The-solution-of-lacking-libudev.so.0. Seems like reasonable approach without getting too gnarly?

I guess that works -- anyone running a distribution not in that list should have the know-how to perform the symlink themselves, I hope.

core-ai-bot commented 3 years ago

Comment by radicaled Thursday May 01, 2014 at 04:42 GMT


The install script has been augmented with the technique outlined here: https://github.com/rogerwang/node-webkit/wiki/The-solution-of-lacking-libudev.so.0

Seems to work beautifully.

What's next?

core-ai-bot commented 3 years ago

Comment by ingorichter Thursday May 01, 2014 at 06:35 GMT


I'll give a test run tomorrow morning. Thank you for working on this.

core-ai-bot commented 3 years ago

Comment by ingorichter Friday May 02, 2014 at 15:26 GMT


@radicaled This looks good to me and Brackets shows up in the menu. There are two things that could be added to the brackets.desktop file:

But these are nice to haves. If there are no other issues or objections, I'm going to merge it before we branch into release, since I'd like to build the archive for the upcoming release.