module(waydroid): Add waydroid module

This commit is contained in:
ulic-youthlic 2025-07-02 18:39:25 +08:00
parent 4b2706cf9b
commit 6267da609a
Signed by: youthlic
GPG key ID: 63E86C3C14A0D721
11 changed files with 381 additions and 11 deletions

334
flake.lock generated
View file

@ -87,6 +87,37 @@
"type": "github"
}
},
"cachix": {
"inputs": {
"devenv": [
"nur-ataraxiasjel",
"devenv"
],
"flake-compat": [
"nur-ataraxiasjel",
"devenv"
],
"git-hooks": [
"nur-ataraxiasjel",
"devenv"
],
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1744206633,
"narHash": "sha256-pb5aYkE8FOoa4n123slgHiOf1UbNSnKe5pEZC+xXD5g=",
"owner": "cachix",
"repo": "cachix",
"rev": "8a60090640b96f9df95d1ab99e5763a586be1404",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "latest",
"repo": "cachix",
"type": "github"
}
},
"chaotic": {
"inputs": {
"flake-schemas": "flake-schemas",
@ -156,6 +187,40 @@
"type": "github"
}
},
"devenv": {
"inputs": {
"cachix": "cachix",
"flake-compat": "flake-compat_3",
"git-hooks": "git-hooks",
"nix": "nix",
"nixpkgs": "nixpkgs_6"
},
"locked": {
"lastModified": 1748273445,
"narHash": "sha256-5V0dzpNgQM0CHDsMzh+ludYeu1S+Y+IMjbaskSSdFh0=",
"owner": "cachix",
"repo": "devenv",
"rev": "668a50d8b7bdb19a0131f53c9f6c25c9071e1ffb",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "devenv",
"type": "github"
}
},
"devenv-root": {
"flake": false,
"locked": {
"narHash": "sha256-d6xi4mKdjkX2JFicDIv5niSzpyI0m/Hnm8GGAIU04kY=",
"type": "file",
"url": "file:///dev/null"
},
"original": {
"type": "file",
"url": "file:///dev/null"
}
},
"disko": {
"inputs": {
"nixpkgs": [
@ -225,6 +290,22 @@
}
},
"flake-compat_3": {
"flake": false,
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_4": {
"locked": {
"lastModified": 1747046372,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
@ -257,6 +338,47 @@
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"nur-ataraxiasjel",
"devenv",
"nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1712014858,
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib_2"
},
"locked": {
"lastModified": 1743550720,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "c621e8422220273271f52058f618c94e405bb0f5",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-schemas": {
"locked": {
"lastModified": 1721999734,
@ -321,12 +443,39 @@
}
},
"git-hooks": {
"inputs": {
"flake-compat": [
"nur-ataraxiasjel",
"devenv"
],
"gitignore": "gitignore",
"nixpkgs": [
"nur-ataraxiasjel",
"devenv",
"nixpkgs"
]
},
"locked": {
"lastModified": 1746537231,
"narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "fa466640195d38ec97cf0493d6d6882bc4d14969",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"git-hooks_2": {
"inputs": {
"flake-compat": [
"stylix",
"flake-compat"
],
"gitignore": "gitignore",
"gitignore": "gitignore_2",
"nixpkgs": [
"stylix",
"nixpkgs"
@ -347,6 +496,29 @@
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"nur-ataraxiasjel",
"devenv",
"git-hooks",
"nixpkgs"
]
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github"
}
},
"gitignore_2": {
"inputs": {
"nixpkgs": [
"stylix",
@ -470,6 +642,22 @@
"type": "github"
}
},
"libgit2": {
"flake": false,
"locked": {
"lastModified": 1697646580,
"narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=",
"owner": "libgit2",
"repo": "libgit2",
"rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5",
"type": "github"
},
"original": {
"owner": "libgit2",
"repo": "libgit2",
"type": "github"
}
},
"lix": {
"flake": false,
"locked": {
@ -568,6 +756,43 @@
"type": "github"
}
},
"nix": {
"inputs": {
"flake-compat": [
"nur-ataraxiasjel",
"devenv"
],
"flake-parts": "flake-parts_2",
"libgit2": "libgit2",
"nixpkgs": "nixpkgs_5",
"nixpkgs-23-11": [
"nur-ataraxiasjel",
"devenv"
],
"nixpkgs-regression": [
"nur-ataraxiasjel",
"devenv"
],
"pre-commit-hooks": [
"nur-ataraxiasjel",
"devenv"
]
},
"locked": {
"lastModified": 1745930071,
"narHash": "sha256-bYyjarS3qSNqxfgc89IoVz8cAFDkF9yPE63EJr+h50s=",
"owner": "domenkozar",
"repo": "nix",
"rev": "b455edf3505f1bf0172b39a735caef94687d0d9c",
"type": "github"
},
"original": {
"owner": "domenkozar",
"ref": "devenv-2.24",
"repo": "nix",
"type": "github"
}
},
"nix-github-actions": {
"inputs": {
"nixpkgs": [
@ -659,6 +884,21 @@
"type": "github"
}
},
"nixpkgs-lib_2": {
"locked": {
"lastModified": 1743296961,
"narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1751582995,
@ -724,6 +964,70 @@
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1733212471,
"narHash": "sha256-M1+uCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "55d15ad12a74eb7d4646254e13638ad0c4128776",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_5": {
"locked": {
"lastModified": 1717432640,
"narHash": "sha256-+f9c4/ZX5MWDOuB1rKoWj+lBNm0z0rs4CK47HBLxy1o=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "88269ab3044128b7c2f4c7d68448b2fb50456870",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "release-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1746807397,
"narHash": "sha256-zU2z0jlkJGWLhdNr/8AJSxqK8XD0IlQgHp3VZcP56Aw=",
"owner": "cachix",
"repo": "devenv-nixpkgs",
"rev": "c5208b594838ea8e6cca5997fbf784b7cca1ca90",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "rolling",
"repo": "devenv-nixpkgs",
"type": "github"
}
},
"nixpkgs_7": {
"locked": {
"lastModified": 1748190013,
"narHash": "sha256-R5HJFflOfsP5FBtk+zE8FpL8uqE7n62jqOsADvVshhE=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "62b852f6c6742134ade1abdd2a21685fd617a291",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_8": {
"locked": {
"lastModified": 1747958103,
"narHash": "sha256-qmmFCrfBwSHoWw7cVK4Aj+fns+c54EBP8cGqp/yK410=",
@ -765,6 +1069,27 @@
"type": "github"
}
},
"nur-ataraxiasjel": {
"inputs": {
"devenv": "devenv",
"devenv-root": "devenv-root",
"flake-parts": "flake-parts_3",
"nixpkgs": "nixpkgs_7"
},
"locked": {
"lastModified": 1750950662,
"narHash": "sha256-tEdGoLUTFgPC6WtLFHUAV9ZFZ7m1NUKTS5Zw1u2B/po=",
"owner": "ataraxiasjel",
"repo": "nur",
"rev": "81ea65199b63dcb2a9b588ac4387812996e3f092",
"type": "github"
},
"original": {
"owner": "ataraxiasjel",
"repo": "nur",
"type": "github"
}
},
"nur-rycee": {
"flake": false,
"locked": {
@ -798,6 +1123,7 @@
"nixos-cosmic": "nixos-cosmic",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_3",
"nur-ataraxiasjel": "nur-ataraxiasjel",
"nur-rycee": "nur-rycee",
"sops-nix": "sops-nix",
"stylix": "stylix",
@ -894,11 +1220,11 @@
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
"flake-compat": "flake-compat_3",
"flake-compat": "flake-compat_4",
"flake-parts": [
"flake-parts"
],
"git-hooks": "git-hooks",
"git-hooks": "git-hooks_2",
"gnome-shell": "gnome-shell",
"home-manager": [
"home-manager"
@ -1063,7 +1389,7 @@
},
"treefmt-nix_2": {
"inputs": {
"nixpkgs": "nixpkgs_4"
"nixpkgs": "nixpkgs_8"
},
"locked": {
"lastModified": 1750931469,

View file

@ -176,5 +176,11 @@
owner = "chaotic-cx";
repo = "nyx";
};
nur-ataraxiasjel = {
type = "github";
owner = "ataraxiasjel";
repo = "nur";
};
};
}

View file

@ -37,6 +37,13 @@
};
hardware.asus.enable = true;
i18n.enable = true;
virtualisation = {
kvm = {
enable = true;
unixName = "david";
};
waydroid.enable = true;
};
programs = {
bash.enable = true;
guix.enable = true;
@ -45,10 +52,6 @@
steam.enable = true;
tailscale.enable = true;
kanata.enable = true;
kvm = {
enable = true;
unixName = "david";
};
transmission.enable = true;
nix-ld.enable = true;
juicity.client.enable = true;

View file

@ -9,5 +9,6 @@
./gui
./programs
./hardware.nix
./virtualisation
];
}

View file

@ -7,7 +7,6 @@
./dae
./forgejo.nix
./kanata.nix
./kvm.nix
./nh.nix
./open-webui.nix
./openssh.nix

View file

@ -0,0 +1,6 @@
{
imports = [
./kvm.nix
./waydroid.nix
];
}

View file

@ -4,10 +4,10 @@
pkgs,
...
}: let
cfg = config.youthlic.programs.kvm;
cfg = config.youthlic.virtualisation.kvm;
in {
options = {
youthlic.programs.kvm = {
youthlic.virtualisation.kvm = {
enable = lib.mkEnableOption "kvm";
unixName = lib.mkOption {
type = lib.types.str;

View file

@ -0,0 +1,20 @@
{
lib,
config,
pkgs,
...
}: let
cfg = config.youthlic.virtualisation.waydroid;
in {
options = {
youthlic.virtualisation.waydroid = {
enable = lib.mkEnableOption "waydroid";
};
};
config = {
virtualisation.waydroid = {
enable = true;
};
environment.systemPackages = with pkgs; [waydroid-script];
};
}

View file

@ -7,6 +7,7 @@ in
./editor-runtime.nix
./radicle-ci-broker.nix
./wallpapers.nix
./waydroid-script.nix
]
|> map (file: import file args)
|> (overlays: (lib.composeManyExtensions overlays) final prev)

View file

@ -0,0 +1,5 @@
{outputs, ...}: _final: prev: let
inherit (prev.stdenv.hostPlatform) system;
in {
inherit (outputs.packages.${system}) waydroid-script;
}

View file

@ -33,3 +33,6 @@ in
in
lib.genAttrs ["immersive-translate" "tridactyl" "redirector"] (name: firefox-addons."${name}")
)
// {
inherit (inputs.nur-ataraxiasjel.outputs.packages.${pkgs.system}) waydroid-script;
}