Story Details

  • How I install personal versions of programs on Unix

    Posted: 2025-04-12 07:01:56

    The author details their method for installing and managing personal versions of software on Unix systems, emphasizing a clean, organized approach. They create a dedicated directory within their home folder (e.g., ~/software) to house all personally installed programs. Within this directory, each program gets its own subdirectory, containing the source code, build artifacts, and the compiled binaries. Critically, they manage dependencies by either statically linking them or bundling them within the program's directory. Finally, they modify their shell's PATH environment variable to prioritize these personal installations over system-wide versions, enabling easy access and preventing conflicts. This method allows for running multiple versions of the same software concurrently and simplifies upgrading or removing personally installed programs.

    Summary of Comments ( 11 )
    https://news.ycombinator.com/item?id=43662031

    HN commenters largely appreciate the author's approach of compiling and managing personal software installations in their home directory, praising it as clean, organized, and a good way to avoid dependency conflicts or polluting system directories. Several suggest using tools like stow or GNU Stow for simplified management of this setup, allowing easy enabling/disabling of different software versions. Some discuss alternatives like Nix, Guix, or containers, offering more robust isolation. Others caution against potential downsides like increased compile times and the need for careful dependency management, especially for libraries. A few commenters mention difficulties encountered with specific tools or libraries in this type of personalized setup.