monolisa-nerdfont-patch/flake.nix

61 lines
1.7 KiB
Nix
Raw Normal View History

2024-01-29 16:49:41 -06:00
{
description = "A script to patch the MonoLisa font with Nerd Fonts glyphs.";
2024-01-29 16:49:41 -06:00
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
systems.url = "github:nix-systems/default";
};
outputs = {
2024-01-29 16:49:41 -06:00
self,
nixpkgs,
systems,
2024-01-29 16:49:41 -06:00
}: let
inherit (nixpkgs.lib) genAttrs makeBinPath;
eachSystem = fn:
genAttrs (import systems)
(system:
fn system
(import nixpkgs {
localSystem.system = system;
overlays = [self.overlays.default];
}));
2024-01-29 16:49:41 -06:00
in {
overlays = {
default = final: _prev: let
pkgs = final;
in {
monolisa-nerdfont-patch = pkgs.stdenv.mkDerivation {
name = "monolisa-nerdfont-patch";
src = ./.;
nativeBuildInputs = with pkgs; [makeWrapper];
buildInputs = with pkgs; [fontforge python3];
buildPhase = ":";
installPhase = ''
mkdir -p $out/bin
install -m755 -D ${./patch-monolisa} $out/bin/monolisa-nerdfont-patch
install -m755 -D ${./font-patcher} $out/bin/font-patcher
cp -r ${./bin} $out/bin/bin
cp -r ${./src} $out/bin/src
'';
postFixup = ''
wrapProgram $out/bin/monolisa-nerdfont-patch \
--set PATH ${makeBinPath (with final; [fontforge])}
2024-01-30 20:33:49 -06:00
'';
};
2024-01-30 20:33:49 -06:00
};
};
2024-01-30 20:33:49 -06:00
packages = eachSystem (system: pkgs: {
default = self.packages.${system}.monolisa-nerdfont-patch;
monolisa-nerdfont-patch = pkgs.monolisa-nerdfont-patch;
});
devShells = eachSystem (_: pkgs: {
default = pkgs.mkShell {
buildInputs = with pkgs; [fontforge python3 pre-commit];
};
});
2024-01-29 16:49:41 -06:00
};
}