feat(pumo): add config for phone pumo

This commit is contained in:
2026-04-30 13:51:05 +02:00
parent 88e31d3ce4
commit 53dfdb1cc0
7 changed files with 131 additions and 7 deletions
Generated
+20 -3
View File
@@ -58,11 +58,11 @@
"quickshell": "quickshell" "quickshell": "quickshell"
}, },
"locked": { "locked": {
"lastModified": 1780839367, "lastModified": 1780845600,
"narHash": "sha256-KAENT4Od2wwWtJzWFtR/qKzqoR673r91KLcyv4pPcNQ=", "narHash": "sha256-cPAXoIsoPd9d8Mqh1JEZcHFgndAiIe2/z0ZAlgjjKMw=",
"owner": "caelestia-dots", "owner": "caelestia-dots",
"repo": "shell", "repo": "shell",
"rev": "3bc2bd2a5c5c886f75363211d838b749ab95137e", "rev": "8f49fdb4057c65fb7e591cdc5195d28086e56eb7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -261,6 +261,22 @@
"type": "github" "type": "github"
} }
}, },
"mobile-nixos": {
"flake": false,
"locked": {
"lastModified": 1772289954,
"narHash": "sha256-iDdtwk/dFb6AsXMtcOpZixxXl6C1HNUPe6cglxxHO7M=",
"owner": "mobile-nixos",
"repo": "mobile-nixos",
"rev": "1a9e0af79dc7b5e29ed772f1a8a76fcbd9d45fdf",
"type": "github"
},
"original": {
"owner": "mobile-nixos",
"repo": "mobile-nixos",
"type": "github"
}
},
"nix-index-database": { "nix-index-database": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -389,6 +405,7 @@
"flake-utils": "flake-utils_2", "flake-utils": "flake-utils_2",
"home-manager": "home-manager", "home-manager": "home-manager",
"jj-cz": "jj-cz", "jj-cz": "jj-cz",
"mobile-nixos": "mobile-nixos",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixpkgsStable": "nixpkgsStable", "nixpkgsStable": "nixpkgsStable",
+14
View File
@@ -31,6 +31,11 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
mobile-nixos = {
url = "github:mobile-nixos/mobile-nixos";
flake = false; # It is not as a flake
};
pumo-system-info = { pumo-system-info = {
url = "git+https://labs.phundrak.com/phundrak/pumo-system-info"; url = "git+https://labs.phundrak.com/phundrak/pumo-system-info";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@@ -90,6 +95,7 @@
flake-utils, flake-utils,
home-manager, home-manager,
rockchip, rockchip,
mobile-nixos,
srvos, srvos,
... ...
} @ inputs: } @ inputs:
@@ -190,6 +196,14 @@
]; ];
}; };
pinetab2 = pinetabConfig "x86_64-linux" ./hosts/pinetab2/gnome.nix; pinetab2 = pinetabConfig "x86_64-linux" ./hosts/pinetab2/gnome.nix;
pumo = nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
inherit specialArgs;
modules = withSystemModules [
(import "${mobile-nixos}/lib/configuration.nix" {device = "oneplus-enchilada";})
./hosts/pumo
];
};
tilo = nixpkgs.lib.nixosSystem { tilo = nixpkgs.lib.nixosSystem {
inherit specialArgs; inherit specialArgs;
modules = withSystemModules ./hosts/tilo/configuration.nix; modules = withSystemModules ./hosts/tilo/configuration.nix;
+90
View File
@@ -0,0 +1,90 @@
# Minimal configuration for OnePlus 6 (enchilada) NixOS Mobile
# Focus on essentials: SSH, wireless, and basic tools
{
pkgs,
inputs,
...
}: {
imports = [
inputs.sops-nix.nixosModules.sops
../../system
];
nixpkgs.config.permittedInsecurePackages = ["olm-3.2.16"];
mySystem = {
desktop = {
hyprland.enable = true;
niri.enable = true;
waydroid.enable = true;
xserver = {
enable = true;
de = "gnome";
};
};
dev.docker = {
enable = true;
podman.enable = true;
autoprune.enable = true;
};
hardware = {
bluetooth.enable = true;
sound = {
enable = true;
usePulseaudio = true;
};
};
i18n.input.enable = true;
misc = {
keymap = "fr-bepo";
mobile = true;
};
networking = {
hostname = "pumo";
id = "93595b88";
};
packages = {
appimage.enable = true;
flatpak.enable = true;
nix.nix-ld.enable = true;
};
services = {
languagetool.enable = true;
printing.enable = true;
ssh.enable = true;
};
users = {
root.disablePassword = true;
phundrak = {
enable = true;
trusted = true;
extraGroups = ["feedbackd"];
};
};
};
programs = {
dconf.enable = true;
calls.enable = true;
zsh.enable = true;
};
hardware.sensor.iio.enable = true;
# Minimal essential packages
environment.systemPackages = with pkgs; [
chatty # IM and SMS
epiphany
nixd
git
vim
emacs
wget
curl
jujutsu
firefox
kitty
];
system.stateVersion = "25.11";
}
+1 -1
View File
@@ -54,7 +54,7 @@ in {
}; };
}; };
config.boot = { config.boot = mkIf (! config.mySystem.misc.mobile) {
initrd.kernelModules = lib.lists.singleton ( initrd.kernelModules = lib.lists.singleton (
if config.mySystem.hardware.amdgpu.enable if config.mySystem.hardware.amdgpu.enable
then "amdgpu" then "amdgpu"
+1
View File
@@ -30,6 +30,7 @@ in {
games.enable = false; games.enable = false;
gnome-remote-desktop.enable = true; gnome-remote-desktop.enable = true;
gnome-online-accounts.enable = true; gnome-online-accounts.enable = true;
gnome-keyring.enable = true;
sushi.enable = true; sushi.enable = true;
}; };
+4 -3
View File
@@ -8,8 +8,9 @@ with lib; let
cfg = config.mySystem.hardware.sound; cfg = config.mySystem.hardware.sound;
in { in {
options.mySystem.hardware.sound = { options.mySystem.hardware.sound = {
enable = mkEnableOption "Whether to enable sounds with Pipewire"; enable = mkEnableOption "Whether to enable sounds";
noisetorch = mkEnableOption "Whether to activate noisetorch support"; noisetorch = mkEnableOption "Whether to activate noisetorch support";
usePulseaudio = mkEnableOption "Activate sound support with Pulseaudio";
scarlett.enable = mkEnableOption "Activate support for Scarlett sound card"; scarlett.enable = mkEnableOption "Activate support for Scarlett sound card";
alsa = mkOption { alsa = mkOption {
type = types.bool; type = types.bool;
@@ -34,7 +35,7 @@ in {
config = { config = {
environment.systemPackages = mkIf cfg.scarlett.enable [pkgs.alsa-scarlett-gui]; environment.systemPackages = mkIf cfg.scarlett.enable [pkgs.alsa-scarlett-gui];
services = { services = {
pipewire = mkIf cfg.enable { pipewire = mkIf (cfg.enable && ! cfg.usePulseaudio) {
enable = true; enable = true;
alsa = mkIf cfg.alsa { alsa = mkIf cfg.alsa {
enable = mkDefault true; enable = mkDefault true;
@@ -42,7 +43,7 @@ in {
}; };
jack.enable = mkDefault cfg.jack; jack.enable = mkDefault cfg.jack;
}; };
pulseaudio.enable = false; pulseaudio.enable = cfg.usePulseaudio;
}; };
programs.noisetorch = mkIf cfg.enable { programs.noisetorch = mkIf cfg.enable {
enable = cfg.noisetorch; enable = cfg.noisetorch;
+1
View File
@@ -17,6 +17,7 @@ in {
example = "fr-bepo"; example = "fr-bepo";
description = "Keymap to use in the TTY console"; description = "Keymap to use in the TTY console";
}; };
mobile = mkEnableOption "Enable if using Mobile NixOS";
}; };
config = { config = {