mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2025-12-10 18:46:30 +00:00
update system
This commit is contained in:
@@ -44,9 +44,8 @@
|
||||
};
|
||||
|
||||
shell.components = {
|
||||
#dunst.enable = true;
|
||||
firefox-pip.enable = true;
|
||||
flameshot.enable = true;
|
||||
grimblast.enable = true;
|
||||
gnome-keyring.enable = true;
|
||||
hyprpicker.enable = true;
|
||||
kde-connect.enable = true;
|
||||
@@ -90,6 +89,7 @@
|
||||
audio.preset.pipewire.enable = true;
|
||||
cc1.enable = true;
|
||||
fv43u.enable = true;
|
||||
astro-a50.enable = true;
|
||||
# virtual-camera.enable = true;
|
||||
# hid-fanatecff.enable = true;
|
||||
|
||||
|
||||
@@ -55,8 +55,8 @@
|
||||
|
||||
shell.components = {
|
||||
firefox-pip.enable = true;
|
||||
flameshot.enable = true;
|
||||
gnome-keyring.enable = true;
|
||||
grimblast.enable = true;
|
||||
hyprpicker.enable = true;
|
||||
kde-connect.enable = true;
|
||||
kitty.enable = true;
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
./fonts/nerd-fonts.nix
|
||||
|
||||
./hardware/hid-fanatecff.nix
|
||||
./hardware/astro-a50.nix
|
||||
./hardware/audio.nix
|
||||
./hardware/gbmonctl.nix
|
||||
./hardware/nvidia-proprietary.nix
|
||||
@@ -33,6 +34,7 @@
|
||||
./shell/firefox-pip.nix
|
||||
./shell/flameshot.nix
|
||||
./shell/gnome-keyring.nix
|
||||
./shell/grimblast.nix
|
||||
./shell/hyprpicker.nix
|
||||
./shell/kde-connect.nix
|
||||
./shell/kitty.nix
|
||||
|
||||
11
modules/nixos/hardware/astro-a50-harman.txt
Normal file
11
modules/nixos/hardware/astro-a50-harman.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
Preamp: -4.08 dB
|
||||
Filter 1: ON LSC Fc 105.0 Hz Gain 3.9 dB Q 0.70
|
||||
Filter 2: ON PK Fc 51.8 Hz Gain -4.3 dB Q 0.81
|
||||
Filter 3: ON PK Fc 1118.3 Hz Gain -2.5 dB Q 3.36
|
||||
Filter 4: ON PK Fc 2620.0 Hz Gain -0.9 dB Q 3.24
|
||||
Filter 5: ON PK Fc 3300.0 Hz Gain 0.9 dB Q 5.82
|
||||
Filter 6: ON PK Fc 3859.3 Hz Gain 4.1 dB Q 3.08
|
||||
Filter 7: ON PK Fc 5115.7 Hz Gain 0.8 dB Q 5.14
|
||||
Filter 8: ON PK Fc 6116.7 Hz Gain -3.4 dB Q 3.42
|
||||
Filter 9: ON PK Fc 7416.1 Hz Gain -0.8 dB Q 4.16
|
||||
Filter 10: ON HSC Fc 10000.0 Hz Gain 0.3 dB Q 0.70
|
||||
73
modules/nixos/hardware/astro-a50.nix
Normal file
73
modules/nixos/hardware/astro-a50.nix
Normal file
@@ -0,0 +1,73 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
username,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.hardware.astro-a50;
|
||||
in
|
||||
{
|
||||
options.hardware.astro-a50 = {
|
||||
enable = mkEnableOption "Enable optimisations for the Logitech Astro A50 headset";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home-manager.users.${username} =
|
||||
let
|
||||
name = "Astro A50";
|
||||
nick = "A50";
|
||||
filter = bitrate: {
|
||||
"media.class" = "Audio/Sink";
|
||||
"alsa.components" = "USB046d:0b1c";
|
||||
"alsa.resolution_bits" = bitrate;
|
||||
};
|
||||
nodeNameIn = "astro-a50-eq-harman-in";
|
||||
in
|
||||
{
|
||||
home.packages = with pkgs; [ zam-plugins ];
|
||||
xdg.configFile = {
|
||||
"wireplumber/wireplumber.conf.d/51-astro-a50.conf".text = builtins.toJSON {
|
||||
"monitor.alsa.rules" = [
|
||||
{
|
||||
matches = [ (filter 16) ];
|
||||
actions.update-props = {
|
||||
"node.description" = "${name} Chat";
|
||||
"node.nick" = "${nick} Chat";
|
||||
};
|
||||
}
|
||||
{
|
||||
matches = [ (filter 24) ];
|
||||
actions.update-props = {
|
||||
"node.description" = name;
|
||||
"node.nick" = nick;
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
"pipewire/pipewire.conf.d/51-a50-eq.conf".text = builtins.toJSON {
|
||||
"context.modules" = [
|
||||
{
|
||||
name = "libpipewire-module-parametric-equalizer";
|
||||
args = {
|
||||
"equalizer.filepath" = builtins.toString ./astro-a50-harman.txt;
|
||||
"equalizer.description" = "${name} (Harman EQ)";
|
||||
"capture.props" = {
|
||||
"node.name" = nodeNameIn;
|
||||
"filter.smart" = true;
|
||||
"filter.smart.target" = filter 24;
|
||||
};
|
||||
"playback.props" = {
|
||||
"node.name" = "EQ Output";
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
36
modules/nixos/shell/grimblast.nix
Normal file
36
modules/nixos/shell/grimblast.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
username,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
cfg = config.shell.components.grimblast;
|
||||
in
|
||||
{
|
||||
options.shell.components.grimblast = {
|
||||
enable = lib.mkEnableOption (lib.mdDoc "Enable pre-configured grimblast");
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home-manager.users.${username} = {
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
bind = [
|
||||
"SUPER_SHIFT,V,exec,uwsm app -- ${lib.getExe pkgs.grimblast} --freeze copy area"
|
||||
];
|
||||
};
|
||||
};
|
||||
home = {
|
||||
# bugged, freezes
|
||||
sessionVariables.GRIMBLAST_EDITOR = "${lib.getExe pkgs.annotator}";
|
||||
packages = with pkgs; [
|
||||
grimblast
|
||||
annotator
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user