added: swaync
This commit is contained in:
		
							
								
								
									
										285
									
								
								flake.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										285
									
								
								flake.lock
									
									
									
										generated
									
									
									
								
							@@ -51,6 +51,27 @@
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "devshell": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1741473158,
 | 
			
		||||
        "narHash": "sha256-kWNaq6wQUbUMlPgw8Y+9/9wP0F8SHkjy24/mN3UAppg=",
 | 
			
		||||
        "owner": "numtide",
 | 
			
		||||
        "repo": "devshell",
 | 
			
		||||
        "rev": "7c9e793ebe66bcba8292989a68c0419b737a22a0",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "numtide",
 | 
			
		||||
        "repo": "devshell",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "flake-compat": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
@@ -81,6 +102,20 @@
 | 
			
		||||
        "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "flake-compat_3": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1733328505,
 | 
			
		||||
        "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
 | 
			
		||||
        "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
 | 
			
		||||
        "revCount": 69,
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "flake-parts": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs-lib": "nixpkgs-lib"
 | 
			
		||||
@@ -99,6 +134,71 @@
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "flake-parts_2": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs-lib": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1756770412,
 | 
			
		||||
        "narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
 | 
			
		||||
        "owner": "hercules-ci",
 | 
			
		||||
        "repo": "flake-parts",
 | 
			
		||||
        "rev": "4524271976b625a4a605beefd893f270620fd751",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "hercules-ci",
 | 
			
		||||
        "repo": "flake-parts",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "flake-utils": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "systems": "systems_2"
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1731533236,
 | 
			
		||||
        "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
 | 
			
		||||
        "owner": "numtide",
 | 
			
		||||
        "repo": "flake-utils",
 | 
			
		||||
        "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "numtide",
 | 
			
		||||
        "repo": "flake-utils",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "git-hooks": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "flake-compat": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "flake-compat"
 | 
			
		||||
        ],
 | 
			
		||||
        "gitignore": "gitignore_2",
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1757239681,
 | 
			
		||||
        "narHash": "sha256-E9spYi9lxm2f1zWQLQ7xQt8Xs2nWgr1T4QM7ZjLFphM=",
 | 
			
		||||
        "owner": "cachix",
 | 
			
		||||
        "repo": "git-hooks.nix",
 | 
			
		||||
        "rev": "ab82ab08d6bf74085bd328de2a8722c12d97bd9d",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "cachix",
 | 
			
		||||
        "repo": "git-hooks.nix",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "gitignore": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
@@ -121,6 +221,28 @@
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "gitignore_2": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "git-hooks",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1709087332,
 | 
			
		||||
        "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
 | 
			
		||||
        "owner": "hercules-ci",
 | 
			
		||||
        "repo": "gitignore.nix",
 | 
			
		||||
        "rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "hercules-ci",
 | 
			
		||||
        "repo": "gitignore.nix",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "home-manager": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
@@ -142,6 +264,28 @@
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "home-manager_2": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1747688870,
 | 
			
		||||
        "narHash": "sha256-ypL9WAZfmJr5V70jEVzqGjjQzF0uCkz+AFQF7n9NmNc=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "home-manager",
 | 
			
		||||
        "rev": "d5f1f641b289553927b3801580598d200a501863",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "ref": "release-24.11",
 | 
			
		||||
        "repo": "home-manager",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "hyprcursor": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "hyprlang": [
 | 
			
		||||
@@ -431,6 +575,56 @@
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "ixx": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "flake-utils": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nuschtosSearch",
 | 
			
		||||
          "flake-utils"
 | 
			
		||||
        ],
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nuschtosSearch",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1754860581,
 | 
			
		||||
        "narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
 | 
			
		||||
        "owner": "NuschtOS",
 | 
			
		||||
        "repo": "ixx",
 | 
			
		||||
        "rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "NuschtOS",
 | 
			
		||||
        "ref": "v0.1.1",
 | 
			
		||||
        "repo": "ixx",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nix-darwin": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1743127615,
 | 
			
		||||
        "narHash": "sha256-+sMGqywrSr50BGMLMeY789mSrzjkoxZiu61eWjYS/8o=",
 | 
			
		||||
        "owner": "lnl7",
 | 
			
		||||
        "repo": "nix-darwin",
 | 
			
		||||
        "rev": "fc843893cecc1838a59713ee3e50e9e7edc6207c",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "lnl7",
 | 
			
		||||
        "ref": "nix-darwin-24.11",
 | 
			
		||||
        "repo": "nix-darwin",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nixcord": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "flake-compat": "flake-compat_2",
 | 
			
		||||
@@ -546,6 +740,58 @@
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nixvim": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "devshell": "devshell",
 | 
			
		||||
        "flake-compat": "flake-compat_3",
 | 
			
		||||
        "flake-parts": "flake-parts_2",
 | 
			
		||||
        "git-hooks": "git-hooks",
 | 
			
		||||
        "home-manager": "home-manager_2",
 | 
			
		||||
        "nix-darwin": "nix-darwin",
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ],
 | 
			
		||||
        "nuschtosSearch": "nuschtosSearch",
 | 
			
		||||
        "treefmt-nix": "treefmt-nix"
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1751725553,
 | 
			
		||||
        "narHash": "sha256-bkvw8jXTdRBWRfO50IaxNuUIamnLllxfEFqUG/g3uwo=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "nixvim",
 | 
			
		||||
        "rev": "81d65e0cfb00df0269195b59f156c719cc045ab8",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "ref": "nixos-24.11",
 | 
			
		||||
        "repo": "nixvim",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nuschtosSearch": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "flake-utils": "flake-utils",
 | 
			
		||||
        "ixx": "ixx",
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1756738487,
 | 
			
		||||
        "narHash": "sha256-8QX7Ab5CcICp7zktL47VQVS+QeaU4YDNAjzty7l7TQE=",
 | 
			
		||||
        "owner": "NuschtOS",
 | 
			
		||||
        "repo": "search",
 | 
			
		||||
        "rev": "5feeaeefb571e6ca2700888b944f436f7c05149b",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "NuschtOS",
 | 
			
		||||
        "repo": "search",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "pre-commit-hooks": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "flake-compat": "flake-compat",
 | 
			
		||||
@@ -577,6 +823,7 @@
 | 
			
		||||
        "hyprland-plugins": "hyprland-plugins",
 | 
			
		||||
        "nixcord": "nixcord",
 | 
			
		||||
        "nixpkgs": "nixpkgs_4",
 | 
			
		||||
        "nixvim": "nixvim",
 | 
			
		||||
        "spicetify-nix": "spicetify-nix",
 | 
			
		||||
        "unstable": "unstable"
 | 
			
		||||
      }
 | 
			
		||||
@@ -584,7 +831,7 @@
 | 
			
		||||
    "spicetify-nix": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs": "nixpkgs_5",
 | 
			
		||||
        "systems": "systems_2"
 | 
			
		||||
        "systems": "systems_3"
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1751776600,
 | 
			
		||||
@@ -630,6 +877,42 @@
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "systems_3": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1681028828,
 | 
			
		||||
        "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
 | 
			
		||||
        "owner": "nix-systems",
 | 
			
		||||
        "repo": "default",
 | 
			
		||||
        "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "nix-systems",
 | 
			
		||||
        "repo": "default",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "treefmt-nix": {
 | 
			
		||||
      "inputs": {
 | 
			
		||||
        "nixpkgs": [
 | 
			
		||||
          "nixvim",
 | 
			
		||||
          "nixpkgs"
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1756662192,
 | 
			
		||||
        "narHash": "sha256-F1oFfV51AE259I85av+MAia221XwMHCOtZCMcZLK2Jk=",
 | 
			
		||||
        "owner": "numtide",
 | 
			
		||||
        "repo": "treefmt-nix",
 | 
			
		||||
        "rev": "1aabc6c05ccbcbf4a635fb7a90400e44282f61c4",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "numtide",
 | 
			
		||||
        "repo": "treefmt-nix",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "unstable": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1756787288,
 | 
			
		||||
 
 | 
			
		||||
@@ -18,6 +18,13 @@
 | 
			
		||||
    nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
 | 
			
		||||
    unstable.url = "github:nixos/nixpkgs/nixos-unstable";
 | 
			
		||||
 | 
			
		||||
    # Editor
 | 
			
		||||
    nixvim = {
 | 
			
		||||
      url = "github:nix-community/nixvim/nixos-24.11";
 | 
			
		||||
      # If using a stable channel you can use `url = "github:nix-community/nixvim/nixos-<version>"`
 | 
			
		||||
      inputs.nixpkgs.follows = "nixpkgs";
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    # Desktop ENV
 | 
			
		||||
    hyprland.url = "github:hyprwm/Hyprland";
 | 
			
		||||
    hyprland-plugins = {
 | 
			
		||||
@@ -42,6 +49,7 @@
 | 
			
		||||
      nixpkgs,
 | 
			
		||||
      home-manager,
 | 
			
		||||
      catppuccin,
 | 
			
		||||
      nixvim,
 | 
			
		||||
      ...
 | 
			
		||||
    }:
 | 
			
		||||
 | 
			
		||||
@@ -89,6 +97,7 @@
 | 
			
		||||
            sharedModules = [
 | 
			
		||||
              inputs.catppuccin.homeModules.catppuccin
 | 
			
		||||
              inputs.nixcord.homeModules.nixcord
 | 
			
		||||
              inputs.nixvim.homeManagerModules.nixvim
 | 
			
		||||
            ];
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
 
 | 
			
		||||
@@ -9,8 +9,9 @@
 | 
			
		||||
    #./wpaperd.nix
 | 
			
		||||
    ./swww.nix
 | 
			
		||||
    ./rofi # App Launcher
 | 
			
		||||
    ./mako.nix # Notifyer
 | 
			
		||||
    #./mako.nix # Notifyer
 | 
			
		||||
    ./cava.nix # Music Visualizer
 | 
			
		||||
    ./swaync.nix
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  programs.waybar =
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								home/hyprland/swaync.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								home/hyprland/swaync.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
{ pkgs, ... }:
 | 
			
		||||
{
 | 
			
		||||
  home.packages = [ pkgs.swaynotificationcenter ];
 | 
			
		||||
}
 | 
			
		||||
@@ -54,7 +54,6 @@ require("mason-lspconfig").setup({
 | 
			
		||||
		"nil_ls",
 | 
			
		||||
		"rust_analyzer",
 | 
			
		||||
		"pylsp",
 | 
			
		||||
		"stylelint-lsp",
 | 
			
		||||
	},
 | 
			
		||||
	automatic_installation = true,
 | 
			
		||||
})
 | 
			
		||||
@@ -77,8 +76,6 @@ cmp.setup({
 | 
			
		||||
	sources = cmp.config.sources({
 | 
			
		||||
		{ name = "nvim_lsp" },
 | 
			
		||||
		{ name = "luasnip" },
 | 
			
		||||
		{ name = "avante_commands" },
 | 
			
		||||
		{ name = "avante_mentions" },
 | 
			
		||||
	}, {
 | 
			
		||||
		{ name = "buffer" },
 | 
			
		||||
		{ name = "path" },
 | 
			
		||||
@@ -151,58 +148,6 @@ vim.keymap.set("n", "<leader>fg", telescope.live_grep, { desc = "Telescope live
 | 
			
		||||
vim.keymap.set("n", "<leader>fb", telescope.buffers, { desc = "Telescope buffers" })
 | 
			
		||||
vim.keymap.set("n", "<leader>fh", telescope.help_tags, { desc = "Telescope help tags" })
 | 
			
		||||
 | 
			
		||||
-- Avante.nvim Setup
 | 
			
		||||
require("avante").setup({
 | 
			
		||||
	-- Provider configuration
 | 
			
		||||
	provider = "ollama",
 | 
			
		||||
	claude = {
 | 
			
		||||
		endpoint = "https://api.anthropic.com",
 | 
			
		||||
		model = "claude-sonnet-4-20250514",
 | 
			
		||||
	},
 | 
			
		||||
	-- File selector settings
 | 
			
		||||
	file_selector = {
 | 
			
		||||
		provider = "telescope",
 | 
			
		||||
	},
 | 
			
		||||
	-- Other settings
 | 
			
		||||
	instructions_file = "avante.md",
 | 
			
		||||
	-- Keymaps will be set automatically
 | 
			
		||||
	mappings = {
 | 
			
		||||
		ask = "<leader>aa",
 | 
			
		||||
		edit = "<leader>ae",
 | 
			
		||||
		refresh = "<leader>ar",
 | 
			
		||||
		--- @class AvanteConflictMappings
 | 
			
		||||
		diff = {
 | 
			
		||||
			ours = "co",
 | 
			
		||||
			theirs = "ct",
 | 
			
		||||
			none = "c0",
 | 
			
		||||
			both = "cb",
 | 
			
		||||
			next = "]x",
 | 
			
		||||
			prev = "[x",
 | 
			
		||||
		},
 | 
			
		||||
		jump = {
 | 
			
		||||
			next = "]]",
 | 
			
		||||
			prev = "[[",
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
-- Img-clip setup for image pasting
 | 
			
		||||
require("img-clip").setup({
 | 
			
		||||
	default = {
 | 
			
		||||
		embed_image_as_base64 = false,
 | 
			
		||||
		prompt_for_file_name = false,
 | 
			
		||||
		drag_and_drop = {
 | 
			
		||||
			insert_mode = true,
 | 
			
		||||
		},
 | 
			
		||||
		use_absolute_path = true,
 | 
			
		||||
	},
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
-- Render-markdown setup
 | 
			
		||||
require("render-markdown").setup({
 | 
			
		||||
	file_types = { "markdown", "Avante" },
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
-- Styling
 | 
			
		||||
require("catppuccin").setup({
 | 
			
		||||
	flavour = "mocha",
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										331
									
								
								home/programs/dev/neovim/default.nix.back1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										331
									
								
								home/programs/dev/neovim/default.nix.back1
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,331 @@
 | 
			
		||||
{ pkgs, ... }:
 | 
			
		||||
{
 | 
			
		||||
  programs.nixvim = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    defaultEditor = true;
 | 
			
		||||
    viAlias = true;
 | 
			
		||||
    vimAlias = true;
 | 
			
		||||
 | 
			
		||||
    # ===================
 | 
			
		||||
    # Basic Options
 | 
			
		||||
    # ===================
 | 
			
		||||
    options = {
 | 
			
		||||
      number = true;
 | 
			
		||||
      cursorline = true;
 | 
			
		||||
      showmode = false;
 | 
			
		||||
      syntax = "enable";
 | 
			
		||||
      hlsearch = true;
 | 
			
		||||
      incsearch = true;
 | 
			
		||||
      tabstop = 4;
 | 
			
		||||
      termguicolors = true;
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    globals.mapleader = " ";
 | 
			
		||||
 | 
			
		||||
    keymaps = [
 | 
			
		||||
      # Clipboard
 | 
			
		||||
      {
 | 
			
		||||
        mode = "n";
 | 
			
		||||
        key = "y";
 | 
			
		||||
        action = "\"+y";
 | 
			
		||||
        options.desc = "Yank to clipboard";
 | 
			
		||||
      }
 | 
			
		||||
      {
 | 
			
		||||
        mode = "v";
 | 
			
		||||
        key = "y";
 | 
			
		||||
        action = "\"+y";
 | 
			
		||||
        options.desc = "Yank to clipboard";
 | 
			
		||||
      }
 | 
			
		||||
      {
 | 
			
		||||
        mode = "n";
 | 
			
		||||
        key = "Y";
 | 
			
		||||
        action = "\"+Y";
 | 
			
		||||
        options.desc = "Yank line to clipboard";
 | 
			
		||||
      }
 | 
			
		||||
      {
 | 
			
		||||
        mode = "n";
 | 
			
		||||
        key = "d";
 | 
			
		||||
        action = "\"+d";
 | 
			
		||||
        options.desc = "Delete to clipboard";
 | 
			
		||||
      }
 | 
			
		||||
      {
 | 
			
		||||
        mode = "v";
 | 
			
		||||
        key = "d";
 | 
			
		||||
        action = "\"+d";
 | 
			
		||||
        options.desc = "Delete to clipboard";
 | 
			
		||||
      }
 | 
			
		||||
      {
 | 
			
		||||
        mode = "n";
 | 
			
		||||
        key = "D";
 | 
			
		||||
        action = "\"+D";
 | 
			
		||||
        options.desc = "Delete line to clipboard";
 | 
			
		||||
      }
 | 
			
		||||
      {
 | 
			
		||||
        mode = "n";
 | 
			
		||||
        key = "p";
 | 
			
		||||
        action = "\"+p";
 | 
			
		||||
        options.desc = "Paste from clipboard";
 | 
			
		||||
      }
 | 
			
		||||
      {
 | 
			
		||||
        mode = "v";
 | 
			
		||||
        key = "p";
 | 
			
		||||
        action = "\"+p";
 | 
			
		||||
        options.desc = "Paste from clipboard";
 | 
			
		||||
      }
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    # ===================
 | 
			
		||||
    # Plugins
 | 
			
		||||
    # ===================
 | 
			
		||||
    plugins = {
 | 
			
		||||
      # Treesitter
 | 
			
		||||
      treesitter = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        ensureInstalled = [
 | 
			
		||||
          "lua"
 | 
			
		||||
          "nix"
 | 
			
		||||
          "python"
 | 
			
		||||
          "javascript"
 | 
			
		||||
          "rust"
 | 
			
		||||
          "rasi"
 | 
			
		||||
        ];
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      # Lint
 | 
			
		||||
      lint.enable = true;
 | 
			
		||||
 | 
			
		||||
      # Mason + LSP
 | 
			
		||||
      mason.enable = true;
 | 
			
		||||
      mason-lspconfig = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        ensureInstalled = [
 | 
			
		||||
          "lua_ls"
 | 
			
		||||
          "nil_ls"
 | 
			
		||||
          "rust_analyzer"
 | 
			
		||||
          "pylsp"
 | 
			
		||||
          "stylelint_lsp"
 | 
			
		||||
        ];
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      lsp = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        servers = {
 | 
			
		||||
          lua_ls.settings.Lua = {
 | 
			
		||||
            runtime.version = "LuaJIT";
 | 
			
		||||
            diagnostics.globals = [ "vim" ];
 | 
			
		||||
            telemetry.enable = false;
 | 
			
		||||
          };
 | 
			
		||||
          nil_ls.enable = true;
 | 
			
		||||
          rust_analyzer.enable = true;
 | 
			
		||||
          pylsp.enable = true;
 | 
			
		||||
          stylelint_lsp = {
 | 
			
		||||
            enable = true;
 | 
			
		||||
            filetypes = [
 | 
			
		||||
              "css"
 | 
			
		||||
              "scss"
 | 
			
		||||
              "rasi"
 | 
			
		||||
            ];
 | 
			
		||||
            cmd = [
 | 
			
		||||
              "stylelint-lsp"
 | 
			
		||||
              "--stdio"
 | 
			
		||||
            ];
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
        keymaps.lspBuf = {
 | 
			
		||||
          gd = "definition";
 | 
			
		||||
          K = "hover";
 | 
			
		||||
          "<leader>rn" = "rename";
 | 
			
		||||
          "<leader>ca" = "code_action";
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      # Completion
 | 
			
		||||
      cmp = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        sources = [
 | 
			
		||||
          { name = "nvim_lsp"; }
 | 
			
		||||
          { name = "luasnip"; }
 | 
			
		||||
          { name = "avante_commands"; }
 | 
			
		||||
          { name = "avante_mentions"; }
 | 
			
		||||
          { name = "buffer"; }
 | 
			
		||||
          { name = "path"; }
 | 
			
		||||
        ];
 | 
			
		||||
      };
 | 
			
		||||
      luasnip.enable = true;
 | 
			
		||||
 | 
			
		||||
      # Conform
 | 
			
		||||
      conform-nvim = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        formattersByFt = {
 | 
			
		||||
          lua = [ "stylua" ];
 | 
			
		||||
          nix = [ "nixfmt" ];
 | 
			
		||||
          python = [ "black" ];
 | 
			
		||||
          rust = [ "rustfmt" ];
 | 
			
		||||
          rasi = [ "prettierd" ];
 | 
			
		||||
        };
 | 
			
		||||
        formatOnSave = {
 | 
			
		||||
          timeoutMs = 500;
 | 
			
		||||
          lspFallback = true;
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      # Telescope
 | 
			
		||||
      telescope = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        keymaps = {
 | 
			
		||||
          "<leader>ff" = "find_files";
 | 
			
		||||
          "<leader>fg" = "live_grep";
 | 
			
		||||
          "<leader>fb" = "buffers";
 | 
			
		||||
          "<leader>fh" = "help_tags";
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      # Toggleterm
 | 
			
		||||
      toggleterm = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        settings = {
 | 
			
		||||
          size = 20;
 | 
			
		||||
          direction = "float";
 | 
			
		||||
          float_opts = {
 | 
			
		||||
            border = "single";
 | 
			
		||||
            width = 200;
 | 
			
		||||
            height = 40;
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      # Statusline
 | 
			
		||||
      lualine = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        settings.options = {
 | 
			
		||||
          theme = "catppuccin";
 | 
			
		||||
          component_separators = {
 | 
			
		||||
            left = "|";
 | 
			
		||||
            right = "|";
 | 
			
		||||
          };
 | 
			
		||||
          section_separators = {
 | 
			
		||||
            left = "";
 | 
			
		||||
            right = "";
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      # Dashboard (alpha)
 | 
			
		||||
      alpha = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        theme = "dashboard";
 | 
			
		||||
        layout.dashboard = {
 | 
			
		||||
          section.header.val = [
 | 
			
		||||
            "⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣯⣿⠿⣟⣷⣯⣛⢿⣿⣿⣾⣟⣿⣿⣿⣿⣿⣿⣿⣿⣿"
 | 
			
		||||
            "⣿⣿⣿⣿⣿⣿⣿⡿⣵⣿⡿⣴⣽⡟⣳⢿⢽⣽⣕⣽⢿⡿⣿⣟⣿⣿⣿⣿⣿⣿⣿"
 | 
			
		||||
            "⣿⣿⣿⣷⣿⣿⢟⣫⣿⢟⢟⣾⣾⣿⣿⣞⢳⣻⢞⣎⠿⢞⣊⣿⣞⣿⣿⣿⣿⣿⢽"
 | 
			
		||||
            "⣿⣿⣿⣿⣿⣏⢯⣿⣏⣏⠔⢇⣿⢢⢆⢀⢆⣧⣼⢻⢰⡧⢻⣝⣏⡸⣧⣾⣿⣿⣿"
 | 
			
		||||
            "⣿⣿⣿⣿⡟⣻⣿⣿⡾⡿⡼⢸⡝⣝⡳⢢⣧⢳⣳⢷⡇⣗⢺⡺⣿⡧⣿⣿⣿⢿⢿"
 | 
			
		||||
            "⣿⡿⣿⣼⡼⣿⣿⡗⡧⣧⠁⡝⣧⣳⠅⡾⠈⣎⢮⣧⣿⣿⣗⣷⣻⢷⣏⣼⢏⣺⣿"
 | 
			
		||||
            "⣿⣿⣿⣻⣿⣿⣿⢧⣿⢹⠉⢷⢿⣧⣲⡏⡀⡈⢆⠳⣿⡿⢿⣿⣱⢿⢫⣷⣝⣿⣿"
 | 
			
		||||
            "⣿⣿⣿⡯⡟⣿⣿⢽⣡⠟⢿⣮⠁⠙⠛⠈⡴⢿⣿⡷⣬⣽⢽⠧⣷⡏⣿⡇⣧⣽⣿"
 | 
			
		||||
            "⣿⠟⢻⡧⡇⣿⡇⣇⣆⢄⡜⢃⡀⡀⡀⡀⡀⢎⣁⠁⣸⣗⣸⣿⣧⣼⡿⢹⢿⢾⣿"
 | 
			
		||||
            "⣿⣷⣾⣿⢻⣿⢧⢻⣽⡀⡀⡀⡀⢄⡀⡀⡀⡀⡀⢀⣷⡸⡟⣿⣶⣻⣧⡛⡱⢝⣿"
 | 
			
		||||
            "⣿⣿⣿⣿⢸⡿⢚⡜⣿⣇⡀⡀⡀⡀⡀⡀⡀⡀⠚⢁⢣⣜⡿⣿⡇⢼⣿⠨⣸⣿⣿"
 | 
			
		||||
            "⣿⣄⣿⣗⢾⢻⣧⢿⣾⣿⣦⡀⡀⠑⠚⠉⡀⡀⣤⣿⢨⣿⠗⣻⢣⣿⢹⢈⣽⣿⣿"
 | 
			
		||||
            "⣿⣿⣿⣿⢎⡄⢿⣞⡇⣿⠹⣿⣶⣀⡀⣀⡴⡩⢸⢏⣿⣿⣶⢻⣾⢏⡞⠡⢽⣇⣾"
 | 
			
		||||
            "⣿⣿⣿⣮⣼⢬⣦⢿⣳⣌⠧⡉⠈⣇⣛⣁⣈⣼⣿⡸⠫⠛⠐⠛⠕⣙⣻⣬⣼⣿⣿"
 | 
			
		||||
            "⢟⢿⣿⣿⣿⡢⣃⣪⣭⣡⣤⣶⠟⡿⠿⠿⠿⠛⢁⣿⣿⢩⠉⡀⠈⠓⡝⣿⣿⣿⣿"
 | 
			
		||||
            "⣾⣿⣿⣿⣿⠞⢔⡣⡴⣾⣿⠓⣤⢧⡼⣉⠠⢤⣿⣿⠇⠃⡀⡀⡀⡀⡸⢿⣾⣿⣿"
 | 
			
		||||
            "⣿⣿⣿⡿⣺⡸⢗⢠⣇⣿⣿⠊⠃⡀⠉⡀⢠⣿⣿⠟⡸⡀⡀⡀⡀⡀⣃⣬⠽⠿⣿"
 | 
			
		||||
            "⣿⣿⣿⣿⡇⡏⢸⣿⠟⣽⡇⡀⡀⡀⡀⣴⣟⢭⣾⣿⡇⠎⣠⠒⠉⠈⢀⡀⢨⡋⣿"
 | 
			
		||||
            "⠛⠛⠛⠋⠃⠓⠚⠛⠘⠛⠃⡀⠊⡀⠛⠛⠛⠂⠛⠛⠓⠁⠚⡀⠂⠒⠒⠐⠒⠋⠛"
 | 
			
		||||
          ];
 | 
			
		||||
          section.buttons.val = [
 | 
			
		||||
            {
 | 
			
		||||
              shortcut = "e";
 | 
			
		||||
              text = "[+] New file";
 | 
			
		||||
              command = ":ene <BAR> startinsert <CR>";
 | 
			
		||||
            }
 | 
			
		||||
            {
 | 
			
		||||
              shortcut = "f";
 | 
			
		||||
              text = "[?] Find file";
 | 
			
		||||
              command = ":Telescope find_files <CR>";
 | 
			
		||||
            }
 | 
			
		||||
            {
 | 
			
		||||
              shortcut = "r";
 | 
			
		||||
              text = "[~] Recent files";
 | 
			
		||||
              command = ":Telescope oldfiles <CR>";
 | 
			
		||||
            }
 | 
			
		||||
            {
 | 
			
		||||
              shortcut = "y";
 | 
			
		||||
              text = "[Y] Yazi";
 | 
			
		||||
              command = ":Yazi<CR>";
 | 
			
		||||
            }
 | 
			
		||||
            {
 | 
			
		||||
              shortcut = "m";
 | 
			
		||||
              text = "[M] Mason";
 | 
			
		||||
              command = ":Mason<CR>";
 | 
			
		||||
            }
 | 
			
		||||
            {
 | 
			
		||||
              shortcut = "q";
 | 
			
		||||
              text = "[X] Quit";
 | 
			
		||||
              command = ":qa<CR>";
 | 
			
		||||
            }
 | 
			
		||||
          ];
 | 
			
		||||
          section.footer.val = "Circuits hum in anticipation of your will.";
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      # Colorscheme
 | 
			
		||||
      catppuccin = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        flavour = "mocha";
 | 
			
		||||
        transparentBackground = true;
 | 
			
		||||
        integrations = {
 | 
			
		||||
          treesitter = true;
 | 
			
		||||
          mason = true;
 | 
			
		||||
          cmp = true;
 | 
			
		||||
          telescope = true;
 | 
			
		||||
          toggleterm = true;
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    # ===================
 | 
			
		||||
    # Plugins not in nixvim
 | 
			
		||||
    # ===================
 | 
			
		||||
    extraPlugins = with pkgs.vimPlugins; [
 | 
			
		||||
      yazi-nvim
 | 
			
		||||
      cheatsheet-nvim
 | 
			
		||||
      avante-nvim
 | 
			
		||||
      plenary-nvim
 | 
			
		||||
      nui-nvim
 | 
			
		||||
      dressing-nvim
 | 
			
		||||
      nvim-web-devicons
 | 
			
		||||
      img-clip-nvim
 | 
			
		||||
      render-markdown-nvim
 | 
			
		||||
      (pkgs.vimUtils.buildVimPlugin {
 | 
			
		||||
        name = "conform-nvim";
 | 
			
		||||
        src = pkgs.fetchFromGitHub {
 | 
			
		||||
          owner = "stevearc";
 | 
			
		||||
          repo = "conform.nvim";
 | 
			
		||||
          rev = "stable";
 | 
			
		||||
          sha256 = "sha256-pUF9F5QoDzCZuVRcJEF91M8Qjkh/xosMkf9tRavkmJs=";
 | 
			
		||||
        };
 | 
			
		||||
      })
 | 
			
		||||
    ];
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  home.packages = with pkgs; [
 | 
			
		||||
    nixfmt-rfc-style
 | 
			
		||||
    stylua
 | 
			
		||||
    black
 | 
			
		||||
    nodePackages.prettier
 | 
			
		||||
    rustfmt
 | 
			
		||||
    nodejs
 | 
			
		||||
    prettierd
 | 
			
		||||
    stylelint-lsp
 | 
			
		||||
    lua-language-server
 | 
			
		||||
    nil
 | 
			
		||||
    rust-analyzer
 | 
			
		||||
    python3Packages.python-lsp-server
 | 
			
		||||
    curl
 | 
			
		||||
    cargo
 | 
			
		||||
  ];
 | 
			
		||||
}
 | 
			
		||||
@@ -24,6 +24,7 @@
 | 
			
		||||
  # $ nix search wget
 | 
			
		||||
  environment.systemPackages = with pkgs; [
 | 
			
		||||
    # Bare minimum
 | 
			
		||||
    vim
 | 
			
		||||
    neovim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
 | 
			
		||||
    wget
 | 
			
		||||
    git
 | 
			
		||||
 
 | 
			
		||||
@@ -39,7 +39,6 @@
 | 
			
		||||
    ../../home/programs/games/lutris.nix
 | 
			
		||||
    ../../home/programs/games/opensource.nix
 | 
			
		||||
    ../../home/programs/games/airshipper.nix
 | 
			
		||||
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  catppuccin = {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user