about summary refs log tree commit diff
path: root/home
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2024-03-04 15:02:31 -0800
committerFranck Cuny <franck@fcuny.net>2024-03-04 15:02:31 -0800
commite2f467882f9fd67805b69e5dff6c1652d4c47629 (patch)
tree500206b90fe6d81b44a8a9cbe78d2fe5becafd1b /home
parentcreate profiles for home-manager (diff)
downloadworld-e2f467882f9fd67805b69e5dff6c1652d4c47629.tar.gz
move all home-manager settings under the profiles
Diffstat (limited to 'home')
-rw-r--r--home/dev.nix167
-rw-r--r--home/firefox.nix95
-rw-r--r--home/git.nix80
-rw-r--r--home/ssh.nix21
-rw-r--r--home/zsh.nix46
5 files changed, 0 insertions, 409 deletions
diff --git a/home/dev.nix b/home/dev.nix
deleted file mode 100644
index e0ca68b..0000000
--- a/home/dev.nix
+++ /dev/null
@@ -1,167 +0,0 @@
-{ pkgs
-, config
-, ...
-}:
-let
-  pythonEnv = pkgs.python3.withPackages (p:
-    with p; [
-      black
-      click
-      isort
-      pylsp-mypy
-      requests
-      types-requests
-      pip
-      ipython
-      virtualenv
-    ]);
-in
-{
-  programs.go = {
-    enable = true;
-    goPath = ".local/share/pkg.go";
-    goBin = ".local/bin.go";
-    package = pkgs.go_1_21;
-  };
-
-  home.packages = with pkgs; [
-    go-tools
-    golangci-lint
-    gopls
-
-    dive # explore layers in docker images
-
-    pythonEnv
-
-    kubectl
-
-    google-cloud-sdk
-
-    rnix-lsp
-    alejandra
-    nil
-  ];
-
-  home.sessionPath = [
-    config.home.sessionVariables.GOBIN
-  ];
-
-  programs.zsh.shellAliases = {
-    kc = "kubectl";
-  };
-
-  programs.vscode = {
-    enable = true;
-
-    # Workaround https://github.com/nix-community/home-manager/issues/3507
-    mutableExtensionsDir = false;
-
-    extensions = with pkgs.vscode-extensions; [
-      #go
-      golang.go
-
-      # nix
-      arrterian.nix-env-selector
-      bbenoist.nix
-      jnoortheen.nix-ide
-
-      # python
-      ms-python.python
-      ms-python.vscode-pylance
-      ms-python.black-formatter
-
-      # shell
-      mads-hartmann.bash-ide-vscode
-
-      # utils
-      ms-vscode.makefile-tools # Makefile support
-      mkhl.direnv # direnv
-      editorconfig.editorconfig # editor config for vscode
-      tamasfe.even-better-toml # better TOML mode
-      streetsidesoftware.code-spell-checker # code spell checker
-      github.vscode-github-actions # GHA
-    ];
-    userSettings = {
-      # editor
-      editor.fontSize = 15;
-      "editor.formatOnSave" = true;
-      "editor.minimap.enabled" = false;
-      "editor.fontFamily" = "Monaspace Neon";
-      "editor.fontLigatures" = true;
-      "editor.rulers" = [ 80 120 ];
-      "editor.folding" = false;
-      "editor.foldingHighlight" = false;
-
-      # explorer
-      "explorer.sortOrder" = "default";
-      "explorer.autoRevealExcludes" = {
-        "**/result" = true;
-      };
-
-      # extensions
-      "extensions.ignoreRecommendations" = true;
-      "extensions.autoCheckUpdates" = false;
-      "extensions.autoUpdate" = false;
-
-      # files
-      "files.trimFinalNewLines" = true;
-      "files.insertFinalNewLine" = true;
-      "files.autoSave" = "afterDelay";
-      "files.autoSaveDelay" = 100; # in milliseconds
-      "files.exclude" = {
-        "**/.direnv" = true;
-        "**/result" = true;
-      };
-
-      # formatter
-      formatter = {
-        "[python]"."editor.defaultFormatter" = "ms-python.black-formatter";
-      };
-
-      # workbench
-      workbench.colorTheme = "Default Light Modern";
-      workbench.sideBar.location = "right";
-
-      # telemetry
-      "telemetry.telemetryLevel" = "off";
-
-      # terminal
-      "terminal.integrated.fontFamily" = "Monaspace Xenon";
-      "terminal.integrated.fontSize" = 13;
-
-      # go
-      "go.lintTool" = "golangci-lint";
-      "go.toolsManagemenent.checkForUpdates" = "off";
-      "go.toolsManagemenent.autoUpdate" = false;
-      "gopls" = {
-        "format.gofumpt" = true;
-        "ui.semanticTokens" = true;
-      };
-
-      # shell
-      bash = {
-        "bashIde.shellcheckPath" = "${pkgs.shellcheck}/bin/shellcheck";
-        "shfmt.executablePath" = "${pkgs.shfmt}/bin/shfmt";
-      };
-
-      # nix
-      "nix.serverPath" = "nil";
-      "nix.serverSettings" = {
-        "nil" = {
-          "formatting" = {
-            "command" = [ "nixpkgs-fmt" ];
-          };
-        };
-      };
-      "nix.enableLanguageServer" = true;
-    };
-  };
-
-  home.sessionVariables = with config.xdg; {
-    IPYTHONDIR = "${cacheHome}/ipython";
-    PIP_LOG = "${cacheHome}/pip/pip.log";
-    PYLINTHOME = "${cacheHome}/pylint";
-    PYTHON_EGG_CACHE = "${cacheHome}/python-eggs";
-    MYPY_CACHE_DIR = "${cacheHome}/mypy";
-  };
-}
diff --git a/home/firefox.nix b/home/firefox.nix
deleted file mode 100644
index a982a2e..0000000
--- a/home/firefox.nix
+++ /dev/null
@@ -1,95 +0,0 @@
-{ pkgs, ... }: {
-  programs.firefox = {
-    enable = true;
-    package = pkgs.firefox-bin;
-    profiles.default = {
-      isDefault = true;
-      extensions = with pkgs.nur.repos.rycee.firefox-addons; [
-        ublock-origin
-        onepassword-password-manager
-      ];
-      bookmarks = [
-        {
-          name = "GitHub Notifications";
-          keyword = "n";
-          url = "https://github.com/notifications?query=is%3Aunread";
-        }
-        {
-          name = "GitHub Pull Requests";
-          keyword = "p";
-          url = "https://github.com/pulls";
-        }
-      ];
-      search = {
-        default = "DuckDuckGo";
-        engines = {
-          "Nix Packages" = {
-            urls = [
-              {
-                template = "https://search.nixos.org/packages";
-                params = [
-                  {
-                    name = "type";
-                    value = "packages";
-                  }
-                  {
-                    name = "query";
-                    value = "{searchTerms}";
-                  }
-                ];
-              }
-            ];
-            icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
-            definedAliases = [ "np" ];
-          };
-          "Google".metaData.hidden = true;
-          "Amazon.com".metaData.hidden = true;
-          "Bing".metaData.hidden = true;
-          "eBay".metaData.hidden = true;
-          "Wikipedia (en)".metaData.alias = "w";
-        };
-        force = true;
-      };
-      settings = {
-        "app.update.auto" = false;
-        "app.shield.optoutstudies.enabled" = false;
-
-        "browser.bookmarks.restore_default_bookmarks" = false;
-        "browser.bookmarks.showMobileBookmarks" = false;
-        "browser.compactmode.show" = true;
-        "browser.urlbar.placeholderName" = "search";
-        "browser.shell.checkDefaultBrowser" = false;
-        "browser.contentblocking.category" = "strict";
-        "browser.startup.page" = 3; # Restore previous windows and tabs on startup.
-        "browser.warnOnQuit" = false;
-        "browser.formfill.enable" = false;
-        "browser.newtabpage.enabled" = false; # Make new tabs blank
-        "browser.newtabpage.activity-stream.feeds.section.topstories" = false;
-        "browser.newtabpage.activity-stream.feeds.telemetry" = false;
-        "browser.newtabpage.activity-stream.feeds.topsites" = false;
-        "browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts.havePinned" = "duckduckgo";
-        "browser.newtabpage.activity-stream.showSponsored" = false;
-        "browser.newtabpage.activity-stream.telemetry" = false;
-        "browser.urlbar.suggest.quicksuggest.nonsponsored" = false;
-        "browser.urlbar.suggest.quicksuggest.sponsored" = false;
-
-        "dom.forms.autocomplete.formautofill" = false; # Disable autofill
-
-        "extensions.formautofill.addresses.enabled" = false;
-        "extensions.formautofill.creditCards.enabled" = false; # Disable credit cards
-        "extensions.htmlaboutaddons.inline-options.enabled" = false;
-        "extensions.htmlaboutaddons.recommendations.enabled" = false;
-        "extensions.pocket.enabled" = false;
-        "extensions.pocket.showHome" = false;
-
-        # Disable Sponsored Top Sites
-        "services.sync.prefs.sync.browser.newtabpage.activity-stream.showSponsoredTopSite" = false;
-
-        "network.http.referer.spoofSource" = true;
-
-        "privacy.donottrackheader.value" = 1;
-        "privacy.donottrackheader.enabled" = true;
-      };
-    };
-  };
-}
diff --git a/home/git.nix b/home/git.nix
deleted file mode 100644
index 4fbbbb9..0000000
--- a/home/git.nix
+++ /dev/null
@@ -1,80 +0,0 @@
-{ lib, pkgs, config, ... }:
-let
-  sshPub = builtins.fromTOML (
-    builtins.readFile ../configs/ssh-pubkeys.toml
-  );
-in
-{
-  home.file.".ssh/allowed_signers".text = lib.concatMapStrings (x: "franck@fcuny.net ${x}\n") (with sshPub; [ aptos work git ykey-laptop op ]);
-
-  programs.git = {
-    enable = true;
-    userName = "Franck Cuny";
-    userEmail = "franck@fcuny.net";
-
-    signing = {
-      key = "key::${sshPub.op}";
-      signByDefault = true;
-    };
-
-    aliases = {
-      amend = "commit --amend";
-      ll = "log --pretty=\"format:%h %G? %aN  %s\"";
-    };
-
-    extraConfig = {
-      core.whitespace = "trailing-space,space-before-tab";
-      color.ui = "true";
-
-      gpg.format = "ssh";
-      gpg.ssh.allowedSignersFile = "~/.ssh/allowed_signers";
-      gpg.ssh.program = "/Applications/1Password.app/Contents/MacOS/op-ssh-sign";
-
-      # abort if the remote branch does not match the local one
-      push.default = "simple";
-
-      # https://adamj.eu/tech/2024/01/18/git-improve-diff-histogram/
-      diff.algorithm = "histogram";
-
-      init.defaultBranch = "main";
-
-      pull.rebase = true;
-      rebase = {
-        # Automatically create a temporary stash entry before the
-        # operation begins, and apply it after the operation ends.
-        autoStash = true;
-        # Print a warning if some commits are removed
-        missingCommitsCheck = "warn";
-      };
-
-      branch.autosetuprebase = "remote";
-      branch.sort = "authordate";
-
-      commit.template = "${config.xdg.dataHome}/git/commit.template";
-    };
-
-    ignores = [
-      "*~"
-      ".direnv"
-      "__pycache__"
-    ];
-  };
-
-  xdg.dataFile."git/commit.template".source = pkgs.writeText "commit.template" ''
-
-    # (If applied, this commit will...) <subject>
-
-    # Explain why this change is being made
-
-    # --- COMMIT END ---
-    # Remember to
-    #    Use the imperative mood, present tense: `change' not `changed' nor `changes'
-    #    Do not end the subject line with a period
-    #    Use the body to explain what and why vs. how
-    #    Can use multiple lines with "-" for bullet points in body
-'';
-
-  home.packages = with pkgs; [
-    gitAndTools.pre-commit
-  ];
-}
diff --git a/home/ssh.nix b/home/ssh.nix
deleted file mode 100644
index 47aee8a..0000000
--- a/home/ssh.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ ... }:
-{
-  programs.ssh = {
-    enable = true;
-    forwardAgent = true;
-    serverAliveInterval = 60;
-    controlMaster = "auto";
-    controlPersist = "30m";
-    extraConfig = ''
-      IdentityAgent "~/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock"
-    '';
-    matchBlocks = {
-      "github.com" = {
-        hostname = "github.com";
-        user = "git";
-        forwardAgent = false;
-        extraOptions = { preferredAuthentications = "publickey"; };
-      };
-    };
-  };
-}
diff --git a/home/zsh.nix b/home/zsh.nix
deleted file mode 100644
index e704870..0000000
--- a/home/zsh.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ config, pkgs, ... }:
-{
-  home.packages = with pkgs; [ zsh-completions ];
-
-  programs.zsh = {
-    enable = true;
-    dotDir = ".config/zsh";
-
-    defaultKeymap = "emacs";
-    enableCompletion = true;
-    enableAutosuggestions = true;
-
-    history = {
-      size = 500000;
-      save = 500000;
-      extended = true;
-      ignoreSpace = true;
-      ignoreDups = true;
-      share = true;
-      # see
-      # https://github.com/nix-community/home-manager/blob/32a7da69dc53c9eb5ad0675eb7fdc58f7fe35272/modules/programs/zsh.nix#L537
-      path = "${config.xdg.dataHome}/zsh/zsh_history";
-    };
-
-    localVariables = {
-      # Print timing statistics for everything which takes longer than
-      # 5 seconds of user + system time.
-      REPORTTIME = 5;
-    };
-
-    shellAliases = {
-      ll = "ls -l --color=auto";
-      lt = "ls -ltrh --color=auto";
-      la = "ls -ltrha --color=auto";
-      pkgsearch = "nix search nixpkgs";
-      flup = "nix flake update --commit-lock-file";
-      emacsrescue = "pkill -SIGUSR2 -i emacs"; # then `M-x toggle-debug-on-quit`
-    };
-
-    oh-my-zsh = {
-      enable = true;
-      plugins = [ "git" ];
-      theme = "robbyrussell";
-    };
-  };
-}