mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2025-12-11 02:56:27 +00:00
update system
This commit is contained in:
@@ -49,8 +49,6 @@
|
||||
nur.overlay
|
||||
(final: prev: {
|
||||
anyrunPlugins = anyrun.packages.${prev.system};
|
||||
hyprland = hyprland.packages.${prev.system}.hyprland;
|
||||
xdg-desktop-portal-hyprland = hyprland.packages.${prev.system}.xdg-desktop-portal-hyprland;
|
||||
ags = ags.packages.${prev.system}.default;
|
||||
matugen = matugen.packages.${prev.system}.default;
|
||||
gbmonctl = prev.callPackage ./overlays/gbmonctl { };
|
||||
|
||||
@@ -15,6 +15,10 @@
|
||||
};
|
||||
};
|
||||
|
||||
# I'm not happy about this but if I try to get ESP IDF working
|
||||
# on nix for any longer I'm gonna lose my sanity
|
||||
programs.nix-ld.enable = true;
|
||||
|
||||
# Bootloader.
|
||||
boot = {
|
||||
quiet.enable = true;
|
||||
@@ -56,6 +60,12 @@
|
||||
fv43u.enable = true;
|
||||
virtual-camera.enable = true;
|
||||
hid-fanatecff.enable = true;
|
||||
|
||||
enableAllFirmware = true;
|
||||
bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true;
|
||||
};
|
||||
};
|
||||
|
||||
fonts = {
|
||||
|
||||
@@ -25,8 +25,8 @@
|
||||
|
||||
# chat apps
|
||||
(import ./threema-desktop.nix { inherit pkgs; })
|
||||
(vesktop.override { electron = pkgs.electron_29; })
|
||||
(element-desktop.override { electron = pkgs.electron_29; })
|
||||
(vesktop.override { withSystemVencord = false; })
|
||||
element-desktop
|
||||
|
||||
# office
|
||||
libreoffice
|
||||
|
||||
@@ -92,17 +92,19 @@ in
|
||||
|
||||
colorschemes.catppuccin = {
|
||||
enable = true;
|
||||
terminalColors = true;
|
||||
transparentBackground = true;
|
||||
background = {
|
||||
dark = "frappe";
|
||||
light = "latte";
|
||||
settings = {
|
||||
term_colors = true;
|
||||
transparent_background = true;
|
||||
background = {
|
||||
dark = "frappe";
|
||||
light = "latte";
|
||||
};
|
||||
integrations.native_lsp.underlines = {
|
||||
errors = [ "undercurl" ];
|
||||
warnings = [ "undercurl" ];
|
||||
};
|
||||
custom_highlights = builtins.readFile ./custom-highlights.lua;
|
||||
};
|
||||
integrations.native_lsp.underlines = {
|
||||
errors = [ "undercurl" ];
|
||||
warnings = [ "undercurl" ];
|
||||
};
|
||||
customHighlights = builtins.readFile ./custom-highlights.lua;
|
||||
};
|
||||
|
||||
plugins = {
|
||||
@@ -179,8 +181,10 @@ in
|
||||
};
|
||||
toggleterm = {
|
||||
enable = true;
|
||||
direction = "vertical";
|
||||
size = 60;
|
||||
settings = {
|
||||
direction = "vertical";
|
||||
size = 60;
|
||||
};
|
||||
};
|
||||
luasnip.enable = true;
|
||||
ts-autotag.enable = true;
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
stdenv,
|
||||
kernel,
|
||||
fetchFromGitHub,
|
||||
linuxConsoleTools,
|
||||
bash,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@@ -12,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
src = fetchFromGitHub {
|
||||
owner = "gotzl";
|
||||
repo = "hid-fanatecff";
|
||||
rev = "0.1";
|
||||
rev = lib.versions.majorMinor version;
|
||||
hash = "sha256-1Nm/34Er/qfel9LJp++IWd7cTh2Wi93Kgd28YLMVvWo=";
|
||||
};
|
||||
|
||||
@@ -23,11 +25,27 @@ stdenv.mkDerivation rec {
|
||||
"KERNEL_SRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||
];
|
||||
|
||||
patchPhase = ''
|
||||
runHook prePatch
|
||||
|
||||
substituteInPlace fanatec.rules \
|
||||
--replace-fail "/bin/sh" "${bash}/bin/sh"
|
||||
substituteInPlace fanatec.rules \
|
||||
--replace-fail "/usr/bin/evdev-joystick" "${linuxConsoleTools}/bin/evdev-joystick"
|
||||
|
||||
runHook postPatch
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/etc/udev/rules.d
|
||||
cp ${src}/fanatec.rules $out/etc/udev/rules.d/99-fanatec.rules
|
||||
cp fanatec.rules $out/etc/udev/rules.d/99-fanatec.rules
|
||||
|
||||
mkdir -p $out/lib/modules/${kernel.modDirVersion}/kernel/drivers/hid
|
||||
cp hid-fanatec.ko $out/lib/modules/${kernel.modDirVersion}/kernel/drivers/hid
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
||||
@@ -5,8 +5,6 @@
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.hardware.hid-fanatecff;
|
||||
kernelPackage = pkgs.callPackage ./hid-fanatecff-pkg.nix {
|
||||
@@ -14,28 +12,18 @@ let
|
||||
};
|
||||
in
|
||||
{
|
||||
options.hardware.hid-fanatecff = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
example = true;
|
||||
description = lib.mdDoc ''
|
||||
Enables the Linux module drivers for Fanatec wheel bases.
|
||||
Works with the CSL Elite and CSL/ClubSport DD/DD Pro,
|
||||
and has experimental support for the ClubSport V2/V2.5,
|
||||
Podium DD1/DD2 and CSR Elite.
|
||||
'';
|
||||
};
|
||||
};
|
||||
options.hardware.hid-fanatecff.enable = lib.mkEnableOption "the Linux kernel drivers for Fanatec wheel bases";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
boot = {
|
||||
extraModulePackages = [ kernelPackage ];
|
||||
kernelModules = [ "hid-fanatecff" ];
|
||||
kernelModules = [ "hid-fanatec" ];
|
||||
};
|
||||
services.udev.packages = [ kernelPackage ];
|
||||
users.groups.games = { };
|
||||
};
|
||||
|
||||
meta = {
|
||||
maintainers = with maintainers; [ theaninova ];
|
||||
maintainers = with lib.maintainers; [ theaninova ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ in
|
||||
users.users.${username}.extraGroups = [
|
||||
"wheel"
|
||||
"input"
|
||||
"games"
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
@@ -37,6 +38,7 @@ in
|
||||
libsoup
|
||||
];
|
||||
})
|
||||
rpcs3
|
||||
wine
|
||||
winetricks
|
||||
protontricks
|
||||
|
||||
Reference in New Issue
Block a user