Bloody Linux! Just install the program/software
-
@Dashrender said:
The desire to work around broken installers seems like a red herring itself. The desire should be to install the software.
Then doesn't that go against your Windows logic? That not working at all is "easy"? If the goal is to get it to work no matter what, Linux is easier and/or more possible. If the goal is to have it be "too hard to keep trying", I guess Windows is easier but only because you control the point at which you decide to "give up."
Bottom line, for equal tasks Linux is easier in every situation I've ever had proposed.
-
@scottalanmiller said:
And talk about safety differences, on Linux you don't get mislead to download from the wrong place. The repos are protected so you know you are getting your packages from where you think that you are.
This is definitely a huge win. One that I hope MS will take advantage of with their store - mostly how the iPhone store has.
-
@Dashrender said:
This isn't to say that installing on Linux can be easier - but even using "yum install xyz" requires you to know the exact name of xyz. and where does that come from? Generally a webpage, just like downloading an installer for a Windows program often does.
This only seems hard because you did the thing that I mentioned.... you are applying the "Windows way".
You can...
- Know what you are installing (how do you do that in Windows anyway?)
- Use the GUI and find it through all kinds of search and list options.
- Use text searches.
Every method you can use with Windows, Linux can use plus several that are easier. Yes, in a worst case scenario, Linux falls back to being "as hard as Windows", but that's the worst case. It is always "as hard or easier", never harder.
-
@scottalanmiller said:
@Dashrender said:
The desire to work around broken installers seems like a red herring itself. The desire should be to install the software.
Then doesn't that go against your Windows logic? That not working at all is "easy"? If the goal is to get it to work no matter what, Linux is easier and/or more possible. If the goal is to have it be "too hard to keep trying", I guess Windows is easier but only because you control the point at which you decide to "give up."
Bottom line, for equal tasks Linux is easier in every situation I've ever had proposed.
But there was no installer for the OP. That's what we're talking about here, things that aren't in the repo... instead it's something that he has to download and run scripts, etc.
If that was a Windows app, it's true the windows app might not install all of the dependencies, but you'd probably be given a list - but you will almost never be given a script to run and hope it works.
It's the "there's only one way to skin a cat" thinking - windows is one way - the installer file, Linux can be any number of ways, one of which is the installer file. Of course you're probably going to say Windows is the same way, and sure that is true, you can install multiple ways, but those other ways are just rare, flat out rare.
-
@scottalanmiller said:
@Dashrender said:
This isn't to say that installing on Linux can be easier - but even using "yum install xyz" requires you to know the exact name of xyz. and where does that come from? Generally a webpage, just like downloading an installer for a Windows program often does.
This only seems hard because you did the thing that I mentioned.... you are applying the "Windows way".
You can...
- Know what you are installing (how do you do that in Windows anyway?)
- Use the GUI and find it through all kinds of search and list options.
- Use text searches.
Every method you can use with Windows, Linux can use plus several that are easier. Yes, in a worst case scenario, Linux falls back to being "as hard as Windows", but that's the worst case. It is always "as hard or easier", never harder.
This I all agree with.
The trusted sources of the repos is great - something Windows is sorely lacking. -
@Dashrender said:
But there was no installer for the OP. That's what we're talking about here, things that aren't in the repo... instead it's something that he has to download and run scripts, etc.
Okay so.... if this was Windows and there was no installer, what would you do?
-
@Dashrender said:
If that was a Windows app, it's true the windows app might not install all of the dependencies, but you'd probably be given a list - but you will almost never be given a script to run and hope it works.
You'd probably be given a list. On Linux you'd probably not even need a list. But we are already outside of the probably world. So in Windows, apples to apples, how would this not be much harder?
-
@Dashrender said:
It's the "there's only one way to skin a cat" thinking - windows is one way - the installer file, Linux can be any number of ways, one of which is the installer file. Of course you're probably going to say Windows is the same way, and sure that is true, you can install multiple ways, but those other ways are just rare, flat out rare.
I don't agree. Why? Because this is available in identical GIT format for both. Is the Windows way easier? I doubt it. Windows is no more "one way" than Linux.
This is a perfect example case. We are dealing with the same installer for both.
-
Also... and this may be just me. Why is Windows so much harder to update then Linux? I've been sitting on a Windows update screen for 15 minutes with no progress. If this were Linux I would at least have an error by now.
-
@hobbit666 said:
So set-up a new VM with Centos7, set-up networking, disabled firewalls while testing. Can I get the Snipe-IT software to install and run?????? Can I heck!
What issue did you run into specifically? It worked "out of the box" for me. I'm still getting more stuff done with it, but the spot where you are stuck it "just worked." Do you have more details as to what you did or were testing?
-
So there is an issue with the install possibly breaking with the database portion. If you search on the issue it is our own @Ambarishrh that reported it!!
-
@Dashrender said:
Of course you're probably going to say Windows is the same way, and sure that is true, you can install multiple ways, but those other ways are just rare, flat out rare.
And the entire point you miss here is that the OP went out of his way to this rare state in Linux. The fact that by its very nature Linux makes it easier to get to this point is why so many people do it and fail.
If people would simply stop and not do it when it fails then the software developers would step up. See my recent thread on installing ownCloud 8.2. Because of my choice to use CentOS 7, the simple process was broke. Instead of give up, I spent the extra time to find the problems and MANUALLY resolve them. To do something like this in windows, would typically be much more difficult.
-
@scottalanmiller said:
So there is an issue with the install possibly breaking with the database portion. If you search on the issue it is our own @Ambarishrh that reported it!!
That bug was closed with no resolution noted.
-
@JaredBusch I know I'm hoping that he can respond here and remember what was done.
Andi 've verified that it is not an SELinux issue.
-
Now the resolution is there
-
Full CentOS 7 install instructions here: http://mangolassi.it/topic/6967/installing-snipe-it-on-centos-7-and-mariadb
Worked like a charm here.
-
The install is super simple once you know there is a final app install step to populate the user in the database. The system has its own installer that takes care of everything except telling you to run that one final command.
-
So now that we've seen how simple this install is on Linux, want to compare to what the Windows people would have to have done?
-
Here is the full install on Linux: yum -y install epel-release; mkdir -p /var/www/html; cd /var/www/html/; wget https://raw.githubusercontent.com/snipe/snipe-it/master/install.sh && chmod 744 install.sh && ./install.sh && cd snipeit; sed -i "s/'timezone' => '',/'timezone' => 'UTC',/" app/config/app.php; php artisan app:install
Take note that that is literally every step for a system from "out of the box" to "running server all ready to be used." It even includes all of the necessary downloads from a third party, dependencies, extra packages and even the one manual configuration that the system needs.
Let's compare to the "Windows way" and what it would take at a minimum to accomplish this:
- Find a database of choice
- Go to website, find correct version of database
- Download database
- Install database software
- Create database manually
- Secure database
- Manually remove anonymous database users, test databases, etc.
- Create database user
- Set database user permissions
- Go to a website to find PHP
- Download PHP, must be sure to get right version
- Install PHP
- Go to a website and find PearDB
- Download PearDB
- Install PearDB
- Find list of PHP and PearDB modules that are needed
- Install needed modules (this is a step of unknown complexity.)
- Go to a website and find GIT
- Download GIT
- Install GIT
- Go to a website and find appropriate web server (or use IIS)
- Download and install webserver or add IIS role
- Configure webserver for the desired directory
- Create application directory
- Go into directory
- GIT Clone the Snipe-IT application into directory this is the first Snipe specific step
- Open Notepad and manually edit config file for time zone
- Open Notepad and manually edit database details with those you stored previously
- Start web server
- Start database
- Run Snipe-IT configuration utility from the command line (CMD or PS)
At this point we assume that the installation would work. As Linux handled all dependencies under the hood we don't know for sure that we got them all here and we are just assuming that this process would work. It is just known that these steps are the bare minimum to do this the Windows way. Some of these steps sound simple like "install database" but might be complex and time consuming on their own. And getting correctly matching application server, application platform, modules, extensions and databases with their libraries all correct may be simple or complex and getting the right downloads from websites could be difficult potentially.
I think that it is often overlooked that "hard" Linux installs often involve doing a huge amount of work that in Windows is views as an unrelated task (downloading and installing the platform, database, etc.) With an install like this, that one line Linux install gets not only the application but the entire stack on which it runs and even sets it up for a working, default install.
-
It's unfair to compare your one line Linux install to a windows install - at best I think you have to call it a merged line install. That single line is doing many of the steps you mention in the Windows install.
Granted, even with a great installer, often Windows users will have to interact with the installer for several steps, but it's also possible that the developer designed the installer to accept command line parameters that would prevent the need to interact with the installer.
Additionally, clearly this installer for Snipe-IT does NOTHING for you. In fact, from what I can tell there is no installer, you're pulling exe files from GIT.
I'm not sure if epel-release is installing the DB and PHP and PearlDB and the modules or if ./install.php is doing that?
Assuming ./install.php is doing that, then I'd say that the developer for Snipe-IT has spent a lot more time creating an installer that takes care of those things for you. Until the dev does the same thing for Windows, this is nor a fair comparison.