{ config, pkgs, ... }: { home.stateVersion = "25.05"; # Please read the comment before changing. programs.bash.enable = true; programs.fish = { enable = true; }; programs.git = { enable = true; settings = { user = { name = "Julien Hémono"; email = "julien@hemono.fr"; }; }; }; programs.jujutsu = { enable = true; settings = { user = { email = "julien@hemono.fr"; name = "Julien Hémono"; }; ui.default-command = "log"; }; }; programs.gh = { enable = true; }; programs.helix = { enable = true; defaultEditor = true; }; programs.uv.enable = true; programs.firefox = { enable = true; nativeMessagingHosts = with pkgs; [ passff-host ]; }; programs.browserpass.enable = true; # The home.packages option allows you to install Nix packages into your # environment. home.packages = with pkgs; let tex = texlive.combine { inherit (texlive) scheme-basic moderncv fontawesome5 pgf # For tikz.sty multirow arydshln; }; my-vscode = vscode-with-extensions.override { vscodeExtensions = with vscode-marketplace; [ ms-python.python ms-python.vscode-pylance ms-python.debugpy ms-python.black-formatter ms-python.isort ms-vscode-remote.remote-containers github.copilot github.copilot-chat dbaeumer.vscode-eslint ]; }; in [ chromium docker-compose drawing hunspell hunspellDicts.fr-classique # inkscape libreoffice-fresh my-vscode # nixfmt pass-wayland pwgen # scribus tex # General development # dbeaver-bin devenv # poetry pre-commit # nodejs ]; # Home Manager is pretty good at managing dotfiles. The primary way to manage # plain files is through 'home.file'. home.file = { # # Building this configuration will create a copy of 'dotfiles/screenrc' in # # the Nix store. Activating the configuration will then make '~/.screenrc' a # # symlink to the Nix store copy. # ".screenrc".source = dotfiles/screenrc; # # You can also set the file content immediately. # ".gradle/gradle.properties".text = '' # org.gradle.console=verbose # org.gradle.daemon.idletimeout=3600000 # ''; }; # Home Manager can also manage your environment variables through # 'home.sessionVariables'. These will be explicitly sourced when using a # shell provided by Home Manager. If you don't want to manage your shell # through Home Manager then you have to manually source 'hm-session-vars.sh' # located at either # # ~/.nix-profile/etc/profile.d/hm-session-vars.sh # # or # # ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh # # or # # /etc/profiles/per-user/julien/etc/profile.d/hm-session-vars.sh # home.sessionVariables = { }; }