Compare commits

...

2 Commits

Author SHA1 Message Date
coolneng 42b8f67be8
Upgrade to nixfmt-rfc-style 2024-09-03 11:38:50 +02:00
coolneng 0565c43ef9
Adapt Pipewire-pulse TCP audio to upstream changes 2024-09-03 11:37:27 +02:00
4 changed files with 77 additions and 22 deletions

View File

@ -1,4 +1,10 @@
{ config, lib, pkgs, inputs, ... }:
{
config,
lib,
pkgs,
inputs,
...
}:
with pkgs;
@ -6,9 +12,11 @@ with pkgs;
# Kernel configuration
boot = {
kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
kernelParams =
[ "zfs.zfs_arc_max=8589934592" "zfs.zfs_arc_min=1073741824" ];
blacklistedKernelModules = [ "btusb" "bluetooth" ];
kernelParams = [
"zfs.zfs_arc_max=8589934592"
"zfs.zfs_arc_min=1073741824"
];
supportedFilesystems = [ "zfs" ];
zfs = {
requestEncryptionCredentials = true;
@ -38,7 +46,10 @@ with pkgs;
nix = {
settings = {
auto-optimise-store = true;
trusted-users = [ "root" "coolneng" ];
trusted-users = [
"root"
"coolneng"
];
};
gc = {
automatic = true;
@ -76,7 +87,12 @@ with pkgs;
users.users.coolneng = {
isNormalUser = true;
home = "/home/coolneng";
extraGroups = [ "wheel" "video" "audio" "lp" ];
extraGroups = [
"wheel"
"video"
"audio"
"lp"
];
shell = fish;
};
@ -97,15 +113,25 @@ with pkgs;
};
# Use same version of nixpkgs for nix-shell
nix.nixPath = let path = toString ./.;
in [ "nixpkgs=${inputs.nixpkgs}" "nixos-config=${path}/configuration.nix" ];
nix.nixPath =
let
path = toString ./.;
in
[
"nixpkgs=${inputs.nixpkgs}"
"nixos-config=${path}/configuration.nix"
];
# Auto-upgrade the system
system.autoUpgrade = {
enable = true;
dates = "22:30";
flake = "/home/coolneng/Projects/panacea";
flags = [ "--update-input" "nixpkgs" "--commit-lock-file" ];
flags = [
"--update-input"
"nixpkgs"
"--commit-lock-file"
];
};
# Add required dependencies to the auto-upgrade service

View File

@ -1,16 +1,25 @@
{ config, lib, pkgs, inputs, ... }:
{
config,
lib,
pkgs,
inputs,
...
}:
with pkgs;
let
# HACK Replace youtube-dl with yt-dlp in mopidy-youtube
mopidy-youtube-yt_dlp = mopidy-youtube.overrideAttrs (old: rec {
propagatedBuildInputs = old.propagatedBuildInputs
++ [ python3.pkgs.yt-dlp python3.pkgs.ytmusicapi ];
propagatedBuildInputs = old.propagatedBuildInputs ++ [
python3.pkgs.yt-dlp
python3.pkgs.ytmusicapi
];
});
soundcloud_token = builtins.readFile ../secrets/soundcloud_token;
in {
in
{
# Configure pipewire as sound server
services.pipewire = {
enable = true;
@ -21,9 +30,12 @@ in {
pulse.enable = true;
wireplumber.enable = true;
# Enable pipewire-pulse's audio via TCP
extraConfig.pipewire-pulse = {
extraConfig.pipewire-pulse.tcp-server = {
"pulse.properties" = {
"server.address" = [ "unix:native" "tcp:127.0.0.1:4713" ];
"server.address" = [
"unix:native"
"tcp:127.0.0.1:4713"
];
};
};
};

View File

@ -1,4 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
with pkgs;

View File

@ -1,12 +1,23 @@
{ config, lib, pkgs, inputs, ... }:
{
config,
lib,
pkgs,
inputs,
...
}:
with pkgs;
let
custom-mpv = (mpv-unwrapped.wrapper {
mpv = mpv-unwrapped;
scripts = with mpvScripts; [ sponsorblock-minimal mpv-cheatsheet ];
});
custom-mpv = (
mpv-unwrapped.wrapper {
mpv = mpv-unwrapped;
scripts = with mpvScripts; [
sponsorblock-minimal
mpv-cheatsheet
];
}
);
patched-bitwig = bitwig-studio.overrideAttrs (old: rec {
src = "${inputs.local-bitwig}/bitwig-studio.deb";
@ -15,7 +26,8 @@ let
'';
});
in {
in
{
environment.systemPackages = [
# Monitoring
htop
@ -102,7 +114,7 @@ in {
shellcheck
shfmt
## Nix
nixfmt
nixfmt-rfc-style
## Python
nodePackages.pyright
black