From ca45821041639d0c8cadbdf936b0b4759349f169 Mon Sep 17 00:00:00 2001 From: panotaka Date: Sat, 25 Nov 2023 00:23:05 -0400 Subject: [PATCH] Rename programs folder to desktop --- home/{programs => desktop}/browsers.nix | 6 +- home/desktop/common.nix | 7 ++ home/{programs => desktop}/default.nix | 5 +- home/desktop/vscode.nix | 16 +++ home/programs/common.nix | 86 ---------------- home/programs/git.nix | 12 --- home/programs/media.nix | 32 ------ home/programs/vscode.nix | 125 ------------------------ home/programs/xdg.nix | 49 ---------- 9 files changed, 26 insertions(+), 312 deletions(-) rename home/{programs => desktop}/browsers.nix (64%) create mode 100644 home/desktop/common.nix rename home/{programs => desktop}/default.nix (69%) create mode 100644 home/desktop/vscode.nix delete mode 100644 home/programs/common.nix delete mode 100644 home/programs/git.nix delete mode 100644 home/programs/media.nix delete mode 100644 home/programs/vscode.nix delete mode 100644 home/programs/xdg.nix diff --git a/home/programs/browsers.nix b/home/desktop/browsers.nix similarity index 64% rename from home/programs/browsers.nix rename to home/desktop/browsers.nix index a2fd0f6..517b8a5 100644 --- a/home/programs/browsers.nix +++ b/home/desktop/browsers.nix @@ -5,15 +5,13 @@ programs = { chromium = { enable = true; + package = pkgs.ungoogled-chromium; commandLineArgs = [ "--enable-features=TouchpadOverscrollHistoryNavigation" ]; - extensions = [ - # {id = "";} // extension id, query from chrome web store - ]; }; firefox = { enable = true; - profiles.ryan = { }; + profiles.panotaka = { }; }; }; } diff --git a/home/desktop/common.nix b/home/desktop/common.nix new file mode 100644 index 0000000..27c69a3 --- /dev/null +++ b/home/desktop/common.nix @@ -0,0 +1,7 @@ +{ pkgs, ... }: { + home.packages = with pkgs; [ + # Work-specific programs + teams-for-linux + + ]; +} diff --git a/home/programs/default.nix b/home/desktop/default.nix similarity index 69% rename from home/programs/default.nix rename to home/desktop/default.nix index fae9a82..686cf30 100644 --- a/home/programs/default.nix +++ b/home/desktop/default.nix @@ -3,11 +3,8 @@ , ... }: { imports = [ - ./browsers.nix ./common.nix - ./git.nix - ./media.nix + ./browsers.nix ./vscode.nix - ./xdg.nix ]; } diff --git a/home/desktop/vscode.nix b/home/desktop/vscode.nix new file mode 100644 index 0000000..6330267 --- /dev/null +++ b/home/desktop/vscode.nix @@ -0,0 +1,16 @@ +{ config +, pkgs +, home-manager +, ... +}: + +{ + home.sessionVariables.NIXOS_OZONE_WL = "1"; + programs.vscode = { + enable = true; + package = pkgs.vscodium.fhs; + extensions = with pkgs.vscode-extensions; [ + github.copilot + ]; + }; +} diff --git a/home/programs/common.nix b/home/programs/common.nix deleted file mode 100644 index 80ee180..0000000 --- a/home/programs/common.nix +++ /dev/null @@ -1,86 +0,0 @@ -{ pkgs, ... }: { - home.packages = with pkgs; [ - # archives - zip - unzip - p7zip - - # utils - ripgrep - yq-go # https://github.com/mikefarah/yq - htop - - # misc - libnotify - wineWowPackages.wayland - xdg-utils - graphviz - - # productivity - obsidian - - # IDE - insomnia - - # cloud native - docker-compose - kubectl - - - nodejs - nodePackages.npm - nodePackages.pnpm - yarn - - # db related - dbeaver - mycli - pgcli - ]; - - programs = { - tmux = { - enable = true; - clock24 = true; - keyMode = "vi"; - extraConfig = "mouse on"; - }; - - bat = { - enable = true; - config = { - pager = "less -FR"; - theme = "Catppuccin-mocha"; - }; - themes = { - Catppuccin-mocha = builtins.readFile (pkgs.fetchurl { - url = "https://raw.githubusercontent.com/catppuccin/bat/main/Catppuccin-mocha.tmTheme"; - hash = "sha256-qMQNJGZImmjrqzy7IiEkY5IhvPAMZpq0W6skLLsng/w="; - }); - }; - }; - - btop.enable = true; # replacement of htop/nmon - exa.enable = true; # A modern replacement for ‘ls’ - jq.enable = true; # A lightweight and flexible command-line JSON processor - ssh.enable = true; - aria2.enable = true; - - skim = { - enable = true; - enableZshIntegration = true; - defaultCommand = "rg --files --hidden"; - changeDirWidgetOptions = [ - "--preview 'exa --icons --git --color always -T -L 3 {} | head -200'" - "--exact" - ]; - }; - }; - - services = { - syncthing.enable = true; - - # auto mount usb drives - udiskie.enable = true; - }; -} diff --git a/home/programs/git.nix b/home/programs/git.nix deleted file mode 100644 index 66cb9d4..0000000 --- a/home/programs/git.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ pkgs -, ... -}: { - home.packages = [ pkgs.gh ]; - - programs.git = { - enable = true; - - userName = "Ryan Yin"; - userEmail = "xiaoyin_c@qq.com"; - }; -} diff --git a/home/programs/media.nix b/home/programs/media.nix deleted file mode 100644 index 5cd2140..0000000 --- a/home/programs/media.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ pkgs -, config -, ... -}: -# media - control and enjoy audio/video -{ - # imports = [ - # ]; - - home.packages = with pkgs; [ - # audio control - pavucontrol - playerctl - pulsemixer - # images - imv - ]; - - programs = { - mpv = { - enable = true; - defaultProfiles = [ "gpu-hq" ]; - scripts = [ pkgs.mpvScripts.mpris ]; - }; - - obs-studio.enable = true; - }; - - services = { - playerctld.enable = true; - }; -} diff --git a/home/programs/vscode.nix b/home/programs/vscode.nix deleted file mode 100644 index 80529d8..0000000 --- a/home/programs/vscode.nix +++ /dev/null @@ -1,125 +0,0 @@ -{ config -, pkgs -, home-manager -, nix-vscode-extensions -, ... -}: - -{ - - # if use vscode in wayland, uncomment this line - # environment.sessionVariables.NIXOS_OZONE_WL = "1"; - programs.vscode = { - enable = true; - userSettings = { - "editor.renderWhitespace" = "all"; - "files.autoSave" = "onFocusChange"; - "editor.rulers" = [ 80 120 ]; - "telemetry.enableTelemetry" = false; - "telemetry.enableCrashReporter" = false; - "editor.tabSize" = 2; - "files.exclude" = { "**/node_modules/**" = true; }; - "editor.formatOnSave" = false; - "breadcrumbs.enabled" = true; - "editor.useTabStops" = false; - "editor.fontFamily" = "JetBrainsMono Nerd Font"; - "editor.fontSize" = 16; - "editor.fontLigatures" = true; - "editor.lineHeight" = 20; - "workbench.fontAliasing" = "antialiased"; - "files.trimTrailingWhitespace" = true; - "editor.minimap.enabled" = false; - "workbench.editor.enablePreview" = false; - "terminal.integrated.fontFamily" = "JetBrainsMono Nerd Font"; - }; - - package = - let - config.packageOverrides = pkgs: { - vscode = pkgs.vscode-with-extensions.override { - # pkgs.vscode-extensions 里包含的 vscode 太少了 - # 必须使用社区的 才能安装更多插件 - vscodeExtensions = with nix-vscode-extensions.extensions; [ - aaron-bond.better-comments - anweber.vscode-httpyac - arrterian.nix-env-selector - bierner.markdown-mermaid - christian-kohler.path-intellisense - cschlosser.doxdocgen - DanishSarwar.reverse-search - eamodio.gitlens - esbenp.prettier-vscode - espressif.esp-idf-extension - fabiospampinato.vscode-diff - GitHub.copilot - golang.go - hashicorp.terraform - janisdd.vscode-edit-csv - jebbs.plantuml - jeff-hykin.better-cpp-syntax - jnoortheen.nix-ide - JuanBlanco.solidity - k--kato.intellij-idea-keybindings - llvm-vs-code-extensions.vscode-clangd - mcu-debug.debug-tracker-vscode - mcu-debug.memory-view - mcu-debug.rtos-views - mikestead.dotenv - mkhl.direnv - ms-azuretools.vscode-docker - ms-dotnettools.vscode-dotnet-runtime - ms-kubernetes-tools.vscode-kubernetes-tools - ms-python.isort - ms-python.python - ms-python.vscode-pylance - ms-toolsai.jupyter - ms-toolsai.jupyter-keymap - ms-toolsai.jupyter-renderers - ms-toolsai.vscode-jupyter-cell-tags - ms-toolsai.vscode-jupyter-slideshow - ms-vscode-remote.remote-containers - ms-vscode-remote.remote-ssh - ms-vscode-remote.remote-ssh-edit - ms-vscode-remote.vscode-remote-extensionpack - ms-vscode.cmake-tools - ms-vscode.cpptools - ms-vscode.cpptools-extension-pack - ms-vscode.cpptools-themes - ms-vscode.remote-explorer - ms-vscode.remote-server - pinage404.nix-extension-pack - platformio.platformio-ide - pomdtr.excalidraw-editor - redhat.java - redhat.vscode-commons - redhat.vscode-xml - redhat.vscode-yaml - rust-lang.rust-analyzer - shd101wyy.markdown-preview-enhanced - sumneko.lua - tamasfe.even-better-toml - timonwong.shellcheck - tintinweb.graphviz-interactive-preview - tintinweb.solidity-visual-auditor - tintinweb.vscode-inline-bookmarks - tintinweb.vscode-solidity-flattener - tintinweb.vscode-solidity-language - twxs.cmake - vadimcn.vscode-lldb - VisualStudioExptTeam.intellicode-api-usage-examples - VisualStudioExptTeam.vscodeintellicode - vscjava.vscode-java-debug - vscjava.vscode-java-pack - vscjava.vscode-java-test - vscjava.vscode-maven - vscode-icons-team.vscode-icons - WakaTime.vscode-wakatime - yzhang.markdown-all-in-one - zxh404.vscode-proto3 - ]; - }; - }; - in - pkgs.vscode; - }; -} diff --git a/home/programs/xdg.nix b/home/programs/xdg.nix deleted file mode 100644 index d5851b1..0000000 --- a/home/programs/xdg.nix +++ /dev/null @@ -1,49 +0,0 @@ -{ config, ... }: -let - browser = [ "firefox.desktop" ]; - - # XDG MIME types - associations = { - "application/x-extension-htm" = browser; - "application/x-extension-html" = browser; - "application/x-extension-shtml" = browser; - "application/x-extension-xht" = browser; - "application/x-extension-xhtml" = browser; - "application/xhtml+xml" = browser; - "text/html" = browser; - "x-scheme-handler/about" = browser; - "x-scheme-handler/chrome" = [ "chromium-browser.desktop" ]; - "x-scheme-handler/ftp" = browser; - "x-scheme-handler/http" = browser; - "x-scheme-handler/https" = browser; - "x-scheme-handler/unknown" = browser; - - "audio/*" = [ "mpv.desktop" ]; - "video/*" = [ "mpv.dekstop" ]; - "image/*" = [ "imv.desktop" ]; - "application/json" = browser; - "application/pdf" = [ "org.pwmt.zathura.desktop.desktop" ]; - "x-scheme-handler/discord" = [ "discordcanary.desktop" ]; - "x-scheme-handler/spotify" = [ "spotify.desktop" ]; - "x-scheme-handler/tg" = [ "telegramdesktop.desktop" ]; - }; -in -{ - xdg = { - enable = true; - cacheHome = config.home.homeDirectory + "/.local/cache"; - - mimeApps = { - enable = true; - defaultApplications = associations; - }; - - userDirs = { - enable = true; - createDirectories = true; - extraConfig = { - XDG_SCREENSHOTS_DIR = "${config.xdg.userDirs.pictures}/Screenshots"; - }; - }; - }; -}