erambler/flake.nix

50 lines
1.5 KiB
Nix

{
description = "Content and server config for erambler.co.uk";
inputs.nixpkgs.url = "github:NixOS/nixpkgs";
inputs.flake-utils.url = "github:numtide/flake-utils";
inputs.twitter-archive = {
url =
"https://codeberg.org/api/v1/repos/jezcope/twitter-archive/archive/main.tar.gz";
flake = false;
};
outputs = { self, nixpkgs, flake-utils, twitter-archive }:
{
overlay = self: super:
let
pkgs = nixpkgs.legacyPackages.${super.system};
buildIosevka = pkgs.callPackage ./nix/iosevka.nix;
in rec {
iosevka = buildIosevka { set = "mnemosyne"; };
iosevka-aile = buildIosevka { set = "aile-mnemosyne"; };
iosevka-etoile = buildIosevka { set = "etoile-mnemosyne"; };
fonts = pkgs.symlinkJoin {
name = "mnemosyne-fonts";
paths = [ iosevka iosevka-aile iosevka-etoile ];
};
erambler =
pkgs.callPackage ./nix/build.nix { inherit fonts twitter-archive; };
inherit twitter-archive;
};
nixosModule = import ./nix/server.nix { inherit self; };
} // flake-utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs {
inherit system;
overlays = [ self.overlay ];
};
in {
packages = {
inherit (pkgs) erambler iosevka iosevka-aile iosevka-etoile fonts;
default = pkgs.erambler;
};
devShell = pkgs.callPackage ./nix/shell.nix { };
});
}