mirror of
				https://github.com/nmasur/dotfiles
				synced 2025-11-04 05:53:16 +00:00 
			
		
		
		
	Compare commits
	
		
			1 Commits
		
	
	
		
			4ca25aa194
			...
			eblume-mol
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					068cdbf5d4 | 
							
								
								
									
										124
									
								
								flake.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										124
									
								
								flake.lock
									
									
									
										generated
									
									
									
								
							@@ -87,11 +87,11 @@
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719845423,
 | 
			
		||||
        "narHash": "sha256-ZLHDmWAsHQQKnmfyhYSHJDlt8Wfjv6SQhl2qek42O7A=",
 | 
			
		||||
        "lastModified": 1718662658,
 | 
			
		||||
        "narHash": "sha256-AKG7BsqtVWDlefgzyKz7vjaKTLi4+bmTSBhowbQoZtM=",
 | 
			
		||||
        "owner": "lnl7",
 | 
			
		||||
        "repo": "nix-darwin",
 | 
			
		||||
        "rev": "ec12b88104d6c117871fad55e931addac4626756",
 | 
			
		||||
        "rev": "29b3096a6e283d7e6779187244cb2a3942239fdf",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -108,11 +108,11 @@
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719864345,
 | 
			
		||||
        "narHash": "sha256-e4Pw+30vFAxuvkSTaTypd9zYemB/QlWcH186dsGT+Ms=",
 | 
			
		||||
        "lastModified": 1718846788,
 | 
			
		||||
        "narHash": "sha256-9dtXYtEkmXoUJV+PGLqscqF7qTn4AIhAKpFWRFU2NYs=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "disko",
 | 
			
		||||
        "rev": "544a80a69d6e2da04e4df7ec8210a858de8c7533",
 | 
			
		||||
        "rev": "e1174d991944a01eaaa04bc59c6281edca4c0e6e",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -145,11 +145,11 @@
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719881223,
 | 
			
		||||
        "narHash": "sha256-9eaxGGPw7hIuZ4OaqOyKec262t+TCie0p83tlzkMEpc=",
 | 
			
		||||
        "lastModified": 1718930737,
 | 
			
		||||
        "narHash": "sha256-+nKJ/VP6X+hirXqRry3GzdNn4OJvOdB4nRnJY22ixFw=",
 | 
			
		||||
        "owner": "bandithedoge",
 | 
			
		||||
        "repo": "nixpkgs-firefox-darwin",
 | 
			
		||||
        "rev": "407f201936424ec061d33aa687e7978ae7873b5c",
 | 
			
		||||
        "rev": "087919070dffc9798a8cb753e97babe287f06c25",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -267,11 +267,11 @@
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719827439,
 | 
			
		||||
        "narHash": "sha256-tneHOIv1lEavZ0vQ+rgz67LPNCgOZVByYki3OkSshFU=",
 | 
			
		||||
        "lastModified": 1718983978,
 | 
			
		||||
        "narHash": "sha256-lp6stESwTLBZUQ5GBivxwNehShmBp4jqeX/1xahM61w=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "home-manager",
 | 
			
		||||
        "rev": "59ce796b2563e19821361abbe2067c3bb4143a7d",
 | 
			
		||||
        "rev": "c559542f0aa87971a7f4c1b3478fe33cc904b902",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -304,72 +304,55 @@
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "markview-nvim-src": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719592662,
 | 
			
		||||
        "narHash": "sha256-E1lHSjbnOOIeieaFJ+INvxJHCbfVS3mwbQ6wrlKeGSQ=",
 | 
			
		||||
        "owner": "OXY2DEV",
 | 
			
		||||
        "repo": "markview.nvim",
 | 
			
		||||
        "rev": "f60219dce7283192d549f21847fcf8537bf6d260",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "OXY2DEV",
 | 
			
		||||
        "repo": "markview.nvim",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nextcloud-cookbook": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719431638,
 | 
			
		||||
        "narHash": "sha256-a8ekMnEzudHGiqHF53jPtgsVTOTc2QLuPg6YtTw5h68=",
 | 
			
		||||
        "lastModified": 1702545935,
 | 
			
		||||
        "narHash": "sha256-19LN1nYJJ0RMWj6DrYPvHzocTyhMfYdpdhBFch3fpHE=",
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.1/cookbook-0.11.1.tar.gz"
 | 
			
		||||
        "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.0/cookbook-0.11.0.tar.gz"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.1/cookbook-0.11.1.tar.gz"
 | 
			
		||||
        "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.0/cookbook-0.11.0.tar.gz"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nextcloud-external": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1710338675,
 | 
			
		||||
        "narHash": "sha256-bJJ/dVmE1o04QCyrxD0sko0okRsnxJmT6sOTOmBiifs=",
 | 
			
		||||
        "lastModified": 1699624334,
 | 
			
		||||
        "narHash": "sha256-RCL2RP5twRDLxI/KfAX6QLYQOzqZmSWsfrC5ZQIwTD4=",
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://github.com/nextcloud-releases/external/releases/download/v5.4.0/external-v5.4.0.tar.gz"
 | 
			
		||||
        "url": "https://github.com/nextcloud-releases/external/releases/download/v5.3.1/external-v5.3.1.tar.gz"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://github.com/nextcloud-releases/external/releases/download/v5.4.0/external-v5.4.0.tar.gz"
 | 
			
		||||
        "url": "https://github.com/nextcloud-releases/external/releases/download/v5.3.1/external-v5.3.1.tar.gz"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nextcloud-news": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1718102703,
 | 
			
		||||
        "narHash": "sha256-XNGjf7SWgJYFdVNOh3ED0jxSG0GJwWImVQq4cJT1Lo4=",
 | 
			
		||||
        "lastModified": 1703426420,
 | 
			
		||||
        "narHash": "sha256-AENBJH/bEob5JQvw4WEi864mdLYJ5Mqe78HJH6ceCpI=",
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha7/news.tar.gz"
 | 
			
		||||
        "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha3/news.tar.gz"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha7/news.tar.gz"
 | 
			
		||||
        "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha3/news.tar.gz"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nextcloud-snappymail": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1720361351,
 | 
			
		||||
        "narHash": "sha256-HlqO7xlMSRGgBtwi0t5oz5v7iw0zTSHysc9wGVRwGZI=",
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://snappymail.eu/repository/nextcloud/snappymail-2.36.4-nextcloud.tar.gz"
 | 
			
		||||
        "narHash": "sha256-7oJEJ6t6iS/pcnSHashf1AkOEf+gKizpQHBy9XwY4Yo=",
 | 
			
		||||
        "type": "file",
 | 
			
		||||
        "url": "https://github.com/nmasur/snappymail-nextcloud/releases/download/v2.36.1/snappymail-2.36.1-nextcloud.tar.gz"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "type": "tarball",
 | 
			
		||||
        "url": "https://snappymail.eu/repository/nextcloud/snappymail-2.36.4-nextcloud.tar.gz"
 | 
			
		||||
        "type": "file",
 | 
			
		||||
        "url": "https://github.com/nmasur/snappymail-nextcloud/releases/download/v2.36.1/snappymail-2.36.1-nextcloud.tar.gz"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nix2vim": {
 | 
			
		||||
@@ -395,11 +378,11 @@
 | 
			
		||||
    },
 | 
			
		||||
    "nixlib": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719708727,
 | 
			
		||||
        "narHash": "sha256-XFNKtyirrGNdehpg7lMNm1skEcBApjqGhaHc/OI95HY=",
 | 
			
		||||
        "lastModified": 1712450863,
 | 
			
		||||
        "narHash": "sha256-K6IkdtMtq9xktmYPj0uaYc8NsIqHuaAoRBaMgu9Fvrw=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "nixpkgs.lib",
 | 
			
		||||
        "rev": "1bba8a624b3b9d4f68db94fb63aaeb46039ce9e6",
 | 
			
		||||
        "rev": "3c62b6a12571c9a7f65ab037173ee153d539905f",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -416,11 +399,11 @@
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719841141,
 | 
			
		||||
        "narHash": "sha256-WOyohxFJJdfDvEB7N3eTcX44lNU2rZes1inHsyHL7mM=",
 | 
			
		||||
        "lastModified": 1718025593,
 | 
			
		||||
        "narHash": "sha256-WZ1gdKq/9u1Ns/oXuNsDm+W0salonVA0VY1amw8urJ4=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "nixos-generators",
 | 
			
		||||
        "rev": "140dcc2b9a0eb87ba5e9011076a1a7af19179ab1",
 | 
			
		||||
        "rev": "35c20ba421dfa5059e20e0ef2343c875372bdcf3",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -431,11 +414,11 @@
 | 
			
		||||
    },
 | 
			
		||||
    "nixpkgs": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719848872,
 | 
			
		||||
        "narHash": "sha256-H3+EC5cYuq+gQW8y0lSrrDZfH71LB4DAf+TDFyvwCNA=",
 | 
			
		||||
        "lastModified": 1718895438,
 | 
			
		||||
        "narHash": "sha256-k3JqJrkdoYwE3fHE6xGDY676AYmyh4U2Zw+0Bwe5DLU=",
 | 
			
		||||
        "owner": "nixos",
 | 
			
		||||
        "repo": "nixpkgs",
 | 
			
		||||
        "rev": "00d80d13810dbfea8ab4ed1009b09100cca86ba8",
 | 
			
		||||
        "rev": "d603719ec6e294f034936c0d0dc06f689d91b6c3",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -463,11 +446,11 @@
 | 
			
		||||
    },
 | 
			
		||||
    "nur": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719925604,
 | 
			
		||||
        "narHash": "sha256-cLmqi+P1sn+7497GS4fNWayoTDa0ZiJecjmEM4iQN9U=",
 | 
			
		||||
        "lastModified": 1719001822,
 | 
			
		||||
        "narHash": "sha256-rbEP1CTzYvdSAKf1a729De9t8GMIrZ5GmD+PdYCnrgg=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "nur",
 | 
			
		||||
        "rev": "574405811547dcec59e912c5e82bfd224648bd5e",
 | 
			
		||||
        "rev": "e7edcaeae9db01224266febe88eb7d3411055636",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -479,11 +462,11 @@
 | 
			
		||||
    "nvim-lint-src": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719415114,
 | 
			
		||||
        "narHash": "sha256-a9Mfoi1NzQ3b1w1VUqqJZddyCZYyacRnc128t5X3Wb0=",
 | 
			
		||||
        "lastModified": 1717789608,
 | 
			
		||||
        "narHash": "sha256-LNYFxAM9lQNNOIOc+IgKgbSRp2U09B/9HivSCwMyUpQ=",
 | 
			
		||||
        "owner": "mfussenegger",
 | 
			
		||||
        "repo": "nvim-lint",
 | 
			
		||||
        "rev": "efc6fc83f0772283e064c53a8f9fb5645bde0bc0",
 | 
			
		||||
        "rev": "941fa1220a61797a51f3af9ec6b7d74c8c7367ce",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -512,11 +495,11 @@
 | 
			
		||||
    "nvim-tree-lua-src": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719107085,
 | 
			
		||||
        "narHash": "sha256-RfrbxYD7RYBEy/grSYnKKkWd4BHxGYEFeLiDB5OYGpg=",
 | 
			
		||||
        "lastModified": 1717900986,
 | 
			
		||||
        "narHash": "sha256-7KO3wPW65IH4m0jEoyFScNiAVwrlNHU+p0H55AuwlWk=",
 | 
			
		||||
        "owner": "kyazdani42",
 | 
			
		||||
        "repo": "nvim-tree.lua",
 | 
			
		||||
        "rev": "8b2c5c678be4b49dff6a2df794877000113fd77b",
 | 
			
		||||
        "rev": "2086e564c4d23fea714e8a6d63b881e551af2f41",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -528,11 +511,11 @@
 | 
			
		||||
    "nvim-treesitter-src": {
 | 
			
		||||
      "flake": false,
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719904131,
 | 
			
		||||
        "narHash": "sha256-RbTBilXbgMFfwkbIyLMZuZw1DyzDol7g0V6uu4MaEh0=",
 | 
			
		||||
        "lastModified": 1718957498,
 | 
			
		||||
        "narHash": "sha256-GEuKEAZxLGMkyjdJGzrIKNR1X10RHlACC6s1lNOq7aw=",
 | 
			
		||||
        "owner": "nvim-treesitter",
 | 
			
		||||
        "repo": "nvim-treesitter",
 | 
			
		||||
        "rev": "e0d6c7643dc953acc2e817d0cebfc2f1f8c008e1",
 | 
			
		||||
        "rev": "b967bbc27b564001c3d3b8ea93444cf6d0b21d23",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
@@ -587,7 +570,6 @@
 | 
			
		||||
        "hmts-nvim-src": "hmts-nvim-src",
 | 
			
		||||
        "home-manager": "home-manager",
 | 
			
		||||
        "mac-app-util": "mac-app-util",
 | 
			
		||||
        "markview-nvim-src": "markview-nvim-src",
 | 
			
		||||
        "nextcloud-cookbook": "nextcloud-cookbook",
 | 
			
		||||
        "nextcloud-external": "nextcloud-external",
 | 
			
		||||
        "nextcloud-news": "nextcloud-news",
 | 
			
		||||
@@ -853,11 +835,11 @@
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1719220171,
 | 
			
		||||
        "narHash": "sha256-xywM6JoGT8AwfoOFJBTv8GRlvNu8LYqqqMS/OQ6uCgE=",
 | 
			
		||||
        "lastModified": 1718710563,
 | 
			
		||||
        "narHash": "sha256-O4rrM0Bkh3IRe8D600iniQ52QTmlnuTSp2KyXV7C2jE=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "NixOS-WSL",
 | 
			
		||||
        "rev": "269411cfed6aab694e46f719277c972de96177bb",
 | 
			
		||||
        "rev": "2fb93bea657ad99a7005ef601c67cb2820560a41",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										13
									
								
								flake.nix
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								flake.nix
									
									
									
									
									
								
							@@ -127,10 +127,6 @@
 | 
			
		||||
      url = "github:mfussenegger/nvim-lint";
 | 
			
		||||
      flake = false;
 | 
			
		||||
    };
 | 
			
		||||
    markview-nvim-src = {
 | 
			
		||||
      url = "github:OXY2DEV/markview.nvim";
 | 
			
		||||
      flake = false;
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    # Tree-Sitter Grammars
 | 
			
		||||
    tree-sitter-bash = {
 | 
			
		||||
@@ -181,24 +177,23 @@
 | 
			
		||||
    # Nextcloud Apps
 | 
			
		||||
    nextcloud-news = {
 | 
			
		||||
      # https://github.com/nextcloud/news/releases
 | 
			
		||||
      url = "https://github.com/nextcloud/news/releases/download/25.0.0-alpha7/news.tar.gz";
 | 
			
		||||
      url = "https://github.com/nextcloud/news/releases/download/25.0.0-alpha3/news.tar.gz";
 | 
			
		||||
      flake = false;
 | 
			
		||||
    };
 | 
			
		||||
    nextcloud-external = {
 | 
			
		||||
      # https://github.com/nextcloud-releases/external/releases
 | 
			
		||||
      url = "https://github.com/nextcloud-releases/external/releases/download/v5.4.0/external-v5.4.0.tar.gz";
 | 
			
		||||
      url = "https://github.com/nextcloud-releases/external/releases/download/v5.3.1/external-v5.3.1.tar.gz";
 | 
			
		||||
      flake = false;
 | 
			
		||||
    };
 | 
			
		||||
    nextcloud-cookbook = {
 | 
			
		||||
      # https://github.com/christianlupus-nextcloud/cookbook-releases/releases/
 | 
			
		||||
      url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.1/cookbook-0.11.1.tar.gz";
 | 
			
		||||
      url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.0/cookbook-0.11.0.tar.gz";
 | 
			
		||||
      flake = false;
 | 
			
		||||
    };
 | 
			
		||||
    nextcloud-snappymail = {
 | 
			
		||||
      # https://github.com/the-djmaze/snappymail/releases
 | 
			
		||||
      # https://snappymail.eu/repository/nextcloud
 | 
			
		||||
      url = "https://snappymail.eu/repository/nextcloud/snappymail-2.36.4-nextcloud.tar.gz";
 | 
			
		||||
      # url = "https://github.com/nmasur/snappymail-nextcloud/releases/download/v2.36.3/snappymail-2.36.3-nextcloud.tar.gz";
 | 
			
		||||
      url = "file+https://github.com/nmasur/snappymail-nextcloud/releases/download/v2.36.1/snappymail-2.36.1-nextcloud.tar.gz";
 | 
			
		||||
      flake = false;
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 
 | 
			
		||||
@@ -34,6 +34,7 @@ inputs.darwin.lib.darwinSystem {
 | 
			
		||||
        dark = true;
 | 
			
		||||
      };
 | 
			
		||||
      mail.user = globals.user;
 | 
			
		||||
      mole.enable = true;
 | 
			
		||||
      atuin.enable = true;
 | 
			
		||||
      charm.enable = true;
 | 
			
		||||
      neovim.enable = true;
 | 
			
		||||
 
 | 
			
		||||
@@ -8,6 +8,7 @@
 | 
			
		||||
    ./firefox.nix
 | 
			
		||||
    ./kitty.nix
 | 
			
		||||
    ./media.nix
 | 
			
		||||
    ./mole.nix
 | 
			
		||||
    ./obsidian.nix
 | 
			
		||||
    ./qbittorrent.nix
 | 
			
		||||
    ./slack.nix
 | 
			
		||||
 
 | 
			
		||||
@@ -34,13 +34,10 @@
 | 
			
		||||
      programs.rofi.terminal = lib.mkIf pkgs.stdenv.isLinux (lib.mkDefault "${pkgs.kitty}/bin/kitty");
 | 
			
		||||
 | 
			
		||||
      # Display images in the terminal
 | 
			
		||||
      programs.fish.interactiveShellInit = # fish
 | 
			
		||||
        ''
 | 
			
		||||
          if test "$TERM" = "xterm-kitty"
 | 
			
		||||
              alias icat="kitty +kitten icat"
 | 
			
		||||
              alias ssh="kitty +kitten ssh"
 | 
			
		||||
          end
 | 
			
		||||
        '';
 | 
			
		||||
      programs.fish.shellAliases = {
 | 
			
		||||
        icat = "kitty +kitten icat";
 | 
			
		||||
        ssh = "kitty +kitten ssh";
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
      programs.kitty = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										110
									
								
								modules/common/applications/mole.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										110
									
								
								modules/common/applications/mole.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,110 @@
 | 
			
		||||
{
 | 
			
		||||
  config,
 | 
			
		||||
  pkgs,
 | 
			
		||||
  lib,
 | 
			
		||||
  ...
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
 | 
			
		||||
  # Build kdl-py
 | 
			
		||||
  kdl-py = pkgs.python311.pkgs.buildPythonPackage rec {
 | 
			
		||||
    pname = "kdl-py";
 | 
			
		||||
    version = "1.2.0";
 | 
			
		||||
    pyproject = true;
 | 
			
		||||
    src = pkgs.fetchPypi {
 | 
			
		||||
      inherit pname version;
 | 
			
		||||
      hash = "sha256-Y/P0bGJ33trc5E3PyUZyv25r8zMLkBIuATTCKFfimXM=";
 | 
			
		||||
    };
 | 
			
		||||
    build-system = [ pkgs.python311.pkgs.setuptools ];
 | 
			
		||||
    # has no tests
 | 
			
		||||
    doCheck = false;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  mole = pkgs.python311.pkgs.buildPythonPackage rec {
 | 
			
		||||
    pname = "mole";
 | 
			
		||||
    version = "0.7.1";
 | 
			
		||||
    pyproject = true;
 | 
			
		||||
 | 
			
		||||
    src = pkgs.fetchFromGitHub {
 | 
			
		||||
      owner = "eblume";
 | 
			
		||||
      repo = pname;
 | 
			
		||||
      rev = "30bb052a97050b1fa89c287855d834f7952b195a";
 | 
			
		||||
      sha256 = "sha256-DUWsfyICCfFQ2ZQBYSQVoA3eLdKC8djUylKgGdHIyJo=";
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    patches = [
 | 
			
		||||
      (builtins.toString (
 | 
			
		||||
        pkgs.writeText "pyproject.toml.patch" ''
 | 
			
		||||
          diff --git a/pyproject.toml b/pyproject.toml
 | 
			
		||||
          index 12ce0f5..787e978 100644
 | 
			
		||||
          --- a/pyproject.toml
 | 
			
		||||
          +++ b/pyproject.toml
 | 
			
		||||
          @@ -12,11 +12,11 @@ packages = [
 | 
			
		||||
           [tool.poetry.dependencies]
 | 
			
		||||
           python = "^3.11"
 | 
			
		||||
           # Now back to the regular dependencies
 | 
			
		||||
          -typer = {extras = ["all"], version = "^0.9"}
 | 
			
		||||
          +typer = {extras = ["all"], version = "^0.12"}
 | 
			
		||||
           todoist-api-python = "^2.1.3"
 | 
			
		||||
           openai = "^1.2.4"
 | 
			
		||||
           rich = "^13.4.2"
 | 
			
		||||
          -watchdog = "^3.0.0"
 | 
			
		||||
          +watchdog = "^4.0.0"
 | 
			
		||||
           pydub = "^0.25.1"
 | 
			
		||||
           requests = "^2.31.0"
 | 
			
		||||
           pyyaml = "^6.0.1"
 | 
			
		||||
        ''
 | 
			
		||||
      ))
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    # Used during build time
 | 
			
		||||
    nativeBuildInputs = [ pkgs.python311Packages.poetry-core ];
 | 
			
		||||
 | 
			
		||||
    # Used during run time
 | 
			
		||||
    buildInputs = [
 | 
			
		||||
      pkgs._1password
 | 
			
		||||
      pkgs.nb-cli
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    # Both build and run time
 | 
			
		||||
    propagatedBuildInputs = [
 | 
			
		||||
      pkgs.python311Packages.typer
 | 
			
		||||
      pkgs.python311Packages.todoist-api-python
 | 
			
		||||
      pkgs.python311Packages.openai
 | 
			
		||||
      pkgs.python311Packages.rich
 | 
			
		||||
      pkgs.python311Packages.watchdog
 | 
			
		||||
      pkgs.python311Packages.pydub
 | 
			
		||||
      pkgs.python311Packages.requests
 | 
			
		||||
      pkgs.python311Packages.pyyaml
 | 
			
		||||
      pkgs.python311Packages.pydantic
 | 
			
		||||
      pkgs.python311Packages.pendulum
 | 
			
		||||
      kdl-py
 | 
			
		||||
      pkgs.ffmpeg
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    build-system = [ pkgs.python311.pkgs.setuptools ];
 | 
			
		||||
 | 
			
		||||
    # has no tests
 | 
			
		||||
    doCheck = false;
 | 
			
		||||
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
in
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
  options = {
 | 
			
		||||
    mole = {
 | 
			
		||||
      enable = lib.mkEnableOption {
 | 
			
		||||
        description = "Enable Mole.";
 | 
			
		||||
        default = false;
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  config = lib.mkIf config.mole.enable {
 | 
			
		||||
    home-manager.users.${config.user} = {
 | 
			
		||||
      home.packages = [ mole ];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@@ -10,7 +10,7 @@
 | 
			
		||||
    pkgs.vimPlugins.vim-eunuch # File manipulation commands
 | 
			
		||||
    pkgs.vimPlugins.vim-fugitive # Git commands
 | 
			
		||||
    pkgs.vimPlugins.vim-repeat # Better repeat using .
 | 
			
		||||
    pkgs.vimPlugins.markview-nvim # Markdown preview
 | 
			
		||||
    pkgs.vimPlugins.glow-nvim # Markdown preview popup
 | 
			
		||||
    pkgs.vimPlugins.nvim-colorizer-lua # Hex color previews
 | 
			
		||||
    pkgs.vimPlugins.which-key-nvim # Keybind helper
 | 
			
		||||
  ];
 | 
			
		||||
@@ -21,7 +21,7 @@
 | 
			
		||||
      names = false;
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
  setup.markview = { };
 | 
			
		||||
  setup.glow = { };
 | 
			
		||||
  setup.which-key = { };
 | 
			
		||||
 | 
			
		||||
  vim.o = {
 | 
			
		||||
@@ -57,8 +57,8 @@
 | 
			
		||||
 | 
			
		||||
  # Better backup, swap and undo storage
 | 
			
		||||
  vim.o.backup = true; # Easier to recover and more secure
 | 
			
		||||
  vim.opt.undofile = true; # Keeps undos after quit
 | 
			
		||||
  vim.opt.swapfile = false; # Instead of swaps, create backups
 | 
			
		||||
  vim.bo.swapfile = false; # Instead of swaps, create backups
 | 
			
		||||
  vim.bo.undofile = true; # Keeps undos after quit
 | 
			
		||||
  vim.o.backupdir = dsl.rawLua ''vim.fn.expand("~/.local/state/nvim/backup//")'';
 | 
			
		||||
  vim.o.undodir = dsl.rawLua ''vim.fn.expand("~/.local/state/nvim/undo//")'';
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -14,6 +14,11 @@
 | 
			
		||||
    open_mapping = dsl.rawLua "[[<c-\\>]]";
 | 
			
		||||
    hide_numbers = true;
 | 
			
		||||
    direction = "float";
 | 
			
		||||
    float_opts = {
 | 
			
		||||
      width = dsl.rawLua "vim.o.columns - 4";
 | 
			
		||||
      height = dsl.rawLua "vim.o.lines - 4";
 | 
			
		||||
      row = 0;
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  lua = ''
 | 
			
		||||
 
 | 
			
		||||
@@ -71,8 +71,8 @@ key("n", "co", ":copen<CR>")
 | 
			
		||||
key("n", "cq", ":cclose<CR>")
 | 
			
		||||
 | 
			
		||||
-- Other
 | 
			
		||||
key("n", "<A-CR>", ":noh<CR>", { silent = true }) --- Clear search in VimWiki
 | 
			
		||||
key("n", "Y", "y$") --- Copy to end of line
 | 
			
		||||
key("n", "<A-CR>", ":noh<CR>", { silent = true })           --- Clear search in VimWiki
 | 
			
		||||
key("n", "Y", "y$")                                         --- Copy to end of line
 | 
			
		||||
key("v", "<C-r>", "y<Esc>:%s/<C-r>+//gc<left><left><left>") --- Substitute selected
 | 
			
		||||
key("v", "D", "y'>gp") --- Duplicate selected
 | 
			
		||||
key("x", "<Leader>p", '"_dP') --- Paste but keep register
 | 
			
		||||
key("v", "D", "y'>gp")                                      --- Duplicate selected
 | 
			
		||||
key("x", "<Leader>p", '"_dP')                               --- Paste but keep register
 | 
			
		||||
 
 | 
			
		||||
@@ -33,7 +33,6 @@
 | 
			
		||||
      pkgs.noti # Create notifications programmatically
 | 
			
		||||
      pkgs.ipcalc # Make IP network calculations
 | 
			
		||||
      pkgs.teams
 | 
			
		||||
      pkgs.cloudflared # Allow connecting to Cloudflare tunnels
 | 
			
		||||
      (pkgs.writeShellApplication {
 | 
			
		||||
        name = "ocr";
 | 
			
		||||
        runtimeInputs = [ pkgs.tesseract ];
 | 
			
		||||
 
 | 
			
		||||
@@ -21,15 +21,5 @@
 | 
			
		||||
      accelProfile = "flat";
 | 
			
		||||
      accelSpeed = "1.15";
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    # Cursor
 | 
			
		||||
    home-manager.users.${config.user}.home.pointerCursor = {
 | 
			
		||||
      name = "Adwaita";
 | 
			
		||||
      package = pkgs.gnome3.adwaita-icon-theme;
 | 
			
		||||
      size = 24;
 | 
			
		||||
      gtk.enable = true;
 | 
			
		||||
      x11.enable = true;
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -91,16 +91,8 @@
 | 
			
		||||
      );
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    systemd.services.caddy.serviceConfig = {
 | 
			
		||||
 | 
			
		||||
      # Allows Caddy to serve lower ports (443, 80)
 | 
			
		||||
      AmbientCapabilities = "CAP_NET_BIND_SERVICE";
 | 
			
		||||
 | 
			
		||||
      # Prevent flooding of logs by rate-limiting
 | 
			
		||||
      LogRateLimitIntervalSec = "5s"; # Limit period
 | 
			
		||||
      LogRateLimitBurst = 100; # Limit threshold
 | 
			
		||||
 | 
			
		||||
    };
 | 
			
		||||
    # Allows Caddy to serve lower ports (443, 80)
 | 
			
		||||
    systemd.services.caddy.serviceConfig.AmbientCapabilities = "CAP_NET_BIND_SERVICE";
 | 
			
		||||
 | 
			
		||||
    # Required for web traffic to reach this machine
 | 
			
		||||
    networking.firewall.allowedTCPPorts = [
 | 
			
		||||
 
 | 
			
		||||
@@ -885,28 +885,6 @@ in
 | 
			
		||||
                              }
 | 
			
		||||
                            ];
 | 
			
		||||
                          }
 | 
			
		||||
                          {
 | 
			
		||||
                            matcher = {
 | 
			
		||||
                              id = "byName";
 | 
			
		||||
                              options = "localhost:8086";
 | 
			
		||||
                            };
 | 
			
		||||
                            properties = [
 | 
			
		||||
                              {
 | 
			
		||||
                                id = "displayName";
 | 
			
		||||
                                value = "InfluxDB";
 | 
			
		||||
                              }
 | 
			
		||||
                              {
 | 
			
		||||
                                id = "links";
 | 
			
		||||
                                value = [
 | 
			
		||||
                                  {
 | 
			
		||||
                                    targetBlank = true;
 | 
			
		||||
                                    title = "";
 | 
			
		||||
                                    url = "https://${config.hostnames.influxdb}";
 | 
			
		||||
                                  }
 | 
			
		||||
                                ];
 | 
			
		||||
                              }
 | 
			
		||||
                            ];
 | 
			
		||||
                          }
 | 
			
		||||
                          {
 | 
			
		||||
                            matcher = {
 | 
			
		||||
                              id = "byName";
 | 
			
		||||
@@ -951,28 +929,6 @@ in
 | 
			
		||||
                              }
 | 
			
		||||
                            ];
 | 
			
		||||
                          }
 | 
			
		||||
                          {
 | 
			
		||||
                            matcher = {
 | 
			
		||||
                              id = "byName";
 | 
			
		||||
                              options = "localhost:9000";
 | 
			
		||||
                            };
 | 
			
		||||
                            properties = [
 | 
			
		||||
                              {
 | 
			
		||||
                                id = "displayName";
 | 
			
		||||
                                value = "The Lounge";
 | 
			
		||||
                              }
 | 
			
		||||
                              {
 | 
			
		||||
                                id = "links";
 | 
			
		||||
                                value = [
 | 
			
		||||
                                  {
 | 
			
		||||
                                    targetBlank = true;
 | 
			
		||||
                                    title = "";
 | 
			
		||||
                                    url = "https://${config.hostnames.irc}";
 | 
			
		||||
                                  }
 | 
			
		||||
                                ];
 | 
			
		||||
                              }
 | 
			
		||||
                            ];
 | 
			
		||||
                          }
 | 
			
		||||
                          {
 | 
			
		||||
                            matcher = {
 | 
			
		||||
                              id = "byName";
 | 
			
		||||
@@ -2365,7 +2321,7 @@ in
 | 
			
		||||
                      datasourceUid = promUid;
 | 
			
		||||
                      model = {
 | 
			
		||||
                        editorMode = "code";
 | 
			
		||||
                        expr = ''systemd_unit_state{name=~"cloudflared-tunnel-.*", state="active", job!="tempest"}'';
 | 
			
		||||
                        expr = ''systemd_unit_state{name=~"cloudflared-tunnel-.*", state="active"}'';
 | 
			
		||||
                        hide = false;
 | 
			
		||||
                        instant = true;
 | 
			
		||||
                        intervalMs = 1000;
 | 
			
		||||
@@ -2462,7 +2418,7 @@ in
 | 
			
		||||
                  execErrState = "Error";
 | 
			
		||||
                  for = "5m";
 | 
			
		||||
                  annotations = {
 | 
			
		||||
                    description = "Cloudflare Tunnel for {{ index $labels \"job\" }}.";
 | 
			
		||||
                    description = "Cloudflare Tunnel for {{ $job }}.";
 | 
			
		||||
                    summary = "Cloudflare Tunnel is down.";
 | 
			
		||||
                  };
 | 
			
		||||
                  isPaused = false;
 | 
			
		||||
 
 | 
			
		||||
@@ -26,8 +26,6 @@
 | 
			
		||||
        trusted_domains = [ config.hostnames.content ];
 | 
			
		||||
        trusted_proxies = [ "127.0.0.1" ];
 | 
			
		||||
        maintenance_window_start = 4; # Run jobs at 4am UTC
 | 
			
		||||
        log_type = "file";
 | 
			
		||||
        loglevel = 1; # Include all actions in the log
 | 
			
		||||
      };
 | 
			
		||||
      extraAppsEnable = true;
 | 
			
		||||
      extraApps = {
 | 
			
		||||
 
 | 
			
		||||
@@ -38,10 +38,6 @@ in
 | 
			
		||||
 | 
			
		||||
  config = {
 | 
			
		||||
 | 
			
		||||
    services.victoriametrics.extraOptions = [
 | 
			
		||||
      "-promscrape.config=${(pkgs.formats.yaml { }).generate "scrape.yml" prometheusConfig}"
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    systemd.services.vmauth = lib.mkIf config.services.victoriametrics.enable {
 | 
			
		||||
      description = "VictoriaMetrics basic auth proxy";
 | 
			
		||||
      after = [ "network.target" ];
 | 
			
		||||
 
 | 
			
		||||
@@ -4,10 +4,7 @@
 | 
			
		||||
  # How long to keep journalctl entries
 | 
			
		||||
  # This helps to make sure log disk usage doesn't grow too unwieldy
 | 
			
		||||
  services.journald.extraConfig = ''
 | 
			
		||||
    SystemMaxUse=4G
 | 
			
		||||
    SystemKeepFree=10G
 | 
			
		||||
    SystemMaxFileSize=128M
 | 
			
		||||
    SystemMaxFiles=500
 | 
			
		||||
    SystemMaxUse=100M
 | 
			
		||||
    MaxFileSec=1month
 | 
			
		||||
    MaxRetentionSec=2month
 | 
			
		||||
  '';
 | 
			
		||||
 
 | 
			
		||||
@@ -38,6 +38,5 @@ in
 | 
			
		||||
    base16-nvim = plugin "base16-nvim" inputs.base16-nvim-src;
 | 
			
		||||
    baleia-nvim = plugin "baleia-nvim" inputs.baleia-nvim-src;
 | 
			
		||||
    hmts-nvim = plugin "hmts-nvim" inputs.hmts-nvim-src;
 | 
			
		||||
    markview-nvim = plugin "markview-nvim" inputs.markview-nvim-src;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user