diff --git a/etc/nix/nix.conf b/etc/nix/nix.conf new file mode 100644 index 0000000..5d4b3e6 --- /dev/null +++ b/etc/nix/nix.conf @@ -0,0 +1,4 @@ +build-users-group = nixbld + +extra-platforms = aarch64-linux +extra-experimental-features = nix-command flakes diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..4b3f280 --- /dev/null +++ b/flake.nix @@ -0,0 +1,25 @@ +{ + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + utils.url = "github:numtide/flake-utils"; + }; + + outputs = { self, nixpkgs, utils }: utils.lib.eachDefaultSystem (system: + let + pkgs = import nixpkgs { inherit system; }; + flakePkg = ref: (builtins.getFlake ref).packages.${system}.default; + in + { + # Local user nix env + packages.mzte-nix = pkgs.symlinkJoin { + name = "mzte-nix"; + paths = [ + pkgs.nixpkgs-fmt + pkgs.nix-output-monitor + pkgs.nix-du + (flakePkg "github:oxalica/nil") + (flakePkg "github:nix-community/zon2nix") + ]; + }; + }); +} diff --git a/scripts/mzteinit/.gitignore b/scripts/mzteinit/.gitignore index e73c965..5da67ec 100644 --- a/scripts/mzteinit/.gitignore +++ b/scripts/mzteinit/.gitignore @@ -1,2 +1,3 @@ zig-cache/ zig-out/ +flake.lock diff --git a/scripts/mzteinit/src/env.zig b/scripts/mzteinit/src/env.zig index b67347f..4c38ea2 100644 --- a/scripts/mzteinit/src/env.zig +++ b/scripts/mzteinit/src/env.zig @@ -134,7 +134,7 @@ pub fn populateEnvironment(env: *std.process.EnvMap) !bool { var b = delimitedWriter(bufstream.writer(), ':'); for ([_][]const u8{ - ".nix-profile/bin", + ".local/mzte-nix/bin", ".mix/escripts", ".cargo/bin", ".local/bin", diff --git a/setup.rkt b/setup.rkt index f4824df..4d01cb7 100755 --- a/setup.rkt +++ b/setup.rkt @@ -7,7 +7,7 @@ "setup/common.rkt") ;; Valid verbs -(define verbs '(install-scripts install-plugins install-lsps-paru setup-nvim-config confgen)) +(define verbs '(install-scripts install-plugins install-lsps-paru setup-nvim-config setup-nix confgen)) (define verb (command-line #:program "setup.rkt" @@ -47,6 +47,9 @@ ['setup-nvim-config (local-require "setup/commands/setup-nvim-config.rkt") (run)] + ['setup-nix + (local-require "setup/commands/setup-nix.rkt") + (run)] ['confgen (local-require "setup/commands/confgen.rkt") (run)]) diff --git a/setup/commands/setup-nix.rkt b/setup/commands/setup-nix.rkt new file mode 100644 index 0000000..5922386 --- /dev/null +++ b/setup/commands/setup-nix.rkt @@ -0,0 +1,7 @@ +#lang racket +(require "../common.rkt") +(provide run) + +(define (run) + (define out (build-path (find-system-path 'home-dir) ".local" "mzte-nix")) + (cmd "nix" "build" ".#mzte-nix" "--impure" "--no-write-lock-file" "--out-link" out))