flake update, getting adgaurd working on the rockhole.

This commit is contained in:
Gabe Venberg 2025-06-15 14:24:32 +02:00
parent 64545c387d
commit 0f9c0b974f
8 changed files with 250 additions and 247 deletions

View file

@ -3,218 +3,178 @@
pkgs, pkgs,
lib, lib,
... ...
}: let }: {
visualizer = false;
in {
services.mpd = { services.mpd = {
enable = true; enable = true;
musicDirectory = "${config.home.homeDirectory}/Music"; musicDirectory = "${config.home.homeDirectory}/Music";
network.startWhenNeeded = true; network.startWhenNeeded = true;
playlistDirectory = "${config.services.mpd.musicDirectory}/.mpd/playlists"; playlistDirectory = "${config.services.mpd.musicDirectory}/.mpd/playlists";
extraConfig = extraConfig = ''
'' restore_paused "yes"
restore_paused "yes" auto_update "yes"
auto_update "yes" replaygain "auto"
replaygain "auto" follow_outside_symlinks "yes"
follow_outside_symlinks "yes"
audio_output { audio_output {
type "pipewire" type "pipewire"
name "PipeWire Sound Server" name "PipeWire Sound Server"
} }
'' '';
+ lib.optionalString visualizer
''
#for ncmpcpp visualizer
audio_output {
type "fifo"
name "Visualizer feed"
path "/tmp/mpd.fifo"
format "44100:16:2"
}
'';
}; };
services.mpd-mpris.enable = true; services.mpd-mpris.enable = true;
programs.ncmpcpp = {
enable = true;
package = lib.mkIf visualizer (pkgs.ncmpcpp.override {visualizerSupport = true;});
settings = lib.mkIf visualizer {
visualizer_data_source = "/tmp/mpd.fifo";
visualizer_output_name = "Visualizer feed";
visualizer_in_stereo = "yes";
visualizer_type = "spectrum";
visualizer_fps = 60;
visualizer_autoscale = "no";
visualizer_look = "";
visualizer_color = "blue, cyan, green, yellow, magenta, red";
##
## Note: The next few visualization options apply to the spectrum visualizer.
##
visualizer_spectrum_smooth_look = "yes";
## A value between 1 and 5 inclusive. Specifying a larger value makes the
## visualizer look at a larger slice of time, which results in less jumpy
## visualizer output.
visualizer_spectrum_dft_size = 2;
visualizer_spectrum_gain = 10;
visualizer_spectrum_hz_min = 20;
visualizer_spectrum_hz_max = 20000;
};
};
home.packages = with pkgs; [ home.packages = with pkgs; [
mpc-cli mpc-cli
playerctl playerctl
rmpc
]; ];
# rmpc config. programs.rmpc = {
home.file.".config/rmpc/config.ron".text = '' enable = true;
#![enable(implicit_some)] config = ''
#![enable(unwrap_newtypes)] #![enable(implicit_some)]
#![enable(unwrap_variant_newtypes)] #![enable(unwrap_newtypes)]
( #![enable(unwrap_variant_newtypes)]
address: "127.0.0.1:6600", (
password: None, address: "127.0.0.1:6600",
theme: None, password: None,
cache_dir: None, theme: None,
on_song_change: None, cache_dir: None,
volume_step: 5, on_song_change: None,
scrolloff: 0, volume_step: 5,
wrap_navigation: false, scrolloff: 0,
enable_mouse: true, wrap_navigation: false,
status_update_interval_ms: 1000, enable_mouse: true,
select_current_song_on_change: false, status_update_interval_ms: 1000,
album_art: ( select_current_song_on_change: false,
method: Auto, album_art: (
max_size_px: (width: 600, height: 600), method: Auto,
), max_size_px: (width: 600, height: 600),
keybinds: ( ),
global: { keybinds: (
":": CommandMode, global: {
",": VolumeDown, ":": CommandMode,
"s": Stop, ",": VolumeDown,
".": VolumeUp, "s": Stop,
"c": ToggleSingle, ".": VolumeUp,
"<Tab>": NextTab, "c": ToggleSingle,
"<S-Tab>": PreviousTab, "<Tab>": NextTab,
"1": SwitchToTab("Queue"), "<S-Tab>": PreviousTab,
"2": SwitchToTab("Directories"), "1": SwitchToTab("Queue"),
"3": SwitchToTab("Artists"), "2": SwitchToTab("Directories"),
"4": SwitchToTab("Album Artists"), "3": SwitchToTab("Artists"),
"5": SwitchToTab("Albums"), "4": SwitchToTab("Album Artists"),
"6": SwitchToTab("Playlists"), "5": SwitchToTab("Albums"),
"7": SwitchToTab("Search"), "6": SwitchToTab("Playlists"),
"q": Quit, "7": SwitchToTab("Search"),
"x": ToggleRandom, "q": Quit,
">": NextTrack, "x": ToggleRandom,
"<": PreviousTrack, ">": NextTrack,
"f": SeekForward, "<": PreviousTrack,
"v": ToggleConsume, "f": SeekForward,
"p": TogglePause, "v": ToggleConsume,
"z": ToggleRepeat, "p": TogglePause,
"b": SeekBack, "z": ToggleRepeat,
"~": ShowHelp, "b": SeekBack,
"I": ShowCurrentSongInfo, "~": ShowHelp,
"O": ShowOutputs, "I": ShowCurrentSongInfo,
}, "O": ShowOutputs,
navigation: { },
"k": Up, navigation: {
"j": Down, "k": Up,
"h": Left, "j": Down,
"l": Right, "h": Left,
"<Up>": Up, "l": Right,
"<Down>": Down, "<Up>": Up,
"<Left>": Left, "<Down>": Down,
"<Right>": Right, "<Left>": Left,
"<C-k>": PaneUp, "<Right>": Right,
"<C-j>": PaneDown, "<C-k>": PaneUp,
"<C-h>": PaneLeft, "<C-j>": PaneDown,
"<C-l>": PaneRight, "<C-h>": PaneLeft,
"<C-u>": UpHalf, "<C-l>": PaneRight,
"N": PreviousResult, "<C-u>": UpHalf,
"a": Add, "N": PreviousResult,
"A": AddAll, "a": Add,
"r": Rename, "A": AddAll,
"n": NextResult, "r": Rename,
"g": Top, "n": NextResult,
"<Space>": Select, "g": Top,
"G": Bottom, "<Space>": Select,
"<CR>": Confirm, "G": Bottom,
"i": FocusInput, "<CR>": Confirm,
"J": MoveDown, "i": FocusInput,
"<C-d>": DownHalf, "J": MoveDown,
"/": EnterSearch, "<C-d>": DownHalf,
"<C-c>": Close, "/": EnterSearch,
"<Esc>": Close, "<C-c>": Close,
"K": MoveUp, "<Esc>": Close,
"D": Delete, "K": MoveUp,
}, "D": Delete,
queue: { },
"D": DeleteAll, queue: {
"<CR>": Play, "D": DeleteAll,
"<C-s>": Save, "<CR>": Play,
"a": AddToPlaylist, "<C-s>": Save,
"d": Delete, "a": AddToPlaylist,
"i": ShowInfo, "d": Delete,
}, "i": ShowInfo,
), },
search: ( ),
case_sensitive: false, search: (
mode: Contains, case_sensitive: false,
tags: [ mode: Contains,
(value: "any", label: "Any Tag"), tags: [
(value: "artist", label: "Artist"), (value: "any", label: "Any Tag"),
(value: "album", label: "Album"), (value: "artist", label: "Artist"),
(value: "albumartist", label: "Album Artist"), (value: "album", label: "Album"),
(value: "title", label: "Title"), (value: "albumartist", label: "Album Artist"),
(value: "filename", label: "Filename"), (value: "title", label: "Title"),
(value: "genre", label: "Genre"), (value: "filename", label: "Filename"),
], (value: "genre", label: "Genre"),
), ],
tabs: [ ),
( tabs: [
name: "Queue", (
border_type: None, name: "Queue",
pane: Split( border_type: None,
direction: Horizontal, pane: Split(
panes: [(size: "40%", pane: Pane(AlbumArt)), (size: "60%", pane: Pane(Queue))], direction: Horizontal,
), panes: [(size: "40%", pane: Pane(AlbumArt)), (size: "60%", pane: Pane(Queue))],
), ),
( ),
name: "Directories", (
border_type: None, name: "Directories",
pane: Pane(Directories), border_type: None,
), pane: Pane(Directories),
( ),
name: "Artists", (
border_type: None, name: "Artists",
pane: Pane(Artists), border_type: None,
), pane: Pane(Artists),
( ),
name: "Album Artists", (
border_type: None, name: "Album Artists",
pane: Pane(AlbumArtists), border_type: None,
), pane: Pane(AlbumArtists),
( ),
name: "Albums", (
border_type: None, name: "Albums",
pane: Pane(Albums), border_type: None,
), pane: Pane(Albums),
( ),
name: "Playlists", (
border_type: None, name: "Playlists",
pane: Pane(Playlists), border_type: None,
), pane: Pane(Playlists),
( ),
name: "Search", (
border_type: None, name: "Search",
pane: Pane(Search), border_type: None,
), pane: Pane(Search),
], ),
) ],
''; )
'';
};
} }

View file

@ -36,6 +36,7 @@ keybinds clear-defaults=true{
bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; } bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; }
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; } bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; }
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0;} bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0;}
bind "i" { TogglePanePinned; SwitchToMode "Normal"; }
} }
move { move {
bind "Alt m" { SwitchToMode "Normal"; } bind "Alt m" { SwitchToMode "Normal"; }
@ -199,6 +200,15 @@ plugins {
filepicker location="zellij:strider" { filepicker location="zellij:strider" {
cwd "/" cwd "/"
} }
configuration location="zellij:configuration"
plugin-manager location="zellij:plugin-manager"
about location="zellij:about"
}
// Plugins to load in the background when a new session starts
load_plugins {
// "file:/path/to/my-plugin.wasm"
// "https://example.com/my-plugin.wasm"
} }
show_startup_tips false show_startup_tips false

View file

@ -16,7 +16,7 @@
zsh = { zsh = {
enable = true; enable = true;
enableCompletion = true; enableCompletion = true;
initExtra = lib.mkMerge [ initContent = lib.mkMerge [
'' ''
#have the menu highlight while we cycle through options #have the menu highlight while we cycle through options
zstyle ':completion:*' menu select zstyle ':completion:*' menu select

View file

@ -59,7 +59,7 @@ in {
} }
{ {
openmeteo = { openmeteo = {
label = "Mainz"; label = "Wiesbaden";
timezone = "Europe/Berlin"; timezone = "Europe/Berlin";
units = "metric"; units = "metric";
cache = 5; cache = 5;
@ -116,6 +116,20 @@ in {
} }
{ {
Internal = [ Internal = [
{
HomeAssistant = {
icon = "sh-home-assistant.svg";
href = "http://homeassistant.local:8123/";
description = "Home Automation";
};
}
{
AdGuardHome = {
icon = "sh-adguard-home.svg";
href = "http://10.10.0.2";
description = "Home Automation";
};
}
{ {
Deluge = { Deluge = {
icon = "sh-deluge.svg"; icon = "sh-deluge.svg";

98
flake.lock generated
View file

@ -10,11 +10,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1745930897, "lastModified": 1749851596,
"narHash": "sha256-m5cSxqeFFkLvJyiZ/bM5AkzvENcD42DJMPB0v6ImlGk=", "narHash": "sha256-y18i4gI02idT32m43jKp7HQ094JkstXaegdOA7KYaEE=",
"owner": "9001", "owner": "9001",
"repo": "copyparty", "repo": "copyparty",
"rev": "d1bca1f52f8769a1a968d707a5d2d62009bb9aa1", "rev": "1eff87c3bd0f0e51306e55f61d86c3b9735b3618",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -36,11 +36,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1727447169, "lastModified": 1749105467,
"narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=", "narHash": "sha256-hXh76y/wDl15almBcqvjryB50B0BaiXJKk20f314RoE=",
"owner": "serokell", "owner": "serokell",
"repo": "deploy-rs", "repo": "deploy-rs",
"rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76", "rev": "6bc76b872374845ba9d645a2f012b764fecd765f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -56,11 +56,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744940522, "lastModified": 1749436314,
"narHash": "sha256-TNoetfICvd29DhxRPpmyKItQBDlqSvKcV+wGNkn14jk=", "narHash": "sha256-CqmqU5FRg5AadtIkxwu8ulDSOSoIisUMZRLlcED3Q5w=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "51d33bbb7f1e74ba5f9d9a77357735149da99081", "rev": "dfa4d1b9c39c0342ef133795127a3af14598017a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -71,11 +71,11 @@
}, },
"flake-compat": { "flake-compat": {
"locked": { "locked": {
"lastModified": 1733328505, "lastModified": 1747046372,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -92,11 +92,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1743550720, "lastModified": 1749398372,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "c621e8422220273271f52058f618c94e405bb0f5", "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -148,11 +148,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744919155, "lastModified": 1749821119,
"narHash": "sha256-IJksPW32V9gid9vDxoloJMRk+YGjxq5drFHBFeBkKU8=", "narHash": "sha256-X3WAS322EsebI4ohJcXhKpiyG1v+7wE4VOiXy1pxM/c=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "72526a5f7cde2ef9075637802a1e2a8d2d658f70", "rev": "79dfd9aa295e53773aad45480b44c131da29f35b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -175,16 +175,16 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1729958008, "lastModified": 1748294338,
"narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=", "narHash": "sha256-FVO01jdmUNArzBS7NmaktLdGA5qA3lUMJ4B7a05Iynw=",
"owner": "NuschtOS", "owner": "NuschtOS",
"repo": "ixx", "repo": "ixx",
"rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb", "rev": "cc5f390f7caf265461d4aab37e98d2292ebbdb85",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NuschtOS", "owner": "NuschtOS",
"ref": "v0.0.6", "ref": "v0.0.8",
"repo": "ixx", "repo": "ixx",
"type": "github" "type": "github"
} }
@ -208,11 +208,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1744633460, "lastModified": 1749832440,
"narHash": "sha256-fbWE4Xpw6eH0Q6in+ymNuDwTkqmFmtxcQEmtRuKDTTk=", "narHash": "sha256-lfxhuxAaHlYFGr8yOrAXZqdMt8PrFLzjVqH9v3lQaoY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "9a049b4a421076d27fee3eec664a18b2066824cb", "rev": "db030f62a449568345372bd62ed8c5be4824fa49",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -232,11 +232,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744290088, "lastModified": 1749574455,
"narHash": "sha256-/X9XVEl0EiyisNbF5srrxXRSVoRqdwExuqyspYqqEjQ=", "narHash": "sha256-fm2/8KPOYvvIAnNVtjDlTt/My00lIbZQ+LMrfQIWVzs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "60b4904a1390ac4c89e93d95f6ed928975e525ed", "rev": "917af390377c573932d84b5e31dd9f2c1b5c0f09",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -248,11 +248,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1744932701, "lastModified": 1749794982,
"narHash": "sha256-fusHbZCyv126cyArUwwKrLdCkgVAIaa/fQJYFlCEqiU=", "narHash": "sha256-Kh9K4taXbVuaLC0IL+9HcfvxsSUx8dPB5s5weJcc9pc=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b024ced1aac25639f8ca8fdfc2f8c4fbd66c48ef", "rev": "ee930f9755f58096ac6e8ca94a1887e0534e2d81",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -268,14 +268,15 @@
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"nuschtosSearch": "nuschtosSearch" "nuschtosSearch": "nuschtosSearch",
"systems": "systems_3"
}, },
"locked": { "locked": {
"lastModified": 1744874965, "lastModified": 1749761870,
"narHash": "sha256-eOnMgAWsjqOhGRoY9smkKlNQcCz9R89mgiKwLrCIYBE=", "narHash": "sha256-y+rCuxTylur4k2MbL8cJwOR3pHIamCxp8xG9Vuhwvgw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixvim", "repo": "nixvim",
"rev": "500b56f023e0f095ffee2d4f79e58aa09e6b0719", "rev": "18d838e88945b554d059db5f1fff1daed4b7bf8f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -294,11 +295,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1743683223, "lastModified": 1749531675,
"narHash": "sha256-LdXtHFvhEC3S64dphap1pkkzwjErbW65eH1VRerCUT0=", "narHash": "sha256-UB8Mc88rW9frjpJ1Fj2ro7f07Gg8dX3uVXvMXnFR4CE=",
"owner": "NuschtOS", "owner": "NuschtOS",
"repo": "search", "repo": "search",
"rev": "56a49ffef2908dad1e9a8adef1f18802bc760962", "rev": "4029d450d0266909ee52775849b7da54e79b328e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -330,11 +331,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744669848, "lastModified": 1749592509,
"narHash": "sha256-pXyanHLUzLNd3MX9vsWG+6Z2hTU8niyphWstYEP3/GU=", "narHash": "sha256-VunQzfZFA+Y6x3wYi2UE4DEQ8qKoAZZCnZPUlSoqC+A=",
"owner": "mic92", "owner": "mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "61154300d945f0b147b30d24ddcafa159148026a", "rev": "50754dfaa0e24e313c626900d44ef431f3210138",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -372,6 +373,21 @@
"repo": "default", "repo": "default",
"type": "github" "type": "github"
} }
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View file

@ -107,7 +107,7 @@
deploy = { deploy = {
nodes = { nodes = {
rockhole = { rockhole = {
hostname = "rockpro"; hostname = "rockhole";
profiles.system.path = deploy-rs.lib.aarch64-linux.activate.nixos self.nixosConfigurations.rockhole; profiles.system.path = deploy-rs.lib.aarch64-linux.activate.nixos self.nixosConfigurations.rockhole;
remoteBuild = true; remoteBuild = true;
}; };

View file

@ -9,5 +9,7 @@
enable = true; enable = true;
mutableSettings = true; mutableSettings = true;
allowDHCP = true; allowDHCP = true;
openFirewall=true;
port=80;
}; };
} }

View file

@ -35,17 +35,18 @@ inputs.nixpkgs.lib.nixosSystem {
host.details = { host.details = {
user = "gabe"; user = "gabe";
fullName = "Gabe Venberg"; fullName = "Gabe Venberg";
gui.enable = false;
}; };
networking.hostName = "rockhole"; # Define your hostname. networking.hostName = "rockhole"; # Define your hostname.
networking.hostId = "e0c31928"; networking.hostId = "e0c31928";
networking.useNetworkd = true; networking.useNetworkd = true;
systemd.network = { systemd.network = {
enable = true; enable = true;
networks."TODO" = { networks."0-end0" = {
name = "TODO"; name = "end0";
address = ["10.10.0.2/16"]; address = ["10.10.0.2/16"];
gateway = ["10.10.0.1"]; gateway = ["10.10.0.1"];
dns = ["10.10.0.2"]; dns = ["1.1.1.1"];
}; };
}; };
@ -69,7 +70,7 @@ inputs.nixpkgs.lib.nixosSystem {
}; };
}; };
imports = [ imports = [
../../roles/home-manager/terminal.nix ../../roles/home-manager/minimal-terminal.nix
../../configs/home-manager/common.nix ../../configs/home-manager/common.nix
inputs.nixvim.homeManagerModules.nixvim inputs.nixvim.homeManagerModules.nixvim
# ../../configs/home-manager/secrets.nix # ../../configs/home-manager/secrets.nix