diff --git a/flake.lock b/flake.lock old mode 100755 new mode 100644 diff --git a/flake.nix b/flake.nix index bbdc9c3..49139ac 100644 --- a/flake.nix +++ b/flake.nix @@ -56,7 +56,10 @@ system = "x86_64-linux"; unfreePkgs = [ "hplip" - "vivify.vim" + "nvidia-x11" + "nvidia-settings" + "steam" + "steam-unwrapped" "cheatsheet.nvim" ]; mkUnfreePredicate = pkg: diff --git a/modules/applications/games.nix b/modules/applications/games.nix index 8911af4..185a892 100644 --- a/modules/applications/games.nix +++ b/modules/applications/games.nix @@ -5,5 +5,9 @@ _: { supertuxkart # fuck mariokart # my favorite italian plumber is free software ]; + programs.steam = { + enable = true; + protontricks.enable = true; + }; }; } diff --git a/modules/applications/git.nix b/modules/applications/git.nix index 474a9cb..02a2c6e 100644 --- a/modules/applications/git.nix +++ b/modules/applications/git.nix @@ -2,9 +2,9 @@ _: { flake.homeModules.git = _: { programs.git = { enable = true; - settings = { + /*settings = { init.defaultBranch = "main"; - }; + };*/ }; programs.gh = { enable = true; diff --git a/modules/applications/hyprland.nix b/modules/applications/hyprland.nix index 6dbf98e..3c9f9fa 100644 --- a/modules/applications/hyprland.nix +++ b/modules/applications/hyprland.nix @@ -51,7 +51,7 @@ flake.homeModules.hyprland-desktop = _: { wayland.windowManager.hyprland.settings = { monitor = [ - ", highres@highrr, auto, 1" + ", highres@highrr, auto, 0.75" ]; }; }; diff --git a/modules/applications/kdrive.nix b/modules/applications/kdrive.nix index 40e55ef..e7cac9a 100644 --- a/modules/applications/kdrive.nix +++ b/modules/applications/kdrive.nix @@ -24,7 +24,7 @@ }; systemd.user.services.kdrive-sync = { serviceConfig = { - ExecStart = "${pkgs.rclone}/bin/rclone bisync ..."; + ExecStart = "${self.packages.${pkgs.system}.custom-synckdrive-desktop}/bin/custom-synckdrive"; Nice = 19; # lowest CPU scheduling priority IOSchedulingClass = "idle"; @@ -97,6 +97,17 @@ fi ''; }; + /* + Before setting up we must: + * setup the rclone remote + `rclone config` choose Webdaw and see login information in bitwarden. + * give the good permissions for the hdd + `sudo chown -R tomasr:users /home/tomasr/hdd` + * Run the bisync once completly + `rclone bisync ~/hdd/kdrive/ kdrive: --resync` + + Note : only use the --resync flag once + */ packages.custom-synckdrive-desktop = pkgs.writeShellApplication { name = "custom-synckdrive"; runtimeInputs = with pkgs; [ @@ -105,11 +116,11 @@ ]; text = '' REMOTE_NAME="kdrive" - MOUNT_POINT="/data/kdrive" + MOUNT_POINT="/home/tomasr/hdd/kdrive" - if rclone listremotes | rg "^''${REMOVE_NAME}:"; then - echo "Syncing ''${Syncing} ''${REMOVE_NAME}..." - rclone sync "''${REMOVE_NAME}:" "$MOUNT_POINT" --allow-non-empty & + if rclone listremotes | rg "^''${REMOTE_NAME}:"; then + echo "Syncing ''${REMOTE_NAME}..." + rclone bisync "''${REMOTE_NAME}:" "$MOUNT_POINT" & else notify-send "rclone sync failed" \ "Remote ''${REMOTE_NAME} not found.\nConfigure rclone and create the dir ~/kdrive/ or comment out the exec line in hyprland.nix." diff --git a/modules/hardware/hardware-configuration.nix b/modules/hardware/hardware-configuration.nix index d6da02c..1cbe592 100644 --- a/modules/hardware/hardware-configuration.nix +++ b/modules/hardware/hardware-configuration.nix @@ -33,4 +33,49 @@ _: { nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; }; +flake.nixosModules.hardware-configuration-desktop = # Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "vmd" "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/14bcd132-b4a3-46f2-ac35-3497340de4b2"; + fsType = "btrfs"; + }; + + fileSystems."/home" = + { device = "/dev/disk/by-uuid/14bcd132-b4a3-46f2-ac35-3497340de4b2"; + fsType = "btrfs"; + options = [ "subvol=home" ]; + }; + + fileSystems."/nix" = + { device = "/dev/disk/by-uuid/14bcd132-b4a3-46f2-ac35-3497340de4b2"; + fsType = "btrfs"; + options = [ "subvol=nix" ]; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/BAB4-34F6"; + fsType = "vfat"; + options = [ "fmask=0077" "dmask=0077" ]; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/ce6f9a68-0517-4f8a-b375-66f2173efe59"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +}; } diff --git a/modules/hardware/hdd.nix b/modules/hardware/hdd.nix new file mode 100644 index 0000000..275e95e --- /dev/null +++ b/modules/hardware/hdd.nix @@ -0,0 +1,8 @@ +_: { + flake.nixosModules.hdd = { + fileSystems."/home/tomasr/hdd" = { + device = "/dev/disk/by-uuid/cbe24588-e04f-4ffc-ba44-6fe6ec6d6850"; + fsType = "ext4"; + }; + }; +} diff --git a/modules/hardware/nvidia.nix b/modules/hardware/nvidia.nix new file mode 100644 index 0000000..911c8d5 --- /dev/null +++ b/modules/hardware/nvidia.nix @@ -0,0 +1,7 @@ +_: { + flake.nixosModules.nvidia = _: { + hardware.graphics.enable = true; + services.xserver.videoDrivers = [ "nvidia" ]; + hardware.nvidia.open = true; + }; +} diff --git a/modules/hosts/desktop.nix b/modules/hosts/desktop.nix index 3342ebe..b46a235 100644 --- a/modules/hosts/desktop.nix +++ b/modules/hosts/desktop.nix @@ -27,15 +27,18 @@ documentation disk # this only installs some disk utilities. disko will format the drives fonts - #hardware-configuration-desktop + games + hardware-configuration-desktop + hdd hyprland IO - #kdrive-desktop # we will setup this later + kdrive-desktop # we will setup this later latex ly mullvad networking notifications + nvidia office #ollama otherUtils @@ -50,11 +53,11 @@ inputs.caelestia-shell.homeManagerModules.default anki caelestia + caelestia-desktop cursor development eza fastfetch - git gtk hyprland hyprland-desktop @@ -62,6 +65,7 @@ librewolf mullvad neovim + nix-git-cherry-picker-desktop notewrapper oh-my-zsh ripgrep diff --git a/modules/utilities/development.nix b/modules/utilities/development.nix index 5767c0f..d8cec56 100644 --- a/modules/utilities/development.nix +++ b/modules/utilities/development.nix @@ -24,6 +24,7 @@ gnumake go direnv + git gh cling # c interpreter used for coding # lsp clang-tools diff --git a/modules/utilities/nixGitCherryPicker.nix b/modules/utilities/nixGitCherryPicker.nix index 7baaf9c..44d2a5e 100644 --- a/modules/utilities/nixGitCherryPicker.nix +++ b/modules/utilities/nixGitCherryPicker.nix @@ -15,4 +15,20 @@ force = true; }; }; -} + flake.homeModules.nix-git-cherry-picker-desktop = {pkgs, ...}: { + home.packages = [ + inputs.nix-git-cherry-picker.packages.${pkgs.system}.default + ]; + }; + home.file-".config/nix-git-cherry-picker/config.json" = { + enable = true; + text = '' + { + "localBranch": "desktop", + "remoteBranch": "laptop", + "nixConfigPath": "/home/tomasr/nixos/" + } + ''; + force = true; + }; +} \ No newline at end of file diff --git a/test b/test new file mode 100644 index 0000000..6e946b7 --- /dev/null +++ b/test @@ -0,0 +1,8 @@ +I am testing the tool ngcp i created. If this file disapears. It means I coded it wrong. + + +The problem before was that it did: +1. cherry pick +2. push + +I didn't pulled changed before cherry picking