Note
This flake is experimental. While I will try to keep it updated, I can't garuantee just in time security updates until Waterfox gets adopted into nixpkgs.
Since the Waterfox browser isn't currently in nixpkgs, this flake implements both the waterfox and the waterfox-bin version of it. Waterfox isn't currently in nixpkgs since there is no commiter who is willing to maintain it. If you are interested in the progress, you can checkout NixOS/nixpkgs#475318.
This flake supports x86_64 & aarch64 for both Linux and Darwin. Note while waterfox-bin supports all Darwin architectures, it only supports x86_64-linux, so if you want to use Waterfox on aarch64-linux, you have to use the from-source build.
You can test Waterfox on your system by running it in a Nix-Shell. It is recommendet to use the -bin package for this.
# Run the Nix-Shell (requires the new experimental Nix command)
nix shell github:Hythera/nix-waterfox#waterfox-bin
# Start Waterfox
waterfoxThe second way is to install Waterfox on your NixOS system. While you can use the waterfox package, it is recommended to use the waterfox-bin package, as the from-source build can take up to 2 hours depending on your system. If you don't want to install Waterfox globally, you can use tools like home-manager. Just use home.packages instead of environment.systemPackages in you home-configuration.
# flake.nix
{
inputs = {
waterfox.url = "github:Hythera/nix-waterfox";
...
};
outputs = {
nixpkgs,
...
}: let
system = "...";
in {
nixosConfigurations."..." = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs outputs;};
modules = [
./configuration.nix
...
];
};
}
}# configuration.nix
{
inputs,
pkgs,
...
}:
{
environment.systemPackages = [
inputs.waterfox.packages.${pkgs.stdenv.hostPlatform.system}.waterfox-bin
]
}