summaryrefslogtreecommitdiff
path: root/home-manager
diff options
context:
space:
mode:
Diffstat (limited to 'home-manager')
-rw-r--r--home-manager/doretta.nix122
1 files changed, 122 insertions, 0 deletions
diff --git a/home-manager/doretta.nix b/home-manager/doretta.nix
new file mode 100644
index 0000000..3096662
--- /dev/null
+++ b/home-manager/doretta.nix
@@ -0,0 +1,122 @@
+{ config, pkgs, ... }:
+# let
+# home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/release-23.05.tar.gz";
+# unstable = import <nixpkgs-unstable>{};
+# in
+{
+ imports = [
+ ../modules/home-manager/starship.nix
+ ../modules/home-manager/btop.nix
+ ../modules/home-manager/helix.nix
+ ../modules/home-manager/shell.nix
+ ../modules/home-manager/bat.nix
+ ../modules/home-manager/virt-manager.nix
+ ];
+
+ nixpkgs = {
+ # texlive.combined.scheme-medium;
+ # system = "x84_64-linux";
+ config.allowUnfree = true;
+ };
+
+ # home-manager.users.defin= {
+ home = {
+ # Home Manager needs a bit of information about you and the paths it should
+ # manage.
+ username = "defin";
+ homeDirectory = "/home/defin";
+
+ # 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 should not change this value, even if you update Home Manager. If you do
+ # want to update the value, then make sure to first check the Home Manager
+ # release notes.
+ stateVersion = "23.11"; # Please read the comment before changing.
+
+ # The home.packages option allows you to install Nix packages into your
+ # environment.
+ packages = with pkgs; [
+ # # It is sometimes useful to fine-tune packages, for example, by applying
+ # # overrides. You can do that directly here, just don't forget the
+ # # parentheses. Maybe you want to install Nerd Fonts with a limited number of
+ # # fonts?
+ # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
+ pass
+ btop # better top
+ starship
+ eza # better ls
+ zoxide # better cd
+ broot # tree view files
+ procs # process view
+ gnupg
+ #helix plugins
+ # vadimcn.vscode-lldb
+ # yaml-language-server
+ # typescript-language-server
+ # rust-analyzer
+ # solargraph
+ # clangd
+ # vscode-json-language-server
+ # lua-language-server
+ # marksman
+ ];
+
+ # Home Manager is pretty good at managing dotfiles. The primary way to manage
+ # plain files is through 'home.file'.
+ 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
+ # '';
+ };
+
+
+ # You can also manage environment variables but you will have to manually
+ # source
+ #
+ # ~/.nix-profile/etc/profile.d/hm-session-vars.sh
+ #
+ # or
+ #
+ # /etc/profiles/per-user/defin/etc/profile.d/hm-session-vars.sh
+ #
+ # if you don't want to manage your shell through Home Manager.
+ sessionVariables = {
+ EDITOR = "hx";
+ };
+ };
+
+ programs = {
+ ssh.matchBlocks = {
+ serverAliveCountMax = 6;
+ serverAliveInterval = 30;
+ port = 2200;
+ "git.wormcar.gay" = {
+ user = "devinf";
+ host = "git.wormcar.gay";
+ port = 2200;
+ };
+ };
+ git = {
+ enable = true;
+ userName = "Devin Finlinson";
+ userEmail = "devin.finlinson@pm.me";
+ includes = [{path = "~/.gitconfig.local";}];
+ extraConfig = {
+ core = {editor = "hx";};
+ pull = {rebase = false;};
+ };
+ };
+
+ # Let Home Manager install and manage itself.
+ # home-manager.enable = true;
+ };
+}