I built 15-year-old software using Nix (including Firefox 2.0!)

There’s a list of “open questions” at the bottom of the post, including one thing I’d very much like to do: Build a complete GNOME desktop from 2008! :smiley:

But I don’t see a lot of packages in pkgs/desktops/gnome, besides metacity, gnome-terminal and gnome-panel. Can someone tell me how you would’ve installed things like the GNOME settings program back then? And shouldn’t there be a gnome-session binary somewhere?

18 Likes

Hello friend! It has been a while, FrozenCow is my alter-ego :wink:

Very fun article! Finding all of the small issues and explaining what you tried is somehow not just interesting, but also entertaining to me :smile:

Is it possible to “override” Nix derivations from 2008, to fix them in a more elegant way than to modify the nixpkgs repo?

You could create a nix file that imports a specific version of nixpkgs. Then use overrrideAttrs to make changes to packages.

It also requires using overlays to make sure a package is altered tree-wide. For instance, altering glibc using overrideAttrs will make Nix build an altered version of glibc, but it won’t be used in other software as input unless you use something like overlays.

I was also thinking whether it would be possible to override fetchurl with one that uses archive.org as a fallback. That could be worth the effort.

3 Likes

Heya, maker of games and wrangler of Nix! :smiley: Thanks for those ideas! Yeah, it also was a lot of fun for me to have this adventure!

I’m afraid overlays and overrides weren’t a thing back then. :confused:

1 Like

Doh! Makes sense. That’s too bad. :see_no_evil:

What about altering fetchurl to make sure it always falls back to archive.org?