diff --git a/flake.nix b/flake.nix index 8b7007b..632fcfb 100644 --- a/flake.nix +++ b/flake.nix @@ -55,6 +55,7 @@ flake = flake-utils.lib; }; pkgsLibOverlay = final: prev: { lib = prev.lib.extend libOverlay; }; + myPkgsOverlay = final: prev: import ./pkgs { lib = prev.lib; pkgs = prev; }; # Override the flake-level lib since we're going to use it for non-config specific stuff pkgsFlakes = mapAttrs (_: pkgsFlake: pkgsFlake // { lib = pkgsFlake.lib.extend libOverlay; }) { @@ -81,6 +82,7 @@ (_: path: mkDefaultSystemsPkgs path (system: { overlays = [ pkgsLibOverlay + myPkgsOverlay inputs.devshell.overlay inputs.agenix.overlay inputs.deploy-rs.overlay @@ -94,6 +96,7 @@ (_: path: mkDefaultSystemsPkgs path (_: { overlays = [ pkgsLibOverlay + myPkgsOverlay ]; })) pkgsFlakes; @@ -135,6 +138,8 @@ nixpkgs = pkgs'; inherit lib nixfiles; + overlays.default = myPkgsOverlay; + nixosModules = nixfiles.config.nixos.modules; homeModules = nixfiles.config.home-manager.modules; @@ -181,6 +186,8 @@ deploy = recurseIntoAttrs (pkgs.deploy-rs.lib.deployChecks self.deploy); }; + packages = flattenTree (import ./pkgs { inherit lib pkgs; }); + devShells.default = shell; devShell = shell; })); diff --git a/home-manager/configs/macsimum.nix b/home-manager/configs/macsimum.nix index 5914ce9..d7f0144 100644 --- a/home-manager/configs/macsimum.nix +++ b/home-manager/configs/macsimum.nix @@ -15,6 +15,7 @@ home.packages = with pkgs; [ python310 + monocraft ]; programs = { diff --git a/pkgs/default.nix b/pkgs/default.nix new file mode 100644 index 0000000..fbf83bf --- /dev/null +++ b/pkgs/default.nix @@ -0,0 +1,8 @@ +{ lib, pkgs }: +let + inherit (pkgs) callPackage; +in +{ + # yeah turns out this is in nixpkgs now... we'll leave it as a sample i guess lol + monocraft' = callPackage ./monocraft.nix { }; +} \ No newline at end of file diff --git a/pkgs/monocraft.nix b/pkgs/monocraft.nix new file mode 100644 index 0000000..9125a24 --- /dev/null +++ b/pkgs/monocraft.nix @@ -0,0 +1,25 @@ +{ lib, fetchFromGitHub }: +fetchFromGitHub rec { + pname = "monocraft"; + version = "1.4"; + + owner = "IdreesInc"; + repo = pname; + rev = "v${version}"; + + postFetch = '' + install -Dm444 -t $out/share/fonts/opentype/ $out/Monocraft.otf + shopt -s extglob dotglob + rm -rf $out/!(share) + shopt -u extglob dotglob + ''; + hash = "sha256-e/kLeYK9//iw+8XOfC0bocldhFGojGApT/EtNtdf4tc="; + + meta = with lib; { + description = "A programming font based on the typeface used in Minecraft"; + homepage = "https://github.com/${owner}/${repo}"; + license = licenses.ofl; + platforms = platforms.all; + maintainers = [ maintainers.devplayer0 ]; + }; +} \ No newline at end of file