mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2025-12-11 02:56:27 +00:00
feat: update system
This commit is contained in:
24
flake.lock
generated
24
flake.lock
generated
@@ -198,11 +198,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1711625603,
|
||||
"narHash": "sha256-W+9dfqA9bqUIBV5u7jaIARAzMe3kTq/Hp2SpSVXKRQw=",
|
||||
"lastModified": 1712016346,
|
||||
"narHash": "sha256-O2nO7pD+krq+4HgkLB4VThRtAucIPfXDs/jJqCGlK1w=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "c0ef0dab55611c676ad7539bf4e41b3ec6fa87d2",
|
||||
"rev": "4be0464472675212654dedf3e021bd5f1d58b92f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -269,11 +269,11 @@
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1711818062,
|
||||
"narHash": "sha256-YjuzqScxPOQGLxO7eswX9WDFp2K+vBFUTd+4EKEnX1A=",
|
||||
"lastModified": 1712016958,
|
||||
"narHash": "sha256-8MSL/y71C8JQTP6i+suW2MvdHUChwDOD3TTkQnlgB6I=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland",
|
||||
"rev": "77f26997fd00aaec958463414269fa3d8f62bb63",
|
||||
"rev": "af3a61a4e437fe728ef69c2739cae79e5a6254c0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -437,11 +437,11 @@
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1711809391,
|
||||
"narHash": "sha256-/nGV6P8nB/R/ysbl1KQIKIwp1mQPXxtnoEd+pf3X+nw=",
|
||||
"lastModified": 1712008765,
|
||||
"narHash": "sha256-H6tO1c8uCvSIOeUrG7J57DIoajR+spSEhXu8md0RGtg=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "0c16f59202c5062d12ef9cd4560cc9fca9d99f9a",
|
||||
"rev": "bd1794e89d705776dac393675c93f7ebb6f74e94",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -452,11 +452,11 @@
|
||||
},
|
||||
"nur": {
|
||||
"locked": {
|
||||
"lastModified": 1711835027,
|
||||
"narHash": "sha256-aDPDznV5FnUAmwfzuDPpgD6oM2mgZpO91xUUjC6nPE0=",
|
||||
"lastModified": 1712042687,
|
||||
"narHash": "sha256-99mV4B1J8DnI823jR2fsE9mFt+PYfyFcmDK5WgL5juk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "165b0b3ec702d1eef16074d09f5db730d926c1af",
|
||||
"rev": "329cd2917d26fd295f750845bb8ebf5c775da3d6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
@@ -67,7 +67,6 @@
|
||||
nixpkgs.lib.nixosSystem {
|
||||
pkgs = legacyPackages.${system};
|
||||
modules = [
|
||||
./modules/nixos/hid-fanatecff
|
||||
./modules/nixos/gbmonctl
|
||||
./hosts/${hostname}
|
||||
home-manager.nixosModules.home-manager
|
||||
|
||||
@@ -14,8 +14,6 @@
|
||||
"GBM_BACKEND,nvidia-drm"
|
||||
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
||||
"WLR_NO_HARDWARE_CURSORS,1"
|
||||
"__GL_GSYNC_ALLOWED,0"
|
||||
"__GL_VRR_ALLOWED,0"
|
||||
"NIXOS_OZONE_WL,1"
|
||||
# Gnome file manager fix
|
||||
"GIO_EXTRA_MODULES,${pkgs.gnome.gvfs}/lib/gio/modules"
|
||||
@@ -42,7 +40,7 @@
|
||||
bind = import ./keybinds.nix;
|
||||
bindm = import ./mousebinds.nix;
|
||||
bindr = [ "SUPER,SUPER_L,exec,pkill anyrun || anyrun" ];
|
||||
monitor = [ "DP-1,highrr,0x0,1,bitdepth,8" "DP-1,addreserved,250,0,0,0" ];
|
||||
monitor = [ "DP-1,highrr,0x0,1" "DP-1,addreserved,250,0,0,0" ];
|
||||
workspace = [
|
||||
"special:calc,border:false,gapsout:200,on-created-empty:[noanim;silent] kitty -e qalc"
|
||||
];
|
||||
@@ -62,13 +60,6 @@
|
||||
"move 22 72,${firefoxPipInitial}"
|
||||
# For some reason it really wants to be maximized
|
||||
"suppressevent maximize,class:^(neovide)$"
|
||||
# IntelliJ focus fixes
|
||||
"windowdance,class:^(jetbrains-.*)$"
|
||||
"dimaround,class:^(jetbrains-.*)$,floating:1,title:^(?!win)"
|
||||
"center,class:^(jetbrains-.*)$,floating:1,title:^(?!win)"
|
||||
"noanim,class:^(jetbrains-.*)$,title:^(win.*)$"
|
||||
"noinitialfocus,class:^(jetbrains-.*)$,title:^(win.*)$"
|
||||
"rounding 0,class:^(jetbrains-.*)$,title:^(win.*)$"
|
||||
# pinentry
|
||||
"dimaround,class:^(gcr-prompter)$"
|
||||
"noborder,class:^(gcr-prompter)$"
|
||||
@@ -83,6 +74,7 @@
|
||||
layers_hog_keyboard_focus = false;
|
||||
disable_splash_rendering = true;
|
||||
force_default_wallpaper = 0;
|
||||
vrr = 1;
|
||||
};
|
||||
layerrule = [ "blur, anyrun" "ignorealpha 0.3, anyrun" ];
|
||||
decoration = {
|
||||
@@ -101,6 +93,7 @@
|
||||
brightness = 0.8;
|
||||
};
|
||||
};
|
||||
opengl.nvidia_anti_flicker = true;
|
||||
animations = {
|
||||
enabled = "yes";
|
||||
bezier = "myBezier, 0.05, 0.9, 0.1, 1.05";
|
||||
|
||||
@@ -184,6 +184,11 @@ in {
|
||||
};
|
||||
};
|
||||
|
||||
project-nvim = {
|
||||
enable = true;
|
||||
enableTelescope = true;
|
||||
};
|
||||
|
||||
telescope = {
|
||||
enable = true;
|
||||
keymaps = {
|
||||
|
||||
@@ -57,6 +57,13 @@
|
||||
mode = "n";
|
||||
action = ":Telescope harpoon marks<CR>";
|
||||
}
|
||||
{
|
||||
key = "<leader>fp";
|
||||
mode = "n";
|
||||
options.silent = true;
|
||||
lua = true;
|
||||
action = "require('telescope').extensions.projects.projects";
|
||||
}
|
||||
# LSP Actions
|
||||
{
|
||||
key = "<leader>sa";
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
enable = true;
|
||||
editor = false;
|
||||
configurationLimit = 10;
|
||||
consoleMode = "auto";
|
||||
consoleMode = "max";
|
||||
};
|
||||
efi.canTouchEfiVariables = true;
|
||||
};
|
||||
@@ -31,14 +31,19 @@
|
||||
|
||||
# Silent Boot
|
||||
kernelParams = [
|
||||
"splash"
|
||||
"quiet"
|
||||
"rd.udev.log_level=3"
|
||||
"rd.systemd.show_status=false"
|
||||
"udev.log_priority=3"
|
||||
"boot.shell_on_fail"
|
||||
"vt.global_cursor_default=0" # no cursor blinking
|
||||
"fbdev=1" # NVIDIA
|
||||
# Redirect all kernel messages to a console off screen
|
||||
#"fbcon=vc:2-6"
|
||||
#"console=tty1"
|
||||
|
||||
"video=3840x2160@144"
|
||||
# "splash"
|
||||
# "quiet"
|
||||
|
||||
#"rd.udev.log_level=3"
|
||||
#"rd.systemd.show_status=false"
|
||||
#"udev.log_priority=3"
|
||||
#"boot.shell_on_fail"
|
||||
#"vt.global_cursor_default=0" # no cursor blinking
|
||||
];
|
||||
consoleLogLevel = 0;
|
||||
initrd.verbose = false;
|
||||
@@ -48,11 +53,7 @@
|
||||
extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback.out ];
|
||||
extraModprobeConfig = ''
|
||||
options v4l2loopback exclusive_caps=1 card_label="Virtual Camera"
|
||||
blacklist i2c_nvidia_gpu
|
||||
blacklist hid-logitech
|
||||
blacklist simpledrm
|
||||
blacklist nouveau
|
||||
''; # NVIDIA
|
||||
'';
|
||||
};
|
||||
|
||||
# Audio
|
||||
@@ -66,7 +67,8 @@
|
||||
jack.enable = true;
|
||||
};
|
||||
|
||||
hardware.hid-fanatecff.enable = true;
|
||||
# https://github.com/NixOS/nixpkgs/pull/300682
|
||||
# hardware.hid-fanatecff.enable = true;
|
||||
hardware.gbmonctl.enable = true;
|
||||
|
||||
hardware.sane = {
|
||||
@@ -137,6 +139,7 @@
|
||||
services.getty.autologinUser = "${username}";
|
||||
services.getty.extraArgs = [ "--noclear" "--noissue" "--nonewline" ];
|
||||
services.getty.loginOptions = "-p -f -- \\u"; # preserve environment
|
||||
|
||||
programs.hyprland.enable = true;
|
||||
programs.fish.enable = true;
|
||||
programs.kdeconnect.enable = true;
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
services.xserver.videoDrivers = [ "nvidia" ];
|
||||
|
||||
boot.kernelParams = [ "nvidia_drm.fbdev=1" ];
|
||||
boot.kernelModules = [ "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" ];
|
||||
boot.initrd.kernelModules =
|
||||
[ "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" ];
|
||||
@@ -16,7 +17,7 @@
|
||||
modesetting.enable = true;
|
||||
# seems to cause crashes on sleep
|
||||
powerManagement.enable = false;
|
||||
open = false;
|
||||
open = true;
|
||||
nvidiaSettings = false;
|
||||
# no idea if this actually does anything...
|
||||
nvidiaPersistenced = false;
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.hardware.hid-fanatecff;
|
||||
kernel = config.boot.kernelPackages.kernel;
|
||||
fanatecKernelModule =
|
||||
pkgs.callPackage (import ./hid-fanatecff-module.nix) { kernel = kernel; };
|
||||
in {
|
||||
options.hardware.hid-fanatecff = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mkDoc ''
|
||||
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.
|
||||
'';
|
||||
};
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
boot = {
|
||||
extraModulePackages = [ fanatecKernelModule ];
|
||||
kernelModules = [ "hid-fanatecff" ];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
{ lib, stdenv, kernel, fetchFromGitHub, }:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "hid-fanatecff";
|
||||
version = "0.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gotzl";
|
||||
repo = "hid-fanatecff";
|
||||
rev = "ce894fb7bcae486978f8165e9f521e480120f98a";
|
||||
hash = "sha256-/106K52Zi4/6aWh2EwojRm370poaBHyX3Ke2j52ytdo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = kernel.moduleBuildDependencies;
|
||||
|
||||
makeFlags = kernel.makeFlags ++ [
|
||||
"KVERSION=${kernel.modDirVersion}"
|
||||
"KERNEL_SRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||
];
|
||||
|
||||
installFlags = [
|
||||
"-C"
|
||||
"${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||
"M=${src}"
|
||||
"INSTALL_MOD_PATH=${placeholder "out"}"
|
||||
];
|
||||
installTargets = [ "modules_install" ];
|
||||
|
||||
meta = with lib; {
|
||||
description =
|
||||
"Linux kernel driver that aims to add support for FANATEC devices";
|
||||
homepage = "https://github.com/gotzl/hid-fanatecff";
|
||||
license = licenses.gpl2Only;
|
||||
platforms = platforms.linux;
|
||||
broken = stdenv.isAarch64;
|
||||
};
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
{
|
||||
reema Web is a web client for Threema, a privacy-focussed end-to-end encrypted mobile messenger hosted and developed in Switzerland";
|
||||
homepage = "https://threema.ch/en/faq/threema_web";
|
||||
license = licenses.agpl3;
|
||||
maintainers = with maintainers; [theaninova];
|
||||
};
|
||||
};
|
||||
in
|
||||
buildNpmPackage rec {
|
||||
name = "threema-desktop";
|
||||
version = "1.2.40";
|
||||
src =
|
||||
fetchFromGitHub {
|
||||
owner = "threema-ch";
|
||||
repo = "threema-web-electron";
|
||||
rev = version;
|
||||
}
|
||||
+ "/app";
|
||||
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
|
||||
buildInputs = [
|
||||
(threema-web.overrideAttrs {
|
||||
patches = [
|
||||
"${src}/../tools/patches/patch-looks.patch"
|
||||
"${src}/../tools/patches/patch-user-agent.patch"
|
||||
];
|
||||
postBuild = ''
|
||||
# see tools/patches/post-patch-threema-web.sh
|
||||
sed -i.bak -E "s/IN_MEMORY_SESSION_PASSWORD:(true|false|0|1|\!0|\!1)/IN_MEMORY_SESSION_PASSWORD:true/g" -- *.bundle.js
|
||||
'';
|
||||
})
|
||||
];
|
||||
buildPhase = ''
|
||||
run hook preBuild
|
||||
ln -s ${threema-web}/share/threema-web ${src}/dependencies/threema-web/release/threema-web
|
||||
run hook postBuild
|
||||
'';
|
||||
}
|
||||
Reference in New Issue
Block a user