183 lines
4.0 KiB
Nix
183 lines
4.0 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
homeDirectory,
|
|
...
|
|
}:
|
|
{
|
|
imports = [ ./gui.nix ];
|
|
|
|
home.packages = with pkgs; [
|
|
wdisplays
|
|
intel-gpu-tools
|
|
swaylock
|
|
|
|
# manage bluetooth devices
|
|
blueman
|
|
|
|
niri
|
|
];
|
|
|
|
# bluetooth manager
|
|
services.blueman-applet.enable = true;
|
|
|
|
# notification daemon
|
|
services.dunst = {
|
|
enable = true;
|
|
package = pkgs.dunst;
|
|
};
|
|
|
|
# window manager
|
|
programs.niri = {
|
|
settings = import ./progs/niri.nix { inherit config pkgs homeDirectory; };
|
|
};
|
|
|
|
programs.swaylock = {
|
|
enable = true;
|
|
settings = import ./progs/swaylock.nix;
|
|
};
|
|
|
|
# waybar for status bar
|
|
programs.waybar = import ./progs/waybar.nix { inherit pkgs; };
|
|
|
|
# rofi for application launcher
|
|
programs.rofi = {
|
|
enable = true;
|
|
package = pkgs.rofi-wayland;
|
|
extraConfig = {
|
|
modi = "window,drun,ssh,combi";
|
|
combi-modi = "window,drun,ssh";
|
|
};
|
|
};
|
|
|
|
age.secrets.borg-laptop-password = {
|
|
file = ./secrets/borg-laptop-password.age;
|
|
path = "${homeDirectory}/.secrets/borg_bak_pass";
|
|
};
|
|
|
|
# backup utility
|
|
programs.borgmatic = {
|
|
enable = true;
|
|
package = pkgs.borgmatic;
|
|
backups =
|
|
let
|
|
borgPasswordFile = config.age.secrets.borg-laptop-password.path;
|
|
in
|
|
import ./progs/borg.nix { inherit homeDirectory borgPasswordFile; };
|
|
};
|
|
|
|
# https://community.frame.work/t/speakers-sound-quality/1078/83
|
|
# Filter: ON HPQ Fc 100.0 Hz Gain 0.0 dB Q 1.0
|
|
# Filter: ON PK Fc 150.0 Hz Gain 4.02 dB Q 3.0
|
|
# Filter: ON PK Fc 600.0 Hz Gain -5.07 dB Q 4.000000000000008
|
|
# Filter: ON PK Fc 1200.0 Hz Gain -3.49 dB Q 4.17
|
|
# Filter: ON PK Fc 2000.0 Hz Gain 1.43 dB Q 4.0
|
|
# Filter: ON PK Fc 5300.0 Hz Gain 3.84 dB Q 2.64
|
|
# Filter: ON HSC Fc 6000.0 Hz Gain 4.02 dB Q 4.36
|
|
# Filter: ON PK Fc 7500.0 Hz Gain -2.09 dB Q 3.0
|
|
# Filter: ON PK Fc 8000.0 Hz Gain 2.01 dB Q 4.36
|
|
# Filter: ON PK Fc 900.0 Hz Gain -4.12 dB Q 5.909999999999967
|
|
home.file.".config/easyeffects/output/framework.json".text =
|
|
let
|
|
baseBand = {
|
|
mode = "RLC (BT)";
|
|
mute = false;
|
|
solo = false;
|
|
slope = "1x";
|
|
type = "Bell";
|
|
};
|
|
|
|
bandList = [
|
|
{
|
|
frequency = 100.0;
|
|
gain = 0.0;
|
|
q = 1.0;
|
|
slope = "x4";
|
|
type = "Hi-pass";
|
|
}
|
|
{
|
|
frequency = 150.0;
|
|
gain = 4.02;
|
|
q = 3.0;
|
|
}
|
|
{
|
|
frequency = 600.0;
|
|
gain = -5.07;
|
|
q = 4.000000000000008;
|
|
}
|
|
{
|
|
frequency = 1200.0;
|
|
gain = -3.49;
|
|
q = 4.17;
|
|
}
|
|
{
|
|
frequency = 2000.0;
|
|
gain = 1.43;
|
|
q = 4.0;
|
|
}
|
|
{
|
|
frequency = 5300.0;
|
|
gain = 3.84;
|
|
q = 2.64;
|
|
}
|
|
{
|
|
frequency = 6000.0;
|
|
gain = 4.02;
|
|
q = 4.36;
|
|
type = "Hi-shelf";
|
|
}
|
|
{
|
|
frequency = 7500.0;
|
|
gain = -2.09;
|
|
q = 3.0;
|
|
}
|
|
{
|
|
frequency = 8000.0;
|
|
gain = 2.01;
|
|
q = 4.36;
|
|
}
|
|
{
|
|
frequency = 900.0;
|
|
gain = -4.12;
|
|
q = 5.909999999999967;
|
|
}
|
|
];
|
|
|
|
bands = builtins.listToAttrs (
|
|
map (f: {
|
|
name = "band${toString f.snd}";
|
|
value = baseBand // f.fst;
|
|
}) (lib.lists.zipLists bandList (lib.range 0 (lib.length (bandList))))
|
|
);
|
|
|
|
in
|
|
builtins.toJSON {
|
|
output = {
|
|
blocklist = [ ];
|
|
equalizer = {
|
|
balance = 0.0;
|
|
bypass = false;
|
|
input-gain = 0.0;
|
|
left = bands;
|
|
right = bands;
|
|
mode = "IIR";
|
|
num-bands = 10;
|
|
output-gain = -1.5;
|
|
pitch-left = 0.0;
|
|
pitch-right = 0.0;
|
|
split-channels = false;
|
|
};
|
|
plugins_order = [
|
|
"equalizer"
|
|
];
|
|
};
|
|
};
|
|
|
|
services.easyeffects = {
|
|
enable = true;
|
|
package = pkgs.easyeffects;
|
|
preset = "framework";
|
|
};
|
|
}
|