dotfiles/nixos/msi/home.nix

114 lines
2.5 KiB
Nix
Raw Normal View History

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
./modules/ghci
./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
}