topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Saturday December 14, 2024, 11:44 pm
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: Per-User Software Installation (and the like...) Under *NIX  (Read 12396 times)

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
I'm hoping to hear from others who are interested in this topic -- hopefully about actual usage whether current or past :)

Been using the toast [1] tool for a while after having investigated to varying degrees the following:

  • paco
  • alien
  • src2pkg
  • src2pkg-ng
  • checkinstall
  • GNU Stow
  • ESP Package Manager
  • Smart Package Manager
  • OpenPKG

My own usage is under Debian (and a bit of Gentoo).  Some use cases include:

  • Want to use a more up-to-date version of something (and/or would like to patch), but would like to be able to cleanly remove traces / disable / enable
  • Want to use something on a host which lacks that something, but don't have administrative privileges -- and even if I did, don't want to impact other users' environments

Please share stories!



Version: 1.484
MD5: b66e07cd2839177cb644455cc42be3ca
SHA1: 30ec7216cd62b227b51a2ed4ec08641393454f4c



[1] The best introduction to toast I've encountered so far is the article:

  Installing and tracking software updates with toast

If interested, I recommend looking at the toast manual after reading the article.
« Last Edit: April 25, 2012, 01:53 AM by ewemoa »

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #1 on: April 25, 2012, 03:38 AM »
Zero Install looks like another possibility.

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #2 on: May 20, 2014, 06:59 AM »
Just learned about Gentoo Prefix and have been testing the Nix package manager.  These both have the advantage of being actively maintained...

Edvard

  • Coding Snacks Author
  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 3,022
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #3 on: May 20, 2014, 09:39 PM »
By hand.  >:( ;D

Seriously, I have a lot of packages that I've compiled from source because A) they weren't in the repos, or B) the version in the repos lacked a desired feature.  I'm a bit paranoid about mixing package managers, so Toast (interesting as it looks) prolly won't be my cup of tea (though I will take a look).
Also, my favored per-user installation directory is already provided; ~/.local, so if the compilation process is the ubiquitous "./configure && make && make install" sort, I'll do ./configure PREFIX=/home/edvard/.local instead.

Oftentimes folks use a different build system like cmake or waf, which throws a monkey wrench in, but similar 'install to non-default directory' functionality is usually there so a little read through the man pages and I'm good.
If it's something that just compiles to a single executable, I just move it to my personal bin directory, ~/.local/bin.
In the case of Lazarus, it likes to be installed to /usr/lib/lazarus by default, but I just compiled and moved the whole source directory with executables (the source is required for adding components) to ~/.local/lib/lazarus.

Every once in a while, I'll find a program that doesn't like being where it's put, and I have to write a shell script that sets LD_LIBRARY_PATH so it can find things, but I've discovered chrpath lately, which allows you to change the rpath inside the executable, which keeps things a bit cleaner.

... And then there are those times when I simply download a binary package and unpack it, because I don't feel like installing it or I want to see if it the executable really needs all those !@#$%& dependencies...

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #4 on: May 21, 2014, 03:20 AM »
I'm a bit paranoid about mixing package managers, so Toast (interesting as it looks) prolly won't be my cup of tea (though I will take a look).

I don't recommend toast now -- other things look more promising and maintained.



One of the aspects of using a package manager I appreciate is being able to cleanly remove packages -- so I like having a package manager that makes it easy to create packages for because often what I want to try is not packaged yet.  Even with Arch's AUR or Gentoo's overlays, there's still stuff people haven't gotten around to packaging (or in some cases may be they have but not shared their results).  PKGBUILDs and .ebuilds are way easier to put together than .debs IMO.



Thanks for the tip regarding chrpath -- hopefully I won't have to use it much, but it sounds like it could be handy!

Edvard

  • Coding Snacks Author
  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 3,022
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #5 on: May 21, 2014, 09:10 PM »
One of the aspects of using a package manager I appreciate is being able to cleanly remove packages -- so I like having a package manager that makes it easy to create packages for because often what I want to try is not packaged yet.

Totally agree.  Apt-get purge <package> is sometimes my best friend.  When I go about installing the hard way, I either keep the source folder around so I can do a 'make uninstall' later, or I build an uninstall script from scratch and tuck it away in ~/.local/bin for later use.

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #6 on: May 21, 2014, 10:33 PM »
When I go about installing the hard way, I either keep the source folder around so I can do a 'make uninstall' later, or I build an uninstall script from scratch and tuck it away in ~/.local/bin for later use.

Yes, this makes sense -- it's too bad that the uninstall target isn't always there.

Repeating this type of activity after a while can lead to wondering whether putting together PKGBUILDs, .ebuilds, or Nix packages might be worth the effort :)

Edvard

  • Coding Snacks Author
  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 3,022
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #7 on: May 21, 2014, 11:57 PM »
Yes, it's frustrating when the 'uninstall' target is not in the make file, but I can build an uninstall script (just a bunch of 'rm -rf' lines in a shell script) in less time than it takes me to build a binary .deb, which I have done when the situation calls for it (very few of 'em pass lintian, but as long as I know what's going on, I'm okay with that).

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #8 on: May 22, 2014, 02:55 AM »
Yes, it's frustrating when the 'uninstall' target is not in the make file, but I can build an uninstall script (just a bunch of 'rm -rf' lines in a shell script) in less time than it takes me to build a binary .deb, which I have done when the situation calls for it (very few of 'em pass lintian, but as long as I know what's going on, I'm okay with that).

I haven't always found it easy to know exactly what files get installed (to know what to remove later).  IIRC, there are some programs that try to help with this during installation (e.g. checkinstall) -- but may be you knew about this sort of thing already :)

Edvard

  • Coding Snacks Author
  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 3,022
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #9 on: May 22, 2014, 09:30 PM »
Ah, I'm talking mostly about applications I can set a custom install prefix for.  Usually, I make a 'target' directory in the source tree and install to that (./configure --prefix=/home/edvard/src/sourcefolder/target), then do a 'find ./target > list.txt' and then massage the list.txt file into a remove script.  If I intend to install to the filesystem proper, I make damn sure it's got a 'make uninstall' option first.
 :Thmbsup:

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #10 on: May 23, 2014, 07:55 AM »
May be you have the makings of tool :)



On a slightly related note...I wanted to try the latest version of Sigil but found that it depends on Qt5 -- which appears to require a bit more work than I want to go through to install.  The work-around?  Run the Windows portable version of Sigil via Wine...

Edvard

  • Coding Snacks Author
  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 3,022
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #11 on: May 23, 2014, 05:30 PM »
...
On a slightly related note...I wanted to try the latest version of Sigil but found that it depends on Qt5 -- which appears to require a bit more work than I want to go through to install.  The work-around?  Run the Windows portable version of Sigil via Wine...

;D ;D ;D

The title of that workaround is "Rube Goldberg"  :Thmbsup:

40hz

  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 11,859
    • View Profile
    • Donate to Member
Re: Per-User Software Installation (and the like...) Under *NIX
« Reply #12 on: May 23, 2014, 06:29 PM »
...
On a slightly related note...I wanted to try the latest version of Sigil but found that it depends on Qt5 -- which appears to require a bit more work than I want to go through to install.  The work-around?  Run the Windows portable version of Sigil via Wine...

;D ;D ;D

The title of that workaround is "Rube Goldberg"  :Thmbsup:

And deserves a round of applause. That's my kind of hack: Sod pretty - just get the job done.


 Like the Clash so famously said: "F*** Art. Let's dance!"
 :Thmbsup: :Thmbsup: