HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
byrongibson
scripts
HISTORICAL RECORD2012–2015
byrongibson / scripts · Not publicly available

scripts

Discover this repository through its Hacker News conversations.

2Distinct people
9Mentions
1Explicit recommenders
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A public description has not been verified.

Where it is used

No documented product use has been verified yet.

What people are saying

One of the things I love about the Debian ecosystem is that there's a tool that's even better than what this post recommends. Debian update-alternatives, available on any…

SkyMarshal used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year9 dated mentions

Observed mentions: 2012-05-04 15:47:11 UTC to 2015-09-04 17:06:54 UTC.

012342012-01-01 00:00:00 UTC to 2013-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments20122013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments20132014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2015

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20122012-01-01 00:00:00 UTC2013-01-01 00:00:00 UTC303
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC404
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC101
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC101

What Hacker News says

9 sources
Fwiw it's worth learning how to use the excellent Debian Alternatives [1] system to install stuff not in the repo's. Download the precompiled binary, or download the source and compile it, put in $HOME, /opt, or wherever you want, then use update-alternatives to soft link it into the standard system directories (/usr, /usr/bin, /usr/local, etc). You can manage and toggle between multiple versions of the same software that way, including the repo version, and lots more benefits, see github readme below. Intro: https://www.debian-administration.org/article/91/Using_the_D... Example setup scripts: https://github.com/byrongibson/scripts/tree/master/install/h... [1]:https://wiki.debian.org/DebianAlternatives
In How JetBrains Lost Years of Customer Loyalty in Just a Few Hours
Another alternative is just bypass the Deb repo's altogether and install from source, but do so using the awesome Debian Alternatives tool [1] so as not to drop a bunch of unmanaged files into /usr/bin, /usr/local/bin, etc. Takes some setup work, but very powerful and useful after you get it working. Example scripts: https://github.com/byrongibson/scripts/tree/master/install/h... https://github.com/byrongibson/scripts/tree/master/install/j... https://github.com/byrongibson/scripts/tree/master/install/s... Can do similarly with any other package. Download and compile the source to --prefix=/opt/name/version, look at the /opt structure (it will mirror /usr/bin, /usr/local/bin/, /usr/share/man) and script the update-alternatives command correspondingly. Tons of benefits, among them being better post-install startup control, but also you c
Read the rest
an install multiple versions side-by-side and swap among with a single command. Upgrade painlessly, rollback if the new version breaks things, all very easily. Reminiscent of Gobo Linux [2] but still a Debian. [1]:https://wiki.debian.org/DebianAlternatives [2]:https://en.wikipedia.org/wiki/GoboLinux
In Install Debian packages without starting daemons
Since you're on Debian and are already putting it in /opt, try the Debian Alternatives tool [1], it's great for managing multiple versions of software you don't install from Deb repos. It lets you put multiple versions of the same program in /opt or anywhere else (say, /opt/firefox/25, /opt/firefox/26, etc) and config one of them to be the system version (soft links all the bins and man into /usr/bin, /usr/local/bin, /usr/share/man, etc), then swap between versions, rollback if there's a problem, etc as necessary with a single command: `update-alternatives --config firefox`. It works very similarly to those Ruby version managers, RVM and RBENV, by holding multiple versions somewhere out of the way and soft-linking the chosen one into the system folders. So similar in fact, that the Debian repo RBENV package has been rewritten to use Deb
Read the rest
ian Alternatives instead of its home-brewed linker code. Takes some upfront setup but that's scriptable and reusable for all subsequent versions [2], and is well worth it, especially for programs where you don't want to use the Debian repo version, don't want to install a 3rd party .deb, and don't want to compile directly to your system folders. [1]: https://wiki.debian.org/DebianAlternatives [2]: https://github.com/byrongibson/scripts/tree/master/install/h..., https://github.com/byrongibson/scripts/tree/master/install/j..., https://github.com/byrongibson/scripts/tree/master/install/s...
In Firefox 26 is released
Since you're on Debian you can use the awesome Update Alternatives to install Haskell, which is an even better way in my opinion: https://github.com/byrongibson/scripts/blob/master/install/h... Tons of advantages to doing it that way, including the ability to easily maintain multiple versions of both GHC and Platform on the same system and swap between them with a single command. Also doesn't clutter up /usr/local/ with binaries not managed by apt or dpkg. More generally, update-alternatives is a godsend for Stable users. It's like RVM or RBENV in the Ruby world - lets you install and manage multiple versions of the same platform and easily swap between them with a single command, including the system version from repos if you want. It frees you from out of date software in the repos while still providing a system to manage the complex
Read the rest
ities of it all.
In Mio: A High-Performance Multicore IO Manager for GHC [pdf]
Ditto everything. I also use gnome-do launcher and vim keybindings for everything, making my UI 95% keyboard driven and whatever the window manager is irrevelant. Unity? Gnome3? Mate? Etc. Couldn't care less, all the same to me. >private package archives Personal Package Archives [1] actually, but another good point. Between the Debian and Ubuntu repos, Ubuntu PPAs, and the awesome Debian tool Update Alternatives [2], I can install any piece of software, packaged or not, and even multiple versions simultaneously and change the active version with a single command line command [3]. I don't know if the Red Hat or Open Suse ecosystem has something like this, but I'd have a hard time switching to something else without an equivalent. [1]: https://help.launchpad.net/Packaging/PPA [2]: http://www.debian.org/doc/manuals/debian-faq/
Read the rest
In Why I’m Leaving Ubuntu for Debian
SkyMarshal·Sep 12, 2012Recommendation phrase
One of the things I love about the Debian ecosystem is that there's a tool that's even better than what this post recommends. Debian update-alternatives, available on any Debian-derived distro. update-alternatives allows you to compile or unzip software to somewhere obscure and safe, like /opt, then soft-link it to /usr/local with update-alternatives --install. The benefits: 1. You can slave all dependencies to the main binary, so that they can all be removed with update-alternatives --remove. 2. You can install multiple versions simultaneously (including the system version), flag one as active, and toggle between them easily with update-alternatives --config. 3. #2 lets you upgrade to a new version (say of Java, Scala, Haskell, whatever) without uninstalling or overwriting the current version, and if the new version breaks your app
Read the rest
you can toggle back to the known working version with a quick update-alternatives --config. 4. Keep all the files together in their own directory, like /opt/java/jdk/1.7.0_07, instead of strewn all across /usr/local, /usr/bin, /usr/lib, /usr/share, etc. Soft link them instead into their appropriate locations. I created update-alternatives install scripts for Haskell Platform [1], Java [2], and Scala [3] for anyone interested in seeing more how it works. [1]: https://github.com/byrongibson/scripts/tree/master/install/h... [2]: https://github.com/byrongibson/scripts/tree/master/install/j... [3]: https://github.com/byrongibson/scripts/tree/master/install/s...
In Using /usr/local
For anyone using Debian or a derivative and who wants to build from source and/or install without using the package manager, here's one way using Debian update-alternatives tool: https://github.com/byrongibson/scripts/tree/master/install/h... TLDR: Install GHC (binary) to a custom location like /opt/haskell/ghc, then add it to the system with the Debian update-alternatives tool, repeat with Haskell Platform. Only difference is you build Platform from source. update-alternatives scripts included for both.
In Haskell Platform 2012.2.0.0 released - includes GHC 7.4.1

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.