Pages: 1 2 »
  Print  
Author Topic: I made a install script for Ubuntu.  (Read 3106 times)
Offline (Male) SuperRiderTH
Posted on: June 03, 2014, 06:52:25 PM

Member
Joined: May 2013
Posts: 26

View Profile
I made a script that checks for dependencies.
It requests to install them using apt-get if needed, clones the git to enigma-dev, and creates a desktop shortcut.

https://dl.dropboxusercontent.com/u/88790752/InstallEnigma.sh

https://github.com/SuperRiderTH/enigma-linux-installer

This works in Ubuntu, along with distros that use apt-get. It can be easily modified to work on other distros if needed, but I have no experience using other package managers so they are not implemented.

Video showing it in action:
https://www.youtube.com/watch?v=SRpq4p1_zaU
« Last Edit: June 06, 2014, 12:16:14 AM by SuperRiderTH » Logged
Offline (Male) Goombert
Reply #1 Posted on: June 04, 2014, 12:40:44 AM

Developer
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 3107

View Profile
Awesome, maybe we can use your assistance when building a package for the software center.
Logged
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.

Offline (Male) SuperRiderTH
Reply #2 Posted on: June 05, 2014, 08:06:20 PM

Member
Joined: May 2013
Posts: 26

View Profile
It might be possible to make a deb file that runs the script. I have not looked into it, but since a desktop icon can make a terminal appear, then we could do it that way. Could just make a package that is the installer script, and make it remove itself upon completing the installation.

I put the script on GitHub for bug reporting, and other GitHub fun. (And so I don't lose it...) I also added a question to the script that asks if the user wants to install libcurl to use network functions.

https://github.com/SuperRiderTH/enigma-linux-installer
Logged
Offline (Male) Rusky
Reply #3 Posted on: June 05, 2014, 08:52:42 PM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
The problem with just running a script as a .deb is then you can't upgrade or uninstall the package.
Logged
Offline (Male) SuperRiderTH
Reply #4 Posted on: June 05, 2014, 10:52:45 PM

Member
Joined: May 2013
Posts: 26

View Profile
Well then how about running the installer script, then having an launcher script that checks the git on startup, then starts LateralGM?
Logged
Offline (Male) edsquare
Reply #5 Posted on: June 05, 2014, 11:01:25 PM

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
Well then how about running the installer script, then having an launcher script that checks the git on startup, then starts LateralGM?

That would be almost ideal, add a script that unistalls and cleans your system of every enigma file and folder, and is almost as good as having a true .deb on launchpad.
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Offline (Male) Rusky
Reply #6 Posted on: June 05, 2014, 11:11:39 PM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
I infinitely prefer true packages to project install scripts on Linux, to the point that if it's not a project I know much about I will simply ignore it if it requires an install script. Having a package, while inconvenient to maintain, makes me as a user trust that it won't screw everything up because the dependencies will be managed correctly, I'll have tools to see exactly what it did, I'll be able to trust the uninstaller not to leave junk lying around, and it will automatically get upgraded as part of my normal OS maintenance.
Logged
Offline (Male) edsquare
Reply #7 Posted on: June 05, 2014, 11:18:53 PM

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
I infinitely prefer true packages to project install scripts on Linux, to the point that if it's not a project I know much about I will simply ignore it if it requires an install script. Having a package, while inconvenient to maintain, makes me as a user trust that it won't screw everything up because the dependencies will be managed correctly, I'll have tools to see exactly what it did, I'll be able to trust the uninstaller not to leave junk lying around, and it will automatically get upgraded as part of my normal OS maintenance.

Except if it's wine, which forces you to rm -rf .wine in order to remove it's configuration files. And also (if I'm not mistaken) SPE (Stany's Python Editor) and Spyder do the same thing, install other programs (XRCE and pycrust) and force you to uninstall them by shear luck and a lot of balls.
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Offline (Male) Rusky
Reply #8 Posted on: June 05, 2014, 11:23:38 PM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
Typically, uninstalling something will leave its configuration files and other similar things. This is fine with me, because there's also typically a separate option in the package manager to remove configuration files as well. I have never encountered a program that I installed through the package manager of any distro that gave me any trouble uninstalling or removing config files.
Logged
Offline (Male) SuperRiderTH
Reply #9 Posted on: June 05, 2014, 11:57:52 PM

Member
Joined: May 2013
Posts: 26

View Profile
I changed the installer so that it installs ENIGMA to a folder called ENIGMA like the Windows portable zip. I also made it create a LaunchEnigma.sh file which checks for git updates then launches LateralGM. The desktop shortcut is also modified to launch the LaunchEnigma script.
Logged
Offline (Male) edsquare
Reply #10 Posted on: June 06, 2014, 12:26:55 AM

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
Typically, uninstalling something will leave its configuration files and other similar things. This is fine with me, because there's also typically a separate option in the package manager to remove configuration files as well. I have never encountered a program that I installed through the package manager of any distro that gave me any trouble uninstalling or removing config files.

Really? then you haven't tried wine or any of the other I mention, or if you did then you haven't uninstalled them, I tell you even after checking uninstall completely including configuration files they leave behind traces, in the case of SPE it leaves one program and you have to hunt it down and then uninstall it, and it doesn't apear in the menu anymore even but it is there (Been there done that).
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Offline (Male) edsquare
Reply #11 Posted on: June 06, 2014, 12:28:32 AM

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
I changed the installer so that it installs ENIGMA to a folder called ENIGMA like the Windows portable zip. I also made it create a LaunchEnigma.sh file which checks for git updates then launches LateralGM. The desktop shortcut is also modified to launch the LaunchEnigma script.

The only problem with the git updates is that they may breack something, but even so great job and many thanks will be trying the latest version of your script real soon.
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Offline (Male) Rusky
Reply #12 Posted on: June 06, 2014, 10:10:37 AM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
I use wine all the time. How are you uninstalling it? The fact that you say "checking uninstall completely including configuration files" makes me suspect it's not through your distro's package manager.

As for git updates, it might be nice if the auto updater didn't just update to master, but only to releases tagged as stable. At this point that's not really practical for people to check everything on every commit they make, but if there were some automated testing or even just continuous integration testing to check that it *builds* at all, we could auto tag those commits.
Logged
Offline (Male) edsquare
Reply #13 Posted on: June 06, 2014, 05:29:34 PM

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
I use wine all the time. How are you uninstalling it? The fact that you say "checking uninstall completely including configuration files" makes me suspect it's not through your distro's package manager.

It doesn't matter how I uninstall wine, synaptic, apt-get or aptitude, it always leaves it's configuration files around and even other things, to really get rid of everything you must do sudo rm -rf .wine. You can check it really easy, install something you don't really want, then uninstall wine, then reinstall.

As for git updates, it might be nice if the auto updater didn't just update to master, but only to releases tagged as stable. At this point that's not really practical for people to check everything on every commit they make, but if there were some automated testing or even just continuous integration testing to check that it *builds* at all, we could auto tag those commits.

My point exactly, if every time I start enigma it autoupdates the update could (potentially) breack something, if we had branches (stable, testing, development) then it would not matter at all.
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Offline (Male) edsquare
Reply #14 Posted on: July 18, 2014, 02:14:10 PM

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
The old version does not install nor create desktop sortcut  :(
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Pages: 1 2 »
  Print