Compare commits
41 Commits
82bdf02971
...
fix-odysse
Author | SHA1 | Date | |
---|---|---|---|
2b255eadbb
|
|||
e113a6b280
|
|||
920df723ae
|
|||
ba2dd42e3e
|
|||
7ac7d21476
|
|||
bef12cd228
|
|||
6536bb12d1
|
|||
972af5d5e5
|
|||
92c6b765cf
|
|||
7e81e16301
|
|||
44cc7406f6
|
|||
9cc4470502
|
|||
2df8227ef9
|
|||
2c66879af9
|
|||
20004881bc
|
|||
3d88f00fea
|
|||
9df97fe586
|
|||
64e9c594a4
|
|||
caf0883698
|
|||
9bba2532aa
|
|||
74c4d3ebc7
|
|||
aa51563f3c
|
|||
8cadcd8edb
|
|||
77e0a83c04
|
|||
8c2959be2b
|
|||
6933ed941e
|
|||
fc440c6059
|
|||
f2c1acb36c
|
|||
51330323b0
|
|||
02a7b985bd
|
|||
298bce40af
|
|||
3ae30840a6
|
|||
2d62fedc98
|
|||
cb8c53049a
|
|||
255b103d63
|
|||
8d9ba597cd
|
|||
04df77ad75
|
|||
f8407c9ecf
|
|||
b092b0708b
|
|||
107c472d22
|
|||
56c1758bf7
|
24
flake.lock
generated
24
flake.lock
generated
@ -3,11 +3,11 @@
|
|||||||
"firefox-gnome-theme": {
|
"firefox-gnome-theme": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1693843314,
|
"lastModified": 1699621711,
|
||||||
"narHash": "sha256-SnSXskFvJP1OMFuDdhuxxbFpQKzSz3YLJyoxWscmDSA=",
|
"narHash": "sha256-GUvBQbagF/7W1AriPVvJYA1cmk9Y/iWXghj3cIFYQzU=",
|
||||||
"owner": "rafaelmardojai",
|
"owner": "rafaelmardojai",
|
||||||
"repo": "firefox-gnome-theme",
|
"repo": "firefox-gnome-theme",
|
||||||
"rev": "67cc89691b17bc09f110efa7fd6011c19d763597",
|
"rev": "1c32013cdbe17406de496cdf5f6899b84c4bbfed",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -23,11 +23,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1693208669,
|
"lastModified": 1699748081,
|
||||||
"narHash": "sha256-hHFaaUsZ860wvppPeiu7nJn/nXZjJfnqAQEu9SPFE9I=",
|
"narHash": "sha256-MOmMapBydd7MTjhX4eeQZzKlCABWw8W6iSHSG4OeFKE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "5bac4a1c06cd77cf8fc35a658ccb035a6c50cd2c",
|
"rev": "04bac349d585c9df38d78e0285b780a140dc74a4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -39,11 +39,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1694048570,
|
"lastModified": 1700097215,
|
||||||
"narHash": "sha256-PEQptwFCVaJ+jLFJgrZll2shQ9VI/7xVhrCYkJo8iIw=",
|
"narHash": "sha256-ODQ3gBTv1iHd7lG21H+ErVISB5wVeOhd/dEogOqHs/I=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4f77ea639305f1de0a14d9d41eef83313360638c",
|
"rev": "9fb122519e9cd465d532f736a98c1e1eb541ef6f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -63,11 +63,11 @@
|
|||||||
"thunderbird-gnome-theme": {
|
"thunderbird-gnome-theme": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1693936054,
|
"lastModified": 1699285862,
|
||||||
"narHash": "sha256-KwjdXFyrorAXiOQnAsqKOatpRaKTuVTnLfs4xOLe3PY=",
|
"narHash": "sha256-3TQYBJAeQ2fPFxQnD5iKRKKWFlN3GJhz1EkdwE+4m0k=",
|
||||||
"owner": "rafaelmardojai",
|
"owner": "rafaelmardojai",
|
||||||
"repo": "thunderbird-gnome-theme",
|
"repo": "thunderbird-gnome-theme",
|
||||||
"rev": "3df2e63b4818cf78b4bd8408763638b907df372b",
|
"rev": "a899ca12204d19f4834fbd092aa5bb05dc4bd127",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -25,7 +25,10 @@ with lib.my;
|
|||||||
|
|
||||||
modules = {
|
modules = {
|
||||||
desktop = {
|
desktop = {
|
||||||
apps.qbittorrent.enable = true;
|
apps = {
|
||||||
|
qbittorrent.enable = true;
|
||||||
|
thunderbird.enable = true;
|
||||||
|
};
|
||||||
browsers = {
|
browsers = {
|
||||||
firefox.enable = true;
|
firefox.enable = true;
|
||||||
};
|
};
|
||||||
|
57
hosts/odyssey/0001-Update-device-ID-for-PreSonus-1824c.patch
Normal file
57
hosts/odyssey/0001-Update-device-ID-for-PreSonus-1824c.patch
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
From c16be6b3b4da5a55e3ff4258ada123b5f03757e5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jordan Holt <jordan@vimium.com>
|
||||||
|
Date: Sun, 12 Nov 2023 12:13:39 +0000
|
||||||
|
Subject: [PATCH] Update device ID for PreSonus 1824c
|
||||||
|
|
||||||
|
---
|
||||||
|
sound/usb/format.c | 4 ++--
|
||||||
|
sound/usb/mixer_quirks.c | 2 +-
|
||||||
|
sound/usb/quirks.c | 4 ++--
|
||||||
|
3 files changed, 5 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/sound/usb/format.c b/sound/usb/format.c
|
||||||
|
index ab5fed9f55b6..da50a4782414 100644
|
||||||
|
--- a/sound/usb/format.c
|
||||||
|
+++ b/sound/usb/format.c
|
||||||
|
@@ -378,8 +378,8 @@ static int parse_uac2_sample_rate_range(struct snd_usb_audio *chip,
|
||||||
|
|
||||||
|
for (rate = min; rate <= max; rate += res) {
|
||||||
|
|
||||||
|
- /* Filter out invalid rates on Presonus Studio 1810c */
|
||||||
|
- if (chip->usb_id == USB_ID(0x194f, 0x010c) &&
|
||||||
|
+ /* Filter out invalid rates on Presonus Studio 1824c */
|
||||||
|
+ if (chip->usb_id == USB_ID(0x194f, 0x010d) &&
|
||||||
|
!s1810c_valid_sample_rate(fp, rate))
|
||||||
|
goto skip_rate;
|
||||||
|
|
||||||
|
diff --git a/sound/usb/mixer_quirks.c b/sound/usb/mixer_quirks.c
|
||||||
|
index 898bc3baca7b..c3135459c38c 100644
|
||||||
|
--- a/sound/usb/mixer_quirks.c
|
||||||
|
+++ b/sound/usb/mixer_quirks.c
|
||||||
|
@@ -3445,7 +3445,7 @@ int snd_usb_mixer_apply_create_quirk(struct usb_mixer_interface *mixer)
|
||||||
|
err = snd_rme_controls_create(mixer);
|
||||||
|
break;
|
||||||
|
|
||||||
|
- case USB_ID(0x194f, 0x010c): /* Presonus Studio 1810c */
|
||||||
|
+ case USB_ID(0x194f, 0x010d): /* Presonus Studio 1824c */
|
||||||
|
err = snd_sc1810_init_mixer(mixer);
|
||||||
|
break;
|
||||||
|
case USB_ID(0x2a39, 0x3fb0): /* RME Babyface Pro FS */
|
||||||
|
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
|
||||||
|
index ab2b938502eb..b86832edaaa0 100644
|
||||||
|
--- a/sound/usb/quirks.c
|
||||||
|
+++ b/sound/usb/quirks.c
|
||||||
|
@@ -1551,8 +1551,8 @@ int snd_usb_apply_interface_quirk(struct snd_usb_audio *chip,
|
||||||
|
/* fasttrackpro usb: skip altsets incompatible with device_setup */
|
||||||
|
if (chip->usb_id == USB_ID(0x0763, 0x2012))
|
||||||
|
return fasttrackpro_skip_setting_quirk(chip, iface, altno);
|
||||||
|
- /* presonus studio 1810c: skip altsets incompatible with device_setup */
|
||||||
|
- if (chip->usb_id == USB_ID(0x194f, 0x010c))
|
||||||
|
+ /* presonus studio 1824c: skip altsets incompatible with device_setup */
|
||||||
|
+ if (chip->usb_id == USB_ID(0x194f, 0x010d))
|
||||||
|
return s1810c_skip_setting_quirk(chip, iface, altno);
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
2.40.1
|
||||||
|
|
@ -19,6 +19,29 @@ with lib.my;
|
|||||||
|
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
|
environment.etc."pipewire/pipewire.conf.d/surround.conf".text = ''
|
||||||
|
context.modules = [
|
||||||
|
{
|
||||||
|
name = libpipewire-module-loopback
|
||||||
|
args = {
|
||||||
|
node.description = "1824c Surround"
|
||||||
|
capture.props = {
|
||||||
|
node.name = "1824c_Speakers"
|
||||||
|
media.class = "Audio/Sink"
|
||||||
|
audio.position = [ FL FR FC SL SR LFE ]
|
||||||
|
}
|
||||||
|
playback.props = {
|
||||||
|
node.name = "playback.1824c_Speakers"
|
||||||
|
audio.position = [ AUX0 AUX1 AUX2 AUX3 AUX4 AUX5 ]
|
||||||
|
target.object = "alsa_output.usb-PreSonus_Studio_1824c_SC4E21110775-00.multichannel-output"
|
||||||
|
stream.dont-remix = true
|
||||||
|
node.passive = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
'';
|
||||||
|
|
||||||
nix.package = pkgs.nixFlakes;
|
nix.package = pkgs.nixFlakes;
|
||||||
nix.extraOptions = ''
|
nix.extraOptions = ''
|
||||||
experimental-features = nix-command flakes
|
experimental-features = nix-command flakes
|
||||||
@ -52,6 +75,7 @@ with lib.my;
|
|||||||
firefox.enable = true;
|
firefox.enable = true;
|
||||||
};
|
};
|
||||||
media.graphics = {
|
media.graphics = {
|
||||||
|
modeling.enable = true;
|
||||||
raster.enable = true;
|
raster.enable = true;
|
||||||
vector.enable = true;
|
vector.enable = true;
|
||||||
};
|
};
|
||||||
|
@ -3,7 +3,11 @@
|
|||||||
# to /etc/nixos/configuration.nix instead.
|
# to /etc/nixos/configuration.nix instead.
|
||||||
{ config, lib, pkgs, modulesPath, ... }:
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
{
|
let
|
||||||
|
snd-usb-audio-module = pkgs.callPackage ./snd-usb-audio.nix {
|
||||||
|
kernel = config.boot.kernelPackages.kernel;
|
||||||
|
};
|
||||||
|
in {
|
||||||
imports =
|
imports =
|
||||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
@ -11,8 +15,13 @@
|
|||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [
|
||||||
|
(snd-usb-audio-module.overrideAttrs (_: {
|
||||||
|
patches = [ ./0001-Update-device-ID-for-PreSonus-1824c.patch ];
|
||||||
|
}))
|
||||||
|
];
|
||||||
boot.supportedFilesystems = [ "ntfs" ];
|
boot.supportedFilesystems = [ "ntfs" ];
|
||||||
|
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
||||||
|
|
||||||
hardware.nvidia = {
|
hardware.nvidia = {
|
||||||
modesetting.enable = true;
|
modesetting.enable = true;
|
||||||
@ -35,6 +44,11 @@
|
|||||||
fsType = "zfs";
|
fsType = "zfs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
fileSystems."/nix" =
|
||||||
|
{ device = "rpool/local/nix";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
|
||||||
fileSystems."/tmp" =
|
fileSystems."/tmp" =
|
||||||
{ device = "rpool/local/tmp";
|
{ device = "rpool/local/tmp";
|
||||||
fsType = "zfs";
|
fsType = "zfs";
|
||||||
|
36
hosts/odyssey/snd-usb-audio.nix
Normal file
36
hosts/odyssey/snd-usb-audio.nix
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
{ pkgs, lib, kernel ? pkgs.linuxPackages_latest.kernel }:
|
||||||
|
|
||||||
|
pkgs.stdenv.mkDerivation {
|
||||||
|
pname = "snd-usb-audio";
|
||||||
|
inherit (kernel) src version postPatch nativeBuildInputs;
|
||||||
|
|
||||||
|
kernel_dev = kernel.dev;
|
||||||
|
kernelVersion = kernel.modDirVersion;
|
||||||
|
|
||||||
|
modulePath = "sound/usb";
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
BUILT_KERNEL=$kernel_dev/lib/modules/$kernelVersion/build
|
||||||
|
|
||||||
|
cp $BUILT_KERNEL/Module.symvers .
|
||||||
|
cp $BUILT_KERNEL/.config .
|
||||||
|
cp $kernel_dev/vmlinux .
|
||||||
|
|
||||||
|
make "-j$NIX_BUILD_CORES" modules_prepare
|
||||||
|
make "-j$NIX_BUILD_CORES" M=$modulePath modules
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
make \
|
||||||
|
INSTALL_MOD_PATH="$out" \
|
||||||
|
XZ="xz -T$NIX_BUILD_CORES" \
|
||||||
|
M="$modulePath" \
|
||||||
|
modules_install
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "USB Sound kernel module";
|
||||||
|
license = lib.licenses.gpl2;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -9,7 +9,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home.file.".mozilla/thunderbird/Default/chrome/thunderbird-gnome-theme".source = inputs.thunderbird-gnome-theme;
|
home.file.".thunderbird/Default/chrome/thunderbird-gnome-theme".source = inputs.thunderbird-gnome-theme;
|
||||||
|
|
||||||
home.programs.thunderbird = {
|
home.programs.thunderbird = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -15,6 +15,8 @@ in {
|
|||||||
desktopManager.gnome.enable = true;
|
desktopManager.gnome.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
dconf.settings = {
|
dconf.settings = {
|
||||||
"com/raggesilver/BlackBox" = {
|
"com/raggesilver/BlackBox" = {
|
||||||
@ -25,20 +27,24 @@ in {
|
|||||||
"org/gnome/shell" = {
|
"org/gnome/shell" = {
|
||||||
disable-user-extensions = false;
|
disable-user-extensions = false;
|
||||||
enabled-extensions = [
|
enabled-extensions = [
|
||||||
"another-window-session-manager@gmail.com"
|
# "another-window-session-manager@gmail.com"
|
||||||
"blur-my-shell@aunetx"
|
"blur-my-shell@aunetx"
|
||||||
"burn-my-windows@schneegans.github.com"
|
"burn-my-windows@schneegans.github.com"
|
||||||
"desktop-cube@schneegans.github.com"
|
# "desktop-cube@schneegans.github.com"
|
||||||
"desktop-zoom@colin.kinlo.ch"
|
# "desktop-zoom@colin.kinlo.ch"
|
||||||
"espresso@coadmunkee.github.com"
|
"espresso@coadmunkee.github.com"
|
||||||
|
"flypie@schneegans.github.com"
|
||||||
# "forge@jmmaranan.com"
|
# "forge@jmmaranan.com"
|
||||||
"hue-lights@chlumskyvaclav@gmail.com"
|
"hue-lights@chlumskyvaclav@gmail.com"
|
||||||
"just-perfection-desktop@just-perfection"
|
"just-perfection-desktop@just-perfection"
|
||||||
"space-bar@luchrioh"
|
"paperwm@hedning:matrix.org"
|
||||||
|
# "search-light@icedman.github.com"
|
||||||
|
# "space-bar@luchrioh"
|
||||||
# "smart-auto-move@khimaros.com"
|
# "smart-auto-move@khimaros.com"
|
||||||
# "systemd-manager@hardpixel.eu"
|
# "systemd-manager@hardpixel.eu"
|
||||||
# "tailscale-status@maxgallup.github.com"
|
# "tailscale-status@maxgallup.github.com"
|
||||||
"tiling-assistant@leleat-on-github"
|
# "tiling-assistant@leleat-on-github"
|
||||||
|
"Vitals@CoreCoding.com"
|
||||||
# "wsmatrix@martin.zurowietz.de"
|
# "wsmatrix@martin.zurowietz.de"
|
||||||
];
|
];
|
||||||
favorite-apps = [
|
favorite-apps = [
|
||||||
@ -72,6 +78,9 @@ in {
|
|||||||
"com.obsproject.Studio.desktop"
|
"com.obsproject.Studio.desktop"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
"org/gnome/shell/extensions/paperwm" = {
|
||||||
|
use-default-background = true;
|
||||||
|
};
|
||||||
"org/gnome/shell/extensions/forge" = {
|
"org/gnome/shell/extensions/forge" = {
|
||||||
window-gap-size = 8;
|
window-gap-size = 8;
|
||||||
window-gap-hidden-on-single = false;
|
window-gap-hidden-on-single = false;
|
||||||
@ -114,6 +123,9 @@ in {
|
|||||||
"<Shift>F11"
|
"<Shift>F11"
|
||||||
"XF86AudioLowerVolume"
|
"XF86AudioLowerVolume"
|
||||||
];
|
];
|
||||||
|
screensaver = [
|
||||||
|
"<Shift><Super>l"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
"org/gnome/gnome-session" = {
|
"org/gnome/gnome-session" = {
|
||||||
auto-save-session = true;
|
auto-save-session = true;
|
||||||
@ -166,18 +178,22 @@ in {
|
|||||||
gnomeExtensions.desktop-cube
|
gnomeExtensions.desktop-cube
|
||||||
gnomeExtensions.desktop-zoom
|
gnomeExtensions.desktop-zoom
|
||||||
gnomeExtensions.espresso
|
gnomeExtensions.espresso
|
||||||
|
gnome44Extensions."flypie@schneegans.github.com"
|
||||||
# gnomeExtensions.forge
|
# gnomeExtensions.forge
|
||||||
# gnomeExtensions.gsnap
|
# gnomeExtensions.gsnap
|
||||||
gnomeExtensions.hue-lights
|
gnomeExtensions.hue-lights
|
||||||
gnomeExtensions.just-perfection
|
gnomeExtensions.just-perfection
|
||||||
# gnomeExtensions.mutter-primary-gpu
|
# gnomeExtensions.mutter-primary-gpu
|
||||||
|
gnomeExtensions.paperwm
|
||||||
# gnomeExtensions.pip-on-top
|
# gnomeExtensions.pip-on-top
|
||||||
|
gnomeExtensions.search-light
|
||||||
gnomeExtensions.smart-auto-move
|
gnomeExtensions.smart-auto-move
|
||||||
gnomeExtensions.space-bar
|
gnomeExtensions.space-bar
|
||||||
gnomeExtensions.systemd-manager
|
gnomeExtensions.systemd-manager
|
||||||
gnomeExtensions.tailscale-status
|
gnomeExtensions.tailscale-status
|
||||||
gnomeExtensions.tiling-assistant
|
gnomeExtensions.tiling-assistant
|
||||||
# gnomeExtensions.todotxt
|
# gnomeExtensions.todotxt
|
||||||
|
gnomeExtensions.vitals
|
||||||
# gnomeExtensions.window-is-ready-remover
|
# gnomeExtensions.window-is-ready-remover
|
||||||
# gnomeExtensions.worksets
|
# gnomeExtensions.worksets
|
||||||
# gnomeExtensions.workspace-matrix
|
# gnomeExtensions.workspace-matrix
|
||||||
|
Reference in New Issue
Block a user