diff --git a/flake.lock b/flake.lock index d79103b..1b1e20f 100644 --- a/flake.lock +++ b/flake.lock @@ -84,6 +84,20 @@ } }, "flake-compat": { + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + } + }, + "flake-compat_2": { "locked": { "lastModified": 1733328505, "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", @@ -158,7 +172,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems" + "systems": "systems_2" }, "locked": { "lastModified": 1731533236, @@ -359,18 +373,39 @@ "type": "github" } }, - "nixpkgs": { + "nixcord": { + "inputs": { + "flake-compat": "flake-compat", + "nixpkgs": "nixpkgs", + "systems": "systems", + "treefmt-nix": "treefmt-nix" + }, "locked": { - "lastModified": 1741516043, - "narHash": "sha256-Hv0S630U4GVZBM1Q+NCEwyN5ct7cic+8r6qLIaUaVqI=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "8adda98a4e637d0d8a867f19ace5ed6680ecc94a", + "lastModified": 1741307969, + "narHash": "sha256-JxWxScHu0g/ltTas3ZvwPX/J6xhHm540+FY8ZfTigDg=", + "owner": "kaylorben", + "repo": "nixcord", + "rev": "269b69665a78f57f2bc1b62e05e823815f41cea9", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-unstable-small", + "owner": "kaylorben", + "repo": "nixcord", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1737003892, + "narHash": "sha256-RCzJE9wKByLCXmRBp+z8LK9EgdW+K+W/DXnJS4S/NVo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ae06b9c2d83cb5c8b12d7d0e32692e93d1379713", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } @@ -403,6 +438,38 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1735554305, + "narHash": "sha256-zExSA1i/b+1NMRhGGLtNfFGXgLtgo+dcuzHzaWA6w3Q=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "0e82ab234249d8eee3e8c91437802b32c74bb3fd", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1741516043, + "narHash": "sha256-Hv0S630U4GVZBM1Q+NCEwyN5ct7cic+8r6qLIaUaVqI=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "8adda98a4e637d0d8a867f19ace5ed6680ecc94a", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable-small", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { "locked": { "lastModified": 1740367490, "narHash": "sha256-WGaHVAjcrv+Cun7zPlI41SerRtfknGQap281+AakSAw=", @@ -441,7 +508,7 @@ "stylix", "nixpkgs" ], - "treefmt-nix": "treefmt-nix" + "treefmt-nix": "treefmt-nix_2" }, "locked": { "lastModified": 1740408283, @@ -467,7 +534,7 @@ "nixpkgs" ], "nmd": "nmd", - "systems": "systems_2" + "systems": "systems_3" }, "locked": { "lastModified": 1741477095, @@ -487,7 +554,8 @@ "inputs": { "flake-parts": "flake-parts", "hm": "hm", - "nixpkgs": "nixpkgs", + "nixcord": "nixcord", + "nixpkgs": "nixpkgs_3", "nvf": "nvf", "stylix": "stylix" } @@ -521,14 +589,14 @@ "base16-helix": "base16-helix", "base16-vim": "base16-vim", "firefox-gnome-theme": "firefox-gnome-theme", - "flake-compat": "flake-compat", + "flake-compat": "flake-compat_2", "flake-utils": "flake-utils_2", "git-hooks": "git-hooks", "gnome-shell": "gnome-shell", "home-manager": "home-manager", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_4", "nur": "nur", - "systems": "systems_3", + "systems": "systems_4", "tinted-foot": "tinted-foot", "tinted-kitty": "tinted-kitty", "tinted-schemes": "tinted-schemes", @@ -559,9 +627,8 @@ "type": "github" }, "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" + "id": "systems", + "type": "indirect" } }, "systems_2": { @@ -594,6 +661,21 @@ "type": "github" } }, + "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "tinted-foot": { "flake": false, "locked": { @@ -677,6 +759,24 @@ } }, "treefmt-nix": { + "inputs": { + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1737103437, + "narHash": "sha256-uPNWcYbhY2fjY3HOfRCR5jsfzdzemhfxLSxwjXYXqNc=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "d1ed3b385f8130e392870cfb1dbfaff8a63a1899", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } + }, + "treefmt-nix_2": { "inputs": { "nixpkgs": [ "stylix", diff --git a/flake.nix b/flake.nix index 096a508..a129299 100644 --- a/flake.nix +++ b/flake.nix @@ -43,5 +43,7 @@ url = "github:notashelf/nvf"; inputs.nixpkgs.follows = "nixpkgs"; }; + + nixcord.url = "github:kaylorben/nixcord"; }; } diff --git a/home/programs/default.nix b/home/programs/default.nix index fd8bc52..0ca7760 100644 --- a/home/programs/default.nix +++ b/home/programs/default.nix @@ -4,6 +4,7 @@ ./games.nix ./mpv.nix ./neovim.nix + ./nixcord.nix ./other.nix ]; } diff --git a/home/programs/games.nix b/home/programs/games.nix index 75c47ef..66ba85c 100644 --- a/home/programs/games.nix +++ b/home/programs/games.nix @@ -1,3 +1,12 @@ -{pkgs, ...}: { - # Also look at system/programs/games.nix +{ + pkgs, + osConfig, + lib, + ... +}: { + # Also look at system/programs/games.nix (some programs have to be overlayed or have systemwide modules that have to be installed.) + home.packages = lib.mkIf osConfig.niksos.games [ + pkgs.dolphin-emu + pkgs.suyu + ]; } diff --git a/home/programs/neovim.nix b/home/programs/neovim.nix index cffe4f2..df7b2f3 100644 --- a/home/programs/neovim.nix +++ b/home/programs/neovim.nix @@ -57,6 +57,7 @@ ts.enable = true; typst.enable = true; rust.enable = true; + python.enable = true; }; lsp = { formatOnSave = true; diff --git a/home/programs/nixcord.nix b/home/programs/nixcord.nix new file mode 100644 index 0000000..9d994ec --- /dev/null +++ b/home/programs/nixcord.nix @@ -0,0 +1,63 @@ +{inputs, ...}: { + imports = [inputs.nixcord.homeManagerModules.nixcord]; + + programs.nixcord = { + enable = true; + + discord.enable = false; + vesktop.enable = true; + vesktopConfig = { + tray = false; + minimizeToTray = false; + enableSplashScreen = false; + }; + + config = { + frameless = true; + transparent = true; + + plugins = let + enabledPlugins = [ + # Plugins without config + "anonymiseFileNames" + "betterRoleDot" + "betterSettings" + "biggerStreamPreview" + "callTimer" + "clearURLs" + "copyFileContents" + "emoteCloner" + "fakeNitro" + "fixYoutubeEmbeds" + "friendsSince" + "fullSearchContext" + "memberCount" + "mentionAvatars" + "noUnblockToJump" + "openInApp" + "petpet" + "previewMessage" + "quickReply" + "relationshipNotifier" + "secretRingToneEnabler" + "shikiCodeblocks" + "showHiddenChannels" + "showHiddenThings" + "showMeYourName" + "unindent" + "userVoiceShow" + "youtubeAdblock" + "webScreenShareFixes" + ]; + in + (builtins.listToAttrs (map (x: { + name = x; + value = {enable = true;}; + }) + enabledPlugins)) + // { + # Plugins with config + }; + }; + }; +}