2024-06-28 00:49:04 +02:00
|
|
|
{ pkgs, ... }:
|
2024-06-29 14:11:09 +02:00
|
|
|
|
2024-06-09 16:37:54 +02:00
|
|
|
{
|
2024-06-28 18:03:13 +02:00
|
|
|
imports = [
|
2024-07-27 16:13:48 +02:00
|
|
|
./modules/xdg.nix
|
2024-07-22 23:55:51 +02:00
|
|
|
./modules/gaming.nix
|
2024-07-31 18:50:29 +02:00
|
|
|
./modules/haskell
|
2024-07-22 23:55:51 +02:00
|
|
|
./modules/lean.nix
|
|
|
|
./modules/ocaml.nix
|
2024-07-27 16:13:48 +02:00
|
|
|
./modules/js.nix
|
2024-06-28 18:03:13 +02:00
|
|
|
];
|
|
|
|
|
2024-06-28 00:49:04 +02:00
|
|
|
home = {
|
|
|
|
# Home Manager needs a bit of information about you and the
|
|
|
|
# paths it should manage.
|
|
|
|
username = "kamov";
|
|
|
|
homeDirectory = "/home/kamov";
|
2024-06-12 00:42:05 +02:00
|
|
|
|
2024-06-28 00:49:04 +02:00
|
|
|
# Packages that should be installed to the user profile.
|
2024-06-28 18:03:13 +02:00
|
|
|
packages = with pkgs; [
|
|
|
|
anki
|
|
|
|
audacity
|
2024-07-08 20:41:23 +02:00
|
|
|
calibre
|
|
|
|
chromium
|
2024-06-28 18:03:13 +02:00
|
|
|
discord
|
|
|
|
krita
|
|
|
|
obs-studio
|
|
|
|
qbittorrent
|
2024-07-22 23:55:51 +02:00
|
|
|
unrar
|
2024-06-28 18:03:13 +02:00
|
|
|
vlc
|
|
|
|
];
|
|
|
|
};
|
|
|
|
|
2024-06-28 00:49:04 +02:00
|
|
|
programs = {
|
|
|
|
# default shell
|
2024-07-08 20:41:23 +02:00
|
|
|
fish = {
|
|
|
|
enable = true;
|
|
|
|
interactiveShellInit = ''
|
|
|
|
set fish_greeting # Disable greeting
|
|
|
|
'';
|
|
|
|
shellAliases = {
|
2024-07-22 23:55:51 +02:00
|
|
|
shell = "nix-shell --command fish";
|
|
|
|
upgrade = "sudo nixos-rebuild switch --upgrade";
|
2024-07-08 20:41:23 +02:00
|
|
|
};
|
|
|
|
};
|
2024-06-28 00:49:04 +02:00
|
|
|
|
|
|
|
git = {
|
|
|
|
enable = true;
|
|
|
|
userName = "Maciej Jur";
|
|
|
|
userEmail = "maciej@kamoshi.org";
|
|
|
|
signing = {
|
|
|
|
signByDefault = true;
|
|
|
|
key = "191CBFF5F72ECAFD!";
|
|
|
|
};
|
|
|
|
};
|
2024-06-28 18:03:13 +02:00
|
|
|
|
|
|
|
firefox = {
|
|
|
|
enable = true;
|
|
|
|
package = pkgs.firefox-devedition;
|
|
|
|
policies = {
|
|
|
|
"DisablePocket" = true;
|
|
|
|
"DisableTelemetry" = true;
|
|
|
|
"PrimaryPassword" = false;
|
|
|
|
"PasswordManagerEnabled" = false;
|
|
|
|
"FirefoxHome" = {
|
|
|
|
"Search" = true;
|
|
|
|
"TopSites" = false;
|
|
|
|
"SponsoredTopSites" = false;
|
|
|
|
"Highlights" = false;
|
|
|
|
"Pocket" = false;
|
|
|
|
"SponsoredPocket" = false;
|
|
|
|
"Snippets" = false;
|
|
|
|
"Locked" = true;
|
|
|
|
};
|
|
|
|
"Preferences" = {
|
|
|
|
"widget.use-xdg-desktop-portal.file-picker" = 1;
|
|
|
|
"widget.use-xdg-desktop-portal.mime-handler" = 1;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
neovim = {
|
|
|
|
enable = true;
|
|
|
|
defaultEditor = true;
|
|
|
|
extraPackages = with pkgs; [
|
2024-07-08 20:41:23 +02:00
|
|
|
fd
|
|
|
|
ripgrep
|
|
|
|
tree-sitter
|
|
|
|
|
|
|
|
# LSP
|
|
|
|
lua-language-server # lua
|
|
|
|
marksman # markdown
|
|
|
|
nixd # nix
|
|
|
|
nodePackages.svelte-language-server # svelte
|
|
|
|
nodePackages.typescript-language-server # typescript
|
|
|
|
ocamlPackages.ocaml-lsp # ocaml
|
|
|
|
vscode-langservers-extracted # css/html/json
|
|
|
|
|
2024-06-28 18:03:13 +02:00
|
|
|
lldb
|
|
|
|
];
|
|
|
|
};
|
2024-06-28 00:49:04 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
# This value determines the Home Manager release that your
|
|
|
|
# configuration is compatible with. This helps avoid breakage
|
|
|
|
# when a new Home Manager release introduces backwards
|
|
|
|
# incompatible changes.
|
|
|
|
#
|
|
|
|
# You can update Home Manager without changing this value. See
|
|
|
|
# the Home Manager release notes for a list of state version
|
|
|
|
# changes in each release.
|
|
|
|
home.stateVersion = "24.05";
|
2024-06-09 16:37:54 +02:00
|
|
|
}
|