From 9bcf7688b1f292c01bfe2ddee2acf8ac82dac933 Mon Sep 17 00:00:00 2001 From: TheWanderingCrow Date: Sun, 20 Jul 2025 09:41:17 -0400 Subject: [PATCH] test nixondroid --- README.md | 1 + flake.lock | 175 +++++++++++++++++++++++++++++++++- flake.nix | 19 ++++ hosts/droid/Siren/default.nix | 27 ++++++ 4 files changed, 221 insertions(+), 1 deletion(-) create mode 100644 hosts/droid/Siren/default.nix diff --git a/README.md b/README.md index 94793f6..a7673fb 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,7 @@ - `Dragneel` - Partner's Box - AMD Ryzen 5 3600 - RTX 2070 - 32GB - DDR4 - `Bulwark` - Forensics and RE VM - `Infiltrator` - Pentesting VM + - `droid` - nix-on-droid configurations - `home/` - Home-manager configurations, built automatically during host rebuilds. - `common` - Shared home-manager configurations consumed the user's machine diff --git a/flake.lock b/flake.lock index f2e7c3c..c3f5a70 100644 --- a/flake.lock +++ b/flake.lock @@ -92,6 +92,27 @@ "type": "github" } }, + "home-manager_2": { + "inputs": { + "nixpkgs": [ + "nix-on-droid", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709445365, + "narHash": "sha256-DVv6nd9FQBbMWbOmhq0KVqmlc3y3FMSYl49UXmMcO+0=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "4de84265d7ec7634a69ba75028696d74de9a44a7", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, "mnw": { "locked": { "lastModified": 1742255973, @@ -211,6 +232,55 @@ "type": "github" } }, + "nix-formatter-pack": { + "inputs": { + "nixpkgs": [ + "nix-on-droid", + "nixpkgs" + ], + "nmd": "nmd", + "nmt": "nmt" + }, + "locked": { + "lastModified": 1705252799, + "narHash": "sha256-HgSTREh7VoXjGgNDwKQUYcYo13rPkltW7IitHrTPA5c=", + "owner": "Gerschtli", + "repo": "nix-formatter-pack", + "rev": "2de39dedd79aab14c01b9e2934842051a160ffa5", + "type": "github" + }, + "original": { + "owner": "Gerschtli", + "repo": "nix-formatter-pack", + "type": "github" + } + }, + "nix-on-droid": { + "inputs": { + "home-manager": "home-manager_2", + "nix-formatter-pack": "nix-formatter-pack", + "nixpkgs": [ + "nixpkgs" + ], + "nixpkgs-docs": "nixpkgs-docs", + "nixpkgs-for-bootstrap": "nixpkgs-for-bootstrap", + "nmd": "nmd_2" + }, + "locked": { + "lastModified": 1720396533, + "narHash": "sha256-UFzk/hZWO1VkciIO5UPaSpJN8s765wsngUSvtJM6d5Q=", + "owner": "nix-community", + "repo": "nix-on-droid", + "rev": "f3d3b8294039f2f9a8fb7ea82c320f29c6b0fe25", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "release-24.05", + "repo": "nix-on-droid", + "type": "github" + } + }, "nix-secrets": { "inputs": { "nixpkgs": "nixpkgs_2" @@ -261,6 +331,38 @@ "type": "github" } }, + "nixpkgs-docs": { + "locked": { + "lastModified": 1705957679, + "narHash": "sha256-Q8LJaVZGJ9wo33wBafvZSzapYsjOaNjP/pOnSiKVGHY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "9a333eaa80901efe01df07eade2c16d183761fa3", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "release-23.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-for-bootstrap": { + "locked": { + "lastModified": 1720244366, + "narHash": "sha256-WrDV0FPMVd2Sq9hkR5LNHudS3OSMmUrs90JUTN+MXpA=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "49ee0e94463abada1de470c9c07bfc12b36dcf40", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "49ee0e94463abada1de470c9c07bfc12b36dcf40", + "type": "github" + } + }, "nixpkgs-lib": { "locked": { "lastModified": 1740877520, @@ -407,6 +509,28 @@ }, "nmd": { "flake": false, + "locked": { + "lastModified": 1666190571, + "narHash": "sha256-Z1hc7M9X6L+H83o9vOprijpzhTfOBjd0KmUTnpHAVjA=", + "owner": "rycee", + "repo": "nmd", + "rev": "b75d312b4f33bd3294cd8ae5c2ca8c6da2afc169", + "type": "gitlab" + }, + "original": { + "owner": "rycee", + "repo": "nmd", + "type": "gitlab" + } + }, + "nmd_2": { + "inputs": { + "nixpkgs": [ + "nix-on-droid", + "nixpkgs-docs" + ], + "scss-reset": "scss-reset" + }, "locked": { "lastModified": 1705050560, "narHash": "sha256-x3zzcdvhJpodsmdjqB4t5mkVW22V3wqHLOun0KRBzUI=", @@ -421,6 +545,38 @@ "type": "sourcehut" } }, + "nmd_3": { + "flake": false, + "locked": { + "lastModified": 1705050560, + "narHash": "sha256-x3zzcdvhJpodsmdjqB4t5mkVW22V3wqHLOun0KRBzUI=", + "owner": "~rycee", + "repo": "nmd", + "rev": "66d9334933119c36f91a78d565c152a4fdc8d3d3", + "type": "sourcehut" + }, + "original": { + "owner": "~rycee", + "repo": "nmd", + "type": "sourcehut" + } + }, + "nmt": { + "flake": false, + "locked": { + "lastModified": 1648075362, + "narHash": "sha256-u36WgzoA84dMVsGXzml4wZ5ckGgfnvS0ryzo/3zn/Pc=", + "owner": "rycee", + "repo": "nmt", + "rev": "d83601002c99b78c89ea80e5e6ba21addcfe12ae", + "type": "gitlab" + }, + "original": { + "owner": "rycee", + "repo": "nmt", + "type": "gitlab" + } + }, "nvf": { "inputs": { "flake-parts": "flake-parts", @@ -428,7 +584,7 @@ "mnw": "mnw", "nil": "nil", "nixpkgs": "nixpkgs_5", - "nmd": "nmd", + "nmd": "nmd_3", "systems": "systems_2" }, "locked": { @@ -471,6 +627,7 @@ "home-manager": "home-manager", "niri-flake": "niri-flake", "nix-darwin": "nix-darwin", + "nix-on-droid": "nix-on-droid", "nix-secrets": "nix-secrets", "nixpkgs": "nixpkgs_3", "nixpkgs-darwin": "nixpkgs-darwin", @@ -504,6 +661,22 @@ "type": "github" } }, + "scss-reset": { + "flake": false, + "locked": { + "lastModified": 1631450058, + "narHash": "sha256-muDlZJPtXDIGevSEWkicPP0HQ6VtucbkMNygpGlBEUM=", + "owner": "andreymatin", + "repo": "scss-reset", + "rev": "0cf50e27a4e95e9bb5b1715eedf9c54dee1a5a91", + "type": "github" + }, + "original": { + "owner": "andreymatin", + "repo": "scss-reset", + "type": "github" + } + }, "sops-nix": { "inputs": { "nixpkgs": [ diff --git a/flake.nix b/flake.nix index 5899005..eec467e 100644 --- a/flake.nix +++ b/flake.nix @@ -4,6 +4,7 @@ outputs = { self, nixpkgs, + nix-on-droid, ... } @ inputs: let inherit (self) outputs; @@ -11,6 +12,7 @@ # Architectures forAllSystems = nixpkgs.lib.genAttrs [ "x86_64-linux" + "aarch64-linux" ]; # Extend lib with lib.custom lib = nixpkgs.lib.extend (self: super: {custom = import ./lib {inherit (nixpkgs) lib;};}); @@ -75,6 +77,18 @@ }) (builtins.attrNames (builtins.readDir ./devshells)) ) ); + + nixOnDroidConfigurations = builtins.listToAttrs ( + map (host: { + name = host; + value = nix-on-droid.lib.nixOnDroidConfiguration { + pkgs = import nixpkgs { + system = "aarch64-linux"; + }; + modules = [./hosts/droid/${host}]; + }; + }) (builtins.attrNames (builtins.readDir ./hosts/droid)) + ); }; inputs = { @@ -96,6 +110,11 @@ inputs.nixpkgs.follows = "nixpkgs"; }; + nix-on-droid = { + url = "github:nix-community/nix-on-droid/release-24.05"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + # 3rd party inputs disko = { # Declarative partitioning diff --git a/hosts/droid/Siren/default.nix b/hosts/droid/Siren/default.nix new file mode 100644 index 0000000..5328a5f --- /dev/null +++ b/hosts/droid/Siren/default.nix @@ -0,0 +1,27 @@ +{ + config, + lib, + pkgs, + ... +}: { + environment.packages = with pkgs; [ + inputs.nvix.packages.${pkgs.system}.default + git + ssh + ]; + + environment.etcBackupExtension = ".bak"; + + system.stateVersion = "24.05"; + + nix.extraOptions = '' + experimental-features = nix-command flakes + ''; + + android-integration = { + termux-open.enable = true; + termux-open-url.enable = true; + termux-reload-settings.enable = true; + termux-setup-storage.enable = true; + }; +}