From 90e3b752b03c50a4a37c608e045c10f80417955d Mon Sep 17 00:00:00 2001 From: Christoph Schmatzler Date: Wed, 4 Mar 2026 10:48:02 +0000 Subject: [PATCH] add tuicr, replace buildRustPackage with naersk, remove overseer --- flake.nix | 9 ++-- hosts/tahani/default.nix | 1 - lib/build-rust-package.nix | 6 +-- overlays/jj-ryu.nix | 2 +- overlays/overseer.nix | 101 ------------------------------------- overlays/tuicr.nix | 3 ++ profiles/overseer.nix | 5 -- profiles/packages.nix | 1 + 8 files changed, 13 insertions(+), 115 deletions(-) delete mode 100644 overlays/overseer.nix create mode 100644 overlays/tuicr.nix delete mode 100644 profiles/overseer.nix diff --git a/flake.nix b/flake.nix index 0d5d71f..6574616 100644 --- a/flake.nix +++ b/flake.nix @@ -41,11 +41,12 @@ flake = false; }; jj-starship.url = "github:dmmulroy/jj-starship"; - overseer = { - url = "github:dmmulroy/overseer"; - flake = false; - }; himalaya.url = "github:pimalaya/himalaya"; + naersk = { + url = "github:nix-community/naersk/master"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + tuicr.url = "github:agavra/tuicr"; }; outputs = inputs @ {flake-parts, ...}: diff --git a/hosts/tahani/default.nix b/hosts/tahani/default.nix index e92de0a..02bd468 100644 --- a/hosts/tahani/default.nix +++ b/hosts/tahani/default.nix @@ -42,7 +42,6 @@ in { ../../profiles/mise.nix ../../profiles/neovim ../../profiles/opencode.nix - ../../profiles/overseer.nix ../../profiles/claude-code.nix ../../profiles/ripgrep.nix ../../profiles/ssh.nix diff --git a/lib/build-rust-package.nix b/lib/build-rust-package.nix index 7989374..8c7d661 100644 --- a/lib/build-rust-package.nix +++ b/lib/build-rust-package.nix @@ -1,15 +1,15 @@ { + inputs, input, prev, }: let + naersk-lib = prev.callPackage inputs.naersk {}; manifest = (prev.lib.importTOML "${input}/Cargo.toml").package; in - prev.rustPlatform.buildRustPackage { + naersk-lib.buildPackage { pname = manifest.name; version = manifest.version; - cargoLock.lockFile = "${input}/Cargo.lock"; - src = input; nativeBuildInputs = [prev.pkg-config]; diff --git a/overlays/jj-ryu.nix b/overlays/jj-ryu.nix index a9acba5..55ecbbb 100644 --- a/overlays/jj-ryu.nix +++ b/overlays/jj-ryu.nix @@ -1,7 +1,7 @@ {inputs}: final: prev: { jj-ryu = import ../lib/build-rust-package.nix { - inherit prev; + inherit inputs prev; input = inputs.jj-ryu; }; } diff --git a/overlays/overseer.nix b/overlays/overseer.nix deleted file mode 100644 index 78381f6..0000000 --- a/overlays/overseer.nix +++ /dev/null @@ -1,101 +0,0 @@ -{inputs}: final: prev: let - manifest = (prev.lib.importTOML "${inputs.overseer}/overseer/Cargo.toml").package; - - overseer-cli = - prev.rustPlatform.buildRustPackage { - pname = "overseer-cli"; - version = manifest.version; - - cargoLock.lockFile = "${inputs.overseer}/overseer/Cargo.lock"; - - src = "${inputs.overseer}/overseer"; - - nativeBuildInputs = with prev; [ - pkg-config - ]; - - buildInputs = with prev; [ - openssl - ]; - - OPENSSL_NO_VENDOR = 1; - - doCheck = false; - }; - - overseer-host = - prev.buildNpmPackage { - pname = "overseer-host"; - version = manifest.version; - - src = "${inputs.overseer}/host"; - - npmDepsHash = "sha256-WIjx6N8vnH3C6Kxn4tiryi3bM0xnov5ok2k9XrndIS0="; - - buildPhase = '' - runHook preBuild - npm run build - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - mkdir -p $out - cp -r dist $out/ - cp -r node_modules $out/ - cp package.json $out/ - runHook postInstall - ''; - }; - - overseer-ui = - prev.buildNpmPackage { - pname = "overseer-ui"; - version = manifest.version; - - src = "${inputs.overseer}/ui"; - - npmDepsHash = "sha256-krOsSd8OAPsdCOCf1bcz9c/Myj6jpHOkaD/l+R7PQpY="; - - buildPhase = '' - runHook preBuild - npm run build - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - mkdir -p $out - cp -r dist $out/ - runHook postInstall - ''; - }; -in { - # The CLI looks for host/dist/index.js and ui/dist relative to the binary - # Using paths like: exe_dir.join("../@dmmulroy/overseer/host/dist/index.js") - # So we create: bin/os and @dmmulroy/overseer/host/dist/index.js - overseer = - prev.runCommand "overseer-${manifest.version}" { - nativeBuildInputs = [prev.makeWrapper]; - } '' - # Create npm-like structure that the CLI expects - mkdir -p $out/bin - mkdir -p $out/@dmmulroy/overseer/host - mkdir -p $out/@dmmulroy/overseer/ui - - # Copy host files - cp -r ${overseer-host}/dist $out/@dmmulroy/overseer/host/ - cp -r ${overseer-host}/node_modules $out/@dmmulroy/overseer/host/ - cp ${overseer-host}/package.json $out/@dmmulroy/overseer/host/ - - # Copy UI files - cp -r ${overseer-ui}/dist $out/@dmmulroy/overseer/ui/ - - # Copy CLI binary - cp ${overseer-cli}/bin/os $out/bin/os - - # Make wrapper that ensures node is available - wrapProgram $out/bin/os \ - --prefix PATH : ${prev.nodejs}/bin - ''; -} diff --git a/overlays/tuicr.nix b/overlays/tuicr.nix new file mode 100644 index 0000000..d85702f --- /dev/null +++ b/overlays/tuicr.nix @@ -0,0 +1,3 @@ +{inputs}: final: prev: { + tuicr = inputs.tuicr.packages.${prev.stdenv.hostPlatform.system}.default; +} diff --git a/profiles/overseer.nix b/profiles/overseer.nix deleted file mode 100644 index 3808a93..0000000 --- a/profiles/overseer.nix +++ /dev/null @@ -1,5 +0,0 @@ -{pkgs, ...}: { - home.packages = with pkgs; [ - overseer - ]; -} diff --git a/profiles/packages.nix b/profiles/packages.nix index 6997fda..a95d609 100644 --- a/profiles/packages.nix +++ b/profiles/packages.nix @@ -48,6 +48,7 @@ with pkgs; tokei tree tree-sitter + tuicr vivid ] ++ lib.optionals stdenv.isDarwin [