From 0dc1ae58fbd42e531793b8bf84bdcb10d0564769 Mon Sep 17 00:00:00 2001
From: DerGrumpf
Date: Sat, 16 Aug 2025 19:28:53 +0200
Subject: [PATCH] Added TeamSpeak
---
flake.lock | 53 ++++++-
flake.nix | 1 +
home/programs/dev/beekeeper-studio.nix | 8 +
home/programs/dev/default.nix | 1 +
home/programs/media/spicetify.nix | 15 ++
.../media/spotify/player-configs/app.toml | 37 -----
.../media/spotify/player-configs/theme.toml | 148 ------------------
home/programs/media/spotify/spicetify.nix | 0
.../programs/media/spotify/spotify-player.nix | 13 --
home/programs/media/spotify/spotify-tui.nix | 13 --
home/programs/media/spotify/spotify.nix | 10 --
home/programs/media/spotify/spotifyd.nix | 12 --
home/programs/social/teamspeak.nix | 8 +
home/programs/web/floorp.nix | 11 ++
hosts/m920q/default.nix | 5 +-
modules/bluetooth.nix | 21 +++
modules/docker.nix | 34 ++++
modules/services.nix | 1 -
modules/system.nix | 1 +
users/phil/home.nix | 3 +-
20 files changed, 157 insertions(+), 238 deletions(-)
create mode 100644 home/programs/dev/beekeeper-studio.nix
create mode 100644 home/programs/media/spicetify.nix
delete mode 100644 home/programs/media/spotify/player-configs/app.toml
delete mode 100644 home/programs/media/spotify/player-configs/theme.toml
delete mode 100644 home/programs/media/spotify/spicetify.nix
delete mode 100644 home/programs/media/spotify/spotify-player.nix
delete mode 100644 home/programs/media/spotify/spotify-tui.nix
delete mode 100644 home/programs/media/spotify/spotify.nix
delete mode 100644 home/programs/media/spotify/spotifyd.nix
create mode 100644 home/programs/social/teamspeak.nix
create mode 100644 home/programs/web/floorp.nix
create mode 100644 modules/bluetooth.nix
create mode 100644 modules/docker.nix
diff --git a/flake.lock b/flake.lock
index 7833888..7af56ed 100644
--- a/flake.lock
+++ b/flake.lock
@@ -447,6 +447,22 @@
"type": "github"
}
},
+ "nixpkgs_4": {
+ "locked": {
+ "lastModified": 1751984180,
+ "narHash": "sha256-LwWRsENAZJKUdD3SpLluwDmdXY9F45ZEgCb0X+xgOL0=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "9807714d6944a957c2e036f84b0ff8caf9930bc0",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
"pre-commit-hooks": {
"inputs": {
"flake-compat": "flake-compat",
@@ -476,7 +492,27 @@
"home-manager": "home-manager",
"hyprland": "hyprland",
"hyprland-plugins": "hyprland-plugins",
- "nixpkgs": "nixpkgs_3"
+ "nixpkgs": "nixpkgs_3",
+ "spicetify-nix": "spicetify-nix"
+ }
+ },
+ "spicetify-nix": {
+ "inputs": {
+ "nixpkgs": "nixpkgs_4",
+ "systems": "systems_2"
+ },
+ "locked": {
+ "lastModified": 1751776600,
+ "narHash": "sha256-75wd/aSvSoXUVd/buwI+Gsqx6LdmBVMbdXw+tCV1u58=",
+ "owner": "Gerg-L",
+ "repo": "spicetify-nix",
+ "rev": "54fad36eeae085f4a6ce4522bc351705b9c0c58a",
+ "type": "github"
+ },
+ "original": {
+ "owner": "Gerg-L",
+ "repo": "spicetify-nix",
+ "type": "github"
}
},
"systems": {
@@ -494,6 +530,21 @@
"type": "github"
}
},
+ "systems_2": {
+ "locked": {
+ "lastModified": 1681028828,
+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+ "owner": "nix-systems",
+ "repo": "default",
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-systems",
+ "repo": "default",
+ "type": "github"
+ }
+ },
"xdph": {
"inputs": {
"hyprland-protocols": [
diff --git a/flake.nix b/flake.nix
index 5957b51..96129f2 100644
--- a/flake.nix
+++ b/flake.nix
@@ -23,6 +23,7 @@
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
hyprland.url = "github:hyprwm/Hyprland";
+ spicetify-nix.url = "github:Gerg-L/spicetify-nix";
/*nixvim = {
url = "github:nix-community/nixvim/nixos-24.11";
diff --git a/home/programs/dev/beekeeper-studio.nix b/home/programs/dev/beekeeper-studio.nix
new file mode 100644
index 0000000..2bbedc4
--- /dev/null
+++ b/home/programs/dev/beekeeper-studio.nix
@@ -0,0 +1,8 @@
+{ pkgs, ... }:
+
+{
+ # Install sqlitebrowser (DB Browser for SQLite)
+ home.packages = with pkgs; [
+ beekeeper-studio
+ ];
+}
diff --git a/home/programs/dev/default.nix b/home/programs/dev/default.nix
index eaf2be0..9f5d9b4 100644
--- a/home/programs/dev/default.nix
+++ b/home/programs/dev/default.nix
@@ -6,5 +6,6 @@
./openscad.nix
./sqllite_browser.nix
./compilers.nix
+ ./beekeeper-studio.nix
];
}
diff --git a/home/programs/media/spicetify.nix b/home/programs/media/spicetify.nix
new file mode 100644
index 0000000..26a77c1
--- /dev/null
+++ b/home/programs/media/spicetify.nix
@@ -0,0 +1,15 @@
+{ pkgs, inputs } :
+{
+ imports = [
+ inputs.spicetify-nix.homeManagerModules.default
+ ];
+
+ programs.spicetify =
+ let
+ spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
+ in
+ {
+ enable = true;
+ theme = spicePkgs.themes.catppuccin;
+ }
+}
diff --git a/home/programs/media/spotify/player-configs/app.toml b/home/programs/media/spotify/player-configs/app.toml
deleted file mode 100644
index 09c205b..0000000
--- a/home/programs/media/spotify/player-configs/app.toml
+++ /dev/null
@@ -1,37 +0,0 @@
-theme = "Catppuccin-mocha"
-client_id = "bd5cf4b9f6504ad9b357a1285e32b391"
-login_redirect_uri = "http://127.0.0.1:8989/login"
-client_port = 8080
-tracks_playback_limit = 50
-playback_format = "{status} {track} • {artists}\n{album}\n{metadata}"
-notify_format = { summary = "{track} • {artists}", body = "{album}" }
-notify_timeout_in_secs = 0
-app_refresh_duration_in_ms = 32
-playback_refresh_duration_in_ms = 0
-page_size_in_rows = 20
-enable_media_control = true
-enable_streaming = "Always"
-enable_notify = true
-enable_cover_image_cache = true
-notify_streaming_only = false
-default_device = "spotify-player"
-play_icon = "▶"
-pause_icon = "▌▌"
-liked_icon = "♥"
-cover_img_length = 9
-cover_img_width = 5
-seek_duration_secs = 5
-
-[device]
-name = "nix"
-device_type = "speaker"
-volume = 70
-bitrate = 320
-audio_cache = false
-normalization = false
-autoplay = false
-
-[layout]
-library = { playlist_percent = 40, album_percent = 40 }
-playback_window_position = "Top"
-playback_window_height = 6
diff --git a/home/programs/media/spotify/player-configs/theme.toml b/home/programs/media/spotify/player-configs/theme.toml
deleted file mode 100644
index 3d16865..0000000
--- a/home/programs/media/spotify/player-configs/theme.toml
+++ /dev/null
@@ -1,148 +0,0 @@
-[[themes]]
-name = "Catppuccin-latte"
-[themes.palette]
-background = "#eff1f5"
-foreground = "#4c4f69"
-black = "#eff1f5"
-blue = "#1e66f5"
-cyan = "#04a5e5"
-green = "#40a02b"
-magenta = "#8839ef"
-red = "#d20f39"
-white = "#4c4f69"
-yellow = "#df8e1d"
-bright_black = "#eff1f5"
-bright_blue = "#1e66f5"
-bright_cyan = "#04a5e5"
-bright_green = "#40a02b"
-bright_magenta = "#8839ef"
-bright_red = "#d20f39"
-bright_white = "#4c4f69"
-bright_yellow = "#df8e1d"
-
-[themes.component_style]
-selection = { bg = "#ccd0da", modifiers = ["Bold"] }
-block_title = { fg = "Magenta" }
-playback_track = { fg = "Cyan", modifiers = ["Bold"] }
-playback_album = { fg = "Yellow" }
-playback_metadata = { fg = "Blue" }
-playback_progress_bar = { bg = "#ccd0da", fg = "Green" }
-current_playing = { fg = "Green", modifiers = ["Bold"] }
-page_desc = { fg = "Cyan", modifiers = ["Bold"] }
-table_header = { fg = "Blue" }
-border = {}
-playback_status = { fg = "Cyan", modifiers = ["Bold"] }
-playback_artists = { fg = "Cyan", modifiers = ["Bold"] }
-playlist_desc = { fg = "#6c6f85" }
-
-[[themes]]
-name = "Catppuccin-frappe"
-[themes.palette]
-background = "#303446"
-foreground = "#c6d0f5"
-black = "#303446"
-blue = "#8caaee"
-cyan = "#99d1db"
-green = "#a6d189"
-magenta = "#ca9ee6"
-red = "#e78284"
-white = "#c6d0f5"
-yellow = "#e5c890"
-bright_black = "#303446"
-bright_blue = "#8caaee"
-bright_cyan = "#99d1db"
-bright_green = "#a6d189"
-bright_magenta = "#ca9ee6"
-bright_red = "#e78284"
-bright_white = "#c6d0f5"
-bright_yellow = "#e5c890"
-
-[themes.component_style]
-selection = { bg = "#414559", modifiers = ["Bold"] }
-block_title = { fg = "Magenta" }
-playback_track = { fg = "Cyan", modifiers = ["Bold"] }
-playback_album = { fg = "Yellow" }
-playback_metadata = { fg = "Blue" }
-playback_progress_bar = { bg = "#414559", fg = "Green" }
-current_playing = { fg = "Green", modifiers = ["Bold"] }
-page_desc = { fg = "Cyan", modifiers = ["Bold"] }
-table_header = { fg = "Blue" }
-border = {}
-playback_status = { fg = "Cyan", modifiers = ["Bold"] }
-playback_artists = { fg = "Cyan", modifiers = ["Bold"] }
-playlist_desc = { fg = "#a5adce" }
-
-[[themes]]
-name = "Catppuccin-macchiato"
-[themes.palette]
-background = "#24273a"
-foreground = "#cad3f5"
-black = "#24273a"
-blue = "#8aadf4"
-cyan = "#91d7e3"
-green = "#a6da95"
-magenta = "#c6a0f6"
-red = "#ed8796"
-white = "#cad3f5"
-yellow = "#eed49f"
-bright_black = "#24273a"
-bright_blue = "#8aadf4"
-bright_cyan = "#91d7e3"
-bright_green = "#a6da95"
-bright_magenta = "#c6a0f6"
-bright_red = "#ed8796"
-bright_white = "#cad3f5"
-bright_yellow = "#eed49f"
-
-[themes.component_style]
-selection = { bg = "#363a4f", modifiers = ["Bold"] }
-block_title = { fg = "Magenta" }
-playback_track = { fg = "Cyan", modifiers = ["Bold"] }
-playback_album = { fg = "Yellow" }
-playback_metadata = { fg = "Blue" }
-playback_progress_bar = { bg = "#363a4f", fg = "Green" }
-current_playing = { fg = "Green", modifiers = ["Bold"] }
-page_desc = { fg = "Cyan", modifiers = ["Bold"] }
-table_header = { fg = "Blue" }
-border = {}
-playback_status = { fg = "Cyan", modifiers = ["Bold"] }
-playback_artists = { fg = "Cyan", modifiers = ["Bold"] }
-playlist_desc = { fg = "#a5adcb" }
-
-[[themes]]
-name = "Catppuccin-mocha"
-[themes.palette]
-background = "#1e1e2e"
-foreground = "#cdd6f4"
-black = "#1e1e2e"
-blue = "#89b4fa"
-cyan = "#89dceb"
-green = "#a6e3a1"
-magenta = "#cba6f7"
-red = "#f38ba8"
-white = "#cdd6f4"
-yellow = "#f9e2af"
-bright_black = "#1e1e2e"
-bright_blue = "#89b4fa"
-bright_cyan = "#89dceb"
-bright_green = "#a6e3a1"
-bright_magenta = "#cba6f7"
-bright_red = "#f38ba8"
-bright_white = "#cdd6f4"
-bright_yellow = "#f9e2af"
-
-[themes.component_style]
-selection = { bg = "#313244", modifiers = ["Bold"] }
-block_title = { fg = "Magenta" }
-playback_track = { fg = "Cyan", modifiers = ["Bold"] }
-playback_album = { fg = "Yellow" }
-playback_metadata = { fg = "Blue" }
-playback_progress_bar = { bg = "#313244", fg = "Green" }
-current_playing = { fg = "Green", modifiers = ["Bold"] }
-page_desc = { fg = "Cyan", modifiers = ["Bold"] }
-table_header = { fg = "Blue" }
-border = {}
-playback_status = { fg = "Cyan", modifiers = ["Bold"] }
-playback_artists = { fg = "Cyan", modifiers = ["Bold"] }
-playlist_desc = { fg = "#a6adc8" }
-
diff --git a/home/programs/media/spotify/spicetify.nix b/home/programs/media/spotify/spicetify.nix
deleted file mode 100644
index e69de29..0000000
diff --git a/home/programs/media/spotify/spotify-player.nix b/home/programs/media/spotify/spotify-player.nix
deleted file mode 100644
index dd4ac04..0000000
--- a/home/programs/media/spotify/spotify-player.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [
- spotify-player
- ];
-
- home.file.".config/spotify-player" = {
- source = ./player-configs;
- # copy the scripts directory recursively
- recursive = true;
- };
-
-}
diff --git a/home/programs/media/spotify/spotify-tui.nix b/home/programs/media/spotify/spotify-tui.nix
deleted file mode 100644
index fdb093c..0000000
--- a/home/programs/media/spotify/spotify-tui.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ pkgs, ... }:
-{
- home.packages = with pkgs; [
- spotify-tui
- ];
-
- /*home.file.".config/spotify-player" = {
- source = ./configs;
- # copy the scripts directory recursively
- recursive = true;
- };*/
-
-}
diff --git a/home/programs/media/spotify/spotify.nix b/home/programs/media/spotify/spotify.nix
deleted file mode 100644
index 5c0ba43..0000000
--- a/home/programs/media/spotify/spotify.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ pkgs, ... }:
-
-{
- # Install Spotify
- home.packages = with pkgs; [
- spotify
- spicetify-cli
- ];
-
-}
diff --git a/home/programs/media/spotify/spotifyd.nix b/home/programs/media/spotify/spotifyd.nix
deleted file mode 100644
index 6ae0b8e..0000000
--- a/home/programs/media/spotify/spotifyd.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ pkgs, ...}:
-{
- services.spotifyd = {
- enable = true;
- settings = {
- global = {
- username = "";
- password = "";
- };
- };
- };
-}
diff --git a/home/programs/social/teamspeak.nix b/home/programs/social/teamspeak.nix
new file mode 100644
index 0000000..c6ce517
--- /dev/null
+++ b/home/programs/social/teamspeak.nix
@@ -0,0 +1,8 @@
+{ pkgs, ... }:
+
+{
+ # Install Element Desktop
+ home.packages = with pkgs; [
+ teamspeak3
+ ];
+}
diff --git a/home/programs/web/floorp.nix b/home/programs/web/floorp.nix
new file mode 100644
index 0000000..b1367a7
--- /dev/null
+++ b/home/programs/web/floorp.nix
@@ -0,0 +1,11 @@
+{
+ pkgs,
+ config,
+ username,
+ ...
+}: {
+ programs.floorp = {
+ enable = true;
+ profiles.${username} = {};
+ };
+}
diff --git a/hosts/m920q/default.nix b/hosts/m920q/default.nix
index 59e0c69..b275a13 100644
--- a/hosts/m920q/default.nix
+++ b/hosts/m920q/default.nix
@@ -14,7 +14,8 @@
../../modules/localisation.nix
../../modules/openssh.nix
../../modules/pipewire.nix
- ../../modules/podman.nix
+ #../../modules/podman.nix
+ ../../modules/docker.nix
../../modules/services.nix
../../modules/regreet/regreet.nix
../../modules/plymouth.nix
@@ -51,7 +52,7 @@
};
nameservers = [
- "192.168.2.50"
+ "192.168.2.2"
"1.1.1.1"
"8.8.8.8"
];
diff --git a/modules/bluetooth.nix b/modules/bluetooth.nix
new file mode 100644
index 0000000..465cba6
--- /dev/null
+++ b/modules/bluetooth.nix
@@ -0,0 +1,21 @@
+{ pkgs, ... }:
+{
+ hardware.bluetooth = {
+ enable = true;
+ powerOnBoot = true;
+ settings = {
+ General = {
+ Enable = "Source,Sink,Media,Socket";
+ Experimental = true;
+ }
+ };
+ }
+
+ services.blueman.enable = true; # Graphical Manager
+
+ hardware.pulseaudio = {
+ enable = true;
+ package = pkgs.pulseaudioFull;
+ extraModules = [ pkgs.pulseaudio-modules-bt ];
+ }
+}
diff --git a/modules/docker.nix b/modules/docker.nix
new file mode 100644
index 0000000..ae142b7
--- /dev/null
+++ b/modules/docker.nix
@@ -0,0 +1,34 @@
+{ pkgs, ...}:
+{
+
+ environment.systemPackages = with pkgs; [
+ # Virtualisation
+ docker-compose # docker-compose alternative
+ dive # docker layer viewer
+ tailscale # Vpn
+ ];
+ # Virtualisation
+ virtualisation = {
+ containers.enable = true;
+
+ docker = {
+ enable = true;
+ rootless = {
+ enable = true;
+ setSocketVariable = true;
+ };
+ };
+
+ oci-containers = {
+ backend = "docker";
+ containers = {
+ /*container-name = {
+ image = "image";
+ autoStart = true;
+ ports = [ "127.0.0.1:1234:1234" ];
+ };*/
+ };
+ };
+ };
+
+}
diff --git a/modules/services.nix b/modules/services.nix
index 26f653e..3afe5c1 100644
--- a/modules/services.nix
+++ b/modules/services.nix
@@ -5,7 +5,6 @@
# flatpak.enable = true;
# xdg.portals.enable = true;
-
geoclue2.enable = true;
xserver.enable = true;
diff --git a/modules/system.nix b/modules/system.nix
index 07f3754..bdaa461 100644
--- a/modules/system.nix
+++ b/modules/system.nix
@@ -34,6 +34,7 @@
lshw
nvme-cli
smartmontools
+ bluez
# Graphics
libGL
diff --git a/users/phil/home.nix b/users/phil/home.nix
index 96e7a88..9f989cf 100644
--- a/users/phil/home.nix
+++ b/users/phil/home.nix
@@ -18,7 +18,7 @@
../../home/programs/media/media.nix
../../home/programs/media/audacity.nix
../../home/programs/media/obs.nix
- ../../home/programs/media/spotify/spotify.nix
+# ../../home/programs/media/spicetify.nix
../../home/programs/productivity/blender.nix
../../home/programs/productivity/slicer.nix
@@ -31,6 +31,7 @@
../../home/programs/web/firefox.nix
../../home/programs/web/chromium.nix
+ ../../home/programs/web/floorp.nix
# Games
../../home/programs/games/itch.nix