From 0c3cf765f977b19aa296a28257a03ed1c27452a3 Mon Sep 17 00:00:00 2001 From: Zoe Roux Date: Wed, 8 Mar 2023 01:31:19 +0900 Subject: [PATCH] . --- README.md | 7 ++++++ flake.nix | 14 ++++++------ modules/home/apps/default.nix | 1 + overlays/default.nix | 1 + overlays/tuxedo-keyboard.nix | 40 +++++++++++++++++++++++++++++++++++ 5 files changed, 57 insertions(+), 6 deletions(-) create mode 100644 overlays/tuxedo-keyboard.nix diff --git a/README.md b/README.md index fb84fc0..6b33afd 100644 --- a/README.md +++ b/README.md @@ -12,3 +12,10 @@ mkdir -p /nix/persist/home (else persisted seems to be bugged) `nix-shell --run 'mkpasswd -m SHA-512' -p mkpasswd` to generate a password + + +```sh +nix-channel --add https://nixos.org/channels/nixos-unstable nixos +nix-channel --update +``` + diff --git a/flake.nix b/flake.nix index 21a2810..0ce9ce6 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "A very basic flake"; inputs = { - nixpkgs.url = "github:zoriya/nixpkgs/nixos-unstable"; #"github:zoriya/nixpkgs/nixos-unstable"; + nixpkgs.url = "github:zoriya/nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; @@ -49,7 +49,13 @@ ./modules/nixos nixModules nur.nixosModules.nur - { nixpkgs.overlays = [ (import ./overlays) ]; } + { + nixpkgs.overlays = [ + (import ./overlays) + nur.overlay + neovim-nightly.overlay + ]; + } ({pkgs, ...}: { networking.hostName = hostname; @@ -81,10 +87,6 @@ config.modules = homeModules; }; }; - nixpkgs.overlays = [ - nur.overlay - neovim-nightly.overlay - ]; } # TODO: use a module instead of this. diff --git a/modules/home/apps/default.nix b/modules/home/apps/default.nix index 9626875..1c3e8fd 100644 --- a/modules/home/apps/default.nix +++ b/modules/home/apps/default.nix @@ -55,6 +55,7 @@ in { tab_bar_background = "#${base01}"; enable_audio_bell = false; + cursor_blink_interval = 0; confirm_os_window_close = 0; disable_ligatures = "always"; #placement_strategy bottom-center diff --git a/overlays/default.nix b/overlays/default.nix index cb30b6b..78eb053 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -1,4 +1,5 @@ self: super: { adi1090x-plymouth = super.callPackage ./adi1090x-plymouth.nix { }; + tuxedo-keyboard = super.callPackage ./tuxedo-keyboard { }; } diff --git a/overlays/tuxedo-keyboard.nix b/overlays/tuxedo-keyboard.nix new file mode 100644 index 0000000..cf0a5a9 --- /dev/null +++ b/overlays/tuxedo-keyboard.nix @@ -0,0 +1,40 @@ +{ lib, stdenv, fetchFromGitHub, kernel, linuxHeaders }: + +stdenv.mkDerivation rec { + pname = "tuxedo-keyboard-${kernel.version}"; + version = "3.1.4"; + + src = fetchFromGitHub { + owner = "tuxedocomputers"; + repo = "tuxedo-keyboard"; + rev = "v${version}"; + sha256 = "h6+br+JPEItym83MaVt+xo6o/zMtTv8+wsBoTeYa2AM="; + }; + + buildInputs = [ linuxHeaders ]; + + makeFlags = [ "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ]; + + installPhase = '' + mkdir -p "$out/lib/modules/${kernel.modDirVersion}" + + for module in clevo_acpi.ko clevo_wmi.ko tuxedo_keyboard.ko tuxedo_io/tuxedo_io.ko uniwill_wmi.ko; do + mv src/$module $out/lib/modules/${kernel.modDirVersion} + done + ''; + + meta = with lib; { + description = "Keyboard and hardware I/O driver for TUXEDO Computers laptops"; + longDescription = '' + This driver provides support for Fn keys, brightness/color/mode for most TUXEDO + keyboards (except white backlight-only models). + + Can be used with the "hardware.tuxedo-keyboard" NixOS module. + ''; + homepage = "https://github.com/tuxedocomputers/tuxedo-keyboard/"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + broken = stdenv.isAarch64; + maintainers = [ maintainers.blanky0230 ]; + }; +}