maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   General (https://talk.maemo.org/forumdisplay.php?f=7)
-   -   "Install here" : why Linux doesn't do it? (https://talk.maemo.org/showthread.php?t=63707)

TiagoTiago 2010-10-12 03:21

"Install here" : why Linux doesn't do it?
 
For ages now just about every program you install in Windows got an option in the install proccess to let you choose to install it in a different folder, why the **** it isn't like that in Linux?


This feels like another example of lazyness like the Y2K bug thing, but instead of the colapse of modern society now we gotta suffer with prograns installing into the extremelly limited internal drive....

stlpaul 2010-10-12 03:27

Re: "Install here" : why Linux doesn't do it?
 
But it is like that in Linux! When you compile a program you can almost always define the install directory. No problem.

Most linux Distro are built around FHS, and your distro's maintainers chose where to install the packages and when you are installing a pre-packaged binary, you're going by their rules.

http://en.wikipedia.org/wiki/Filesys...archy_Standard

Windows doesn't (really) have a well-defined filesystem layout, so stuff goes all over the place, PATH craziness, DLL hell, etc.

You can also symlink the files/directories to another place if you want to relocate it.

NvyUs 2010-10-12 03:28

Re: "Install here" : why Linux doesn't do it?
 
OP what solution are you proposing, how do you think it can be implemented?
looking forward to testing out you work.

TiagoTiago 2010-10-12 03:30

Re: "Install here" : why Linux doesn't do it?
 
What is so bad with installing anywhere I want, and having the option of adding folders to PATH when needed?

wmarone 2010-10-12 03:32

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838928)
What is so bad with installing anywhere I want, and having the option of adding folders to PATH when needed?

Because you're using a distribution which is designed to have software installed using a package manager. If you want to stick things anywhere you want, use something like LFS or Slackware. The side effect is you end up with a ton of extra entries in your path, and gain absolutely nothing.

aligatro 2010-10-12 03:34

Re: "Install here" : why Linux doesn't do it?
 
Actually, it really depends on the installer. For example, Google earth lets you choose where to install.

gerbick 2010-10-12 03:37

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by wmarone (Post 838930)
Because you're using a distribution which is designed to have software installed using a package manager. If you want to stick things anywhere you want, use something like LFS or Slackware. The side effect is you end up with a ton of extra entries in your path, and gain absolutely nothing.

I promise you that I'm not following you around today... but at first, I used to think (the bolded part) was a sign of conformity - but after almost a decade and a half of using Linux... you're right.

Installing in a ton of self-prescribed places in Linux, you gain absolutely nothing.

TiagoTiago 2010-10-12 03:43

Re: "Install here" : why Linux doesn't do it?
 
By installing wherever you want you gain freedom


Why adding lines to a path file is so much worse than manually moving and symlinking folders and files?

wmarone 2010-10-12 03:43

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by gerbick (Post 838933)
I promise you that I'm not following you around today... but at first, I used to think (the bolded part) was a sign of conformity - but after almost a decade and a half of using Linux... you're right.

Installing in a ton of self-prescribed places in Linux, you gain absolutely nothing.

It is, after all, why package managers were created. To let computers do the business of managing stuff that's installed on your system for you. The sort of thing computers are supposed to do.

About the only time not doing that is when you're using stuff that can't be installed via the package manager. Most common tool I see these days doing that is the Xilinx ISE/EDK suite, which installs itself quite cleanly into /opt.

Quote:

Originally Posted by TiagoTiago (Post 838935)
By installing wherver you want you gain freedom

I suppose, but there are far more important freedoms than randomly smattering your software around the filesystem. And nothing stops you, in any case.

TiagoTiago 2010-10-12 03:46

Re: "Install here" : why Linux doesn't do it?
 
And if we got a package manager, why it can't manage to keep a record of where things are installed?

wmarone 2010-10-12 03:50

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838937)
And if we got a package manager, why it can't manage to keep a record of where things are installed?

It, uh, does. By virtue of the package which lists where the files are to be installed. There's no sense in fighting what is generally a well laid out system.

If you want to toss files all over your disk, then you might prefer Linux From Scratch.

TiagoTiago 2010-10-12 03:51

Re: "Install here" : why Linux doesn't do it?
 
If it can keep track of installation folders, what's the big deal with having the option of using custom installation folders?

gerbick 2010-10-12 03:53

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838937)
And if we got a package manager, why it can't manage to keep a record of where things are installed?

It can... actually. But in it, you really gain really not much from it. Not speed, not anything really good nor bad will come of it.

RobbieThe1st 2010-10-12 04:01

Re: "Install here" : why Linux doesn't do it?
 
Point is, you can easily move things around yourself if you want. You can even recompile any package you want, and have the files elsewhere by default. Its just that each Linux version/setup has a usually-decent installation organization, and having all programs conforming to a standard is a -good- thing: It means you can usually -find- the file you are looking for, instead of having to search for it.
On the other hand, the way Nokia set things up with the N900... Not quite as good. Thanks to most everything needing to be on the EXT3 secondary FS, most all programs get stuck in /opt/ (which is itself actually /home/opt), and there is quite a bit of symlinking going on.

Also, remember that Linux has no "registry", like windows does. You can generally run an application from wherever you want, provided its able to find its supporting files(And provided its marked as executable) - So, you could probably move whatever program you want to the MyDocs FS(I assume that's the only reason you're complaining), and either just launch it directly, or symlink the executable to the origional directory.
The only issue you'll have is that it won't delete properly if you try to uninstall it, but that's because you are screwing things up in the first place by moving them somewhere it's not expecting.

ossipena 2010-10-12 04:09

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838940)
If it can keep track of installation folders, what's the big deal with having the option of using custom installation folders?

now you'll need to tell us why using custom installation folders would change anything in your use cases....

TiagoTiago 2010-10-12 05:38

Re: "Install here" : why Linux doesn't do it?
 
If offering the option of using a different folder was a common practice in the install process, needing to worry about whether a given program has been optified or not would be a thing of the past.

anthonie 2010-10-12 05:43

Re: "Install here" : why Linux doesn't do it?
 
There you go...
http://www.theiia.org/intAuditor/ita...linux-systems/

http://4.bp.blogspot.com/_T4Vb8FZ3Pm...erarchyhb8.jpg

Follow the trail and you will find answers to your questions, that is, insofar they haven't been answered yet.

B.T.W. Google is your friend...

wmarone 2010-10-12 05:44

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838964)
If offering the option of using a different folder was a common practice in the install process, needing to worry about whether a given program has been optified or not would be a thing of the past.

Well, we shouldn't have to optify in the first place. It's a kludge that is unique to the N900 and thus not a justification.

TiagoTiago 2010-10-12 05:54

Re: "Install here" : why Linux doesn't do it?
 
Why we aren't expected to have the freedom of installing things just about anywhere we want?

AlMehdi 2010-10-12 06:00

Re: "Install here" : why Linux doesn't do it?
 
OMG! Did someone just say this... The windows way is actually the one of the past. By not having order in your system you could cause all kinds of hell.

There is a script allowing you to have all of your rootfs in the 32gig memory. And if you like you could partition and make the 2gig opt/ space larger.

jflatt 2010-10-12 06:00

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838974)
Why we aren't expected to have the freedom of installing things just about anywhere we want?

Nothing is stopping you

anthonie 2010-10-12 06:08

Re: "Install here" : why Linux doesn't do it?
 
First off: the sentence should be "Why can't I expect to have the freedom, etc".
Second: Why are you not listening? Nor reading?

You have all the freedom you want to change things around, but you will run in to problems if you do not properly take care of the alterations you made to the way things are usually organised in the Linux hierarchy.

Hierarchies usually don't fall out of the blue sky for no reason, and some of these reasons have already been mentioned in this thread. If you want more reasons and ways around this hierarchy, study the links I provided earlier.

If you do not like to investigate people will soon grow really tired of repeated questions. After all, we are no answering-machines.

slender 2010-10-12 06:19

Re: "Install here" : why Linux doesn't do it?
 
@TiagoTiago

Try to understand following: As you can see from anthonieīs picture programs are not usually installed to ONE directory. They are scattered across different directories.

Moreover what do you gain from if you were able to install program to ONE directory. You could surf there with explorer or from cli and then what? What do you gain from all that? Now you have filesystem that puts config files to one directory (generally in your home directory) and executables to another. Actually IIRC home directory has been for ages place for different config files so if you backup ONLY your home directory you backup also all program settings. If system crashes just install everything back and pull home directory backup and you have specific programs back to configuration what you had before crash.

And as said you have total freedom because of symlinkin.

Optification is something that is specific to N900. No need to worry. Just use apps from extras. If you choose to install stuff from testing and devel, then as their description says, test and report and fix by yourself. And I bet that if we had option to choose where to install then quite many N900 would be pretty much breaking all over the world because of user errors.

benny1967 2010-10-12 06:22

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838923)
For ages now just about every program you install in Windows got an option in the install proccess to let you choose to install it in a different folder, why the **** it isn't like that in Linux?

Linux doesn't have anything to do with the way you install software. (In fact, it will not even know about software installed on your system.)

How it works is entirely up to the distribution and its package manager. The fact that distributions do follow the well-established standards here speaks for itself.

Still you're free to do it differently no matter which distribution you choose.... If nothing else helps, you could even re-compile the sources and give a new installation path.

Usually, things that restrict your freedom and could be done in a better way are instantly addressed by the community. The issue you brought up did not, so far, result in alternative package managers which include a "install in..." option. I therefore assume that what you propose was the initial problem and the situation we have now is everybody's solution to it.

TiagoTiago 2010-10-12 06:22

Re: "Install here" : why Linux doesn't do it?
 
Linux gives the user power to make a mess in so many way....why the need for additional steps just to change the install folder name or location?

I much rather how Windows installers work, by default they install where everyone installs, but they give you the option of doing differently at install time, without the need of recompiling things nor doing manual changes after the installation.
edit: oh and there is even a trend now for also offering the option of keeping config files in the install folder instead of in the shared folder for config files

mece 2010-10-12 06:27

Re: "Install here" : why Linux doesn't do it?
 
I have to agree somewhat with OP. An install here option would be pretty nice in some situations. Particularly when you run out of disc space and throw in another drive. I'm not saying I have solution or even that i require one, but sometimes it's annoying.

acvetkov 2010-10-12 06:33

Re: "Install here" : why Linux doesn't do it?
 
Why people are not reading?

The optification of the programs is a N900 specific issues. For which there are several workarounds. If you wish to change the way linux handles programs please sent an email to kernel.org. I would love to see the reply to that email :D.

Windows is a mess of programs thrown everywhere, f*cked up registries and fragementet FS. Linux keeps everything "clean" and in order why are you willing to change this?!

ysss 2010-10-12 06:35

Re: "Install here" : why Linux doesn't do it?
 
I think OP is mainly bothered with n900's partitioning issue (with the 'optify' workaround) and proposed a solution from something that he's familiar with (which unfortunately comes from the windows world).

So... let's not overreact..

slender 2010-10-12 06:36

Re: "Install here" : why Linux doesn't do it?
 
Hmmm. Might this has something to do with that in windows users generally like to make couple of different drives C/D/E and in linux environment people usually use whole hard disk without partitioning it (only perhaps home dir and swap of course).

.edit
And in the end we are fundamentally talking here about core of linux and how itīs File system is made and how different modules of apps are laid across file-system.
http://linux.oneandoneis2.org/LNW.htm

TiagoTiago 2010-10-12 06:37

Re: "Install here" : why Linux doesn't do it?
 
Why a centralized registry is worse than a bunch of files in a bunch of folders?

slender 2010-10-12 06:41

Re: "Install here" : why Linux doesn't do it?
 
Btw.
Here is some critique about application installation in linux
http://www.washingtonpost.com/wp-dyn...-2004Jul3.html

.edit
Oh dear looks like he had problems that I have not had for couple of years. Maybe something to do with 2004 year but who knows. 7-10 years ago I had similiar problems nowdays most of distroes go pretty well to my machines.

kitwalker 2010-10-12 06:42

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by mece (Post 838988)
An install here option would be pretty nice in some situations. Particularly when you run out of disc space and throw in another drive. I'm not saying I have solution or even that i require one, but sometimes it's annoying.

You can definitely change the install path. I'll give you a small example of what I did. I didn't want another daemon running, so I extracted qwerty12's headset-control deb package and copied the headset-control binary into my external sdcard (ext3 partitioned). So now, whenever I want to run the binary, I simply open xterm, cd to my sdcard and run ./headset-control. Works like a charm! See, application 'installed' to the path of my choosing. I also store some small bash scripts and c progs that I have created here, and execute them the same way.

anthonie 2010-10-12 06:45

Re: "Install here" : why Linux doesn't do it?
 
@non_reading_non_investigating_but_oh_so_intereste d_thread_participants...

If you would have used google, preferably with the right operators, you would have been able to figure out the way you can install programs where you want them installed. This does come at a price, however, and considering the way people are dealing here with the information provided, I would not, repeat not recommend you to do this, but if you insist, download the source, rather than the package.

From that point on, you can use
Code:

./configure --prefix=/where_ever/you_want
Of course, provided you have or know how to gain the rights to write to that location.

If you don't like this, I can only advise you to stop complaining about why only balls can roll or make your cube roll by sheer will power...

mece 2010-10-12 07:01

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by kitwalker (Post 839002)
You can definitely change the install path. I'll give you a small example of what I did. I didn't want another daemon running, so I extracted qwerty12's headset-control deb package and copied the headset-control binary into my external sdcard (ext3 partitioned). So now, whenever I want to run the binary, I simply open xterm, cd to my sdcard and run ./headset-control. Works like a charm! See, application 'installed' to the path of my choosing. I also store some small bash scripts and c progs that I have created here, and execute them the same way.

Of course you can. But on the occasion that you need to install something and you don't have enough disk space, it would be nice to have an option. I have resorted to wget the package and manually unpacked it, and stuff like that, but it's not something I enjoy doing. Especially when I'm in a hurry.

ossipena 2010-10-12 07:24

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838974)
Why we aren't expected to have the freedom of installing things just about anywhere we want?

you are 110% free to recompile apps and make the installer install files anywhere you want. so what gives?

johnel 2010-10-12 08:12

Re: "Install here" : why Linux doesn't do it?
 
Don't most package managers allow you to install to different folders?

RPM:
rpm --prefix=/home/chroot/ bind-chroot*.rpm

or use the --root command-line option to install *.deb to a different folder.

Bearing in mind that most software packages look in "/etc" for configuration - ou would have to symbollicly link the config file.

Also by having everything in one place means that writing scripts to find stuff is easier or physically checking a program "exists" via a script is easier too.

I've used Windows since the very first version and when Microsoft decided to put configuration into a "registry" it means:
(1) you need specfic tools to change entries - with linux a simple text editor will suffice
(2) a single point of failure - its easy to trash the registry and stop many of your installed programs from working properly

I prefer the Linux way of doing things: one central place to install stuff with known standards and each program is responsible for it's own configuration file.

Thats the beauty of it - you are free to choose the method appropriate for you.

You can even slice and dice your Linux partition - your "home" folder can have it's own partition even "usr" - it's up to you.

nicolai 2010-10-12 09:08

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838986)
I much rather how Windows installers work, by default they install where everyone installs, but they give you the option of doing differently at install time, without the need of recompiling things nor doing manual changes after the installation.

Ha ha ha.

And what does this "install here" actually mean?
You end up with
DLL files in WINDOWS/SYSTEM32
links and files in C:\Documents and Settings
some in C:\Users\Default\Local Settings
and in C:\Documents and Settings\<user>\Local Settings\Application
and some of this files and directories are hidden system folders.


nicolai

lma 2010-10-12 09:28

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by johnel (Post 839053)
Don't most package managers allow you to install to different folders?

RPM:
rpm --prefix=/home/chroot/ bind-chroot*.rpm

or use the --root command-line option to install *.deb to a different folder.

That's mostly meant for distribution installation or recovery (when your active root fs isn't the same as the root fs of the distribution you're maintaining). It isn't that great for instaliing a package to arbitrary locations and expecting it to work without lots of manual fiddling afterwards.

RPM also supports the notion of "relocatable packages" which can do what the OP wants (provided the packager spent a little bit of extra effort to make the packages relocatable), but that's not going to help until "real" MeeGo comes along at least.

benlau 2010-10-12 09:29

Re: "Install here" : why Linux doesn't do it?
 
I think that the package system , no matter it is deb or rpm , is good for open source system. It has minimized the space required , and it can get software easily.

Setup an new Ubuntu system is a pretty simple task , whatever you found that a software is not installed , you can open synaptic and search for the download. You won't need to find it from Google, from different site.

However, it has its disadvantage , you can not enjoy the newest software , you need to wait until the package manager is free to pack the software for you. For example , Firefox , you may need to wait for few days to weeks for newest version.

But I don't like windows installer , I think mac's dmg is more flexible solution of software installation. And such solution is already available on Linux:

http://www.elementary-project.com/wi...itle=AppImages

AlMehdi 2010-10-12 09:33

Re: "Install here" : why Linux doesn't do it?
 
Quote:

Originally Posted by TiagoTiago (Post 838986)
Linux gives the user power to make a mess in so many way....why the need for additional steps just to change the install folder name or location?

I much rather how Windows installers work, by default they install where everyone installs, but they give you the option of doing differently at install time, without the need of recompiling things nor doing manual changes after the installation.
edit: oh and there is even a trend now for also offering the option of keeping config files in the install folder instead of in the shared folder for config files

What happens if you format the c:\ drive?


All times are GMT. The time now is 16:23.

vBulletin® Version 3.8.8