fix: package collisions

This commit is contained in:
Ryan Yin
2023-12-06 10:44:45 +08:00
parent 1ca7607814
commit b0e481a1f1
7 changed files with 148 additions and 153 deletions
+5 -4
View File
@@ -16,8 +16,9 @@
# aliyun # aliyun
aliyun-cli aliyun-cli
]; ] ++ (if pkgs.stdenv.isLinux then [
# cloud tools that nix do not have cache for.
programs = { terraform
}; terraformer # generate terraform configs from existing cloud resources
] else []);
} }
+32 -19
View File
@@ -8,33 +8,28 @@
# Basic settings for development environment # Basic settings for development environment
# #
# Please avoid to install language specific packages here(globally), # Please avoid to install language specific packages here(globally),
# instead, install them independently using dev-templates: # instead, install them:
# https://github.com/the-nix-way/dev-templates # 1. per IDE, such as `programs.neovim.extraPackages`
# 2. per-project, using https://github.com/the-nix-way/dev-templates
# #
############################################################# #############################################################
home.packages = with pkgs; [ home.packages = with pkgs; [
pkgs-unstable.devbox (python311.withPackages (
ps:
# DO NOT install build tools for C/C++ and others, set it per project by devShell instead
gnumake # used by this repo, to simplify the deployment
jdk17 # used to run some java based tools(.jar)
gradle
maven
spring-boot-cli
# scheme related
guile
# python
(python311.withPackages (ps:
with ps; [ with ps; [
ipython ipython
pandas pandas
requests requests
pyquery pyquery
pyyaml pyyaml
])) ]
))
cargo # rust package manager
go
jdk17
guile # scheme language
# db related # db related
dbeaver dbeaver
@@ -46,11 +41,29 @@
# embedded development # embedded development
minicom minicom
# other tools # misc
pkgs-unstable.devbox
glow # markdown previewer
fzf
gdu # disk usage analyzer, required by AstroNvim
ripgrep # fast search tool, required by AstroNvim's '<leader>fw'(<leader> is space key)
bfg-repo-cleaner # remove large files from git history bfg-repo-cleaner # remove large files from git history
k6 # load testing tool k6 # load testing tool
protobuf # protocol buffer compiler protobuf # protocol buffer compiler
]; ] ++ (if pkgs.stdenv.isLinux then [
# Automatically trims your branches whose tracking remote refs are merged or gone
# It's really useful when you work on a project for a long time.
git-trim
# need to run `conda-install` before using it
# need to run `conda-shell` before using command `conda`
# conda is not available for MacOS
conda
mitmproxy # http/https proxy tool
insomnia # REST client
wireshark # network analyzer
] else []);
programs = { programs = {
direnv = { direnv = {
+16 -10
View File
@@ -34,16 +34,9 @@
withPython3 = true; withPython3 = true;
withNodeJs = true; withNodeJs = true;
extraPackages = with pkgs; [];
# currently we use lazy.nvim as neovim's package manager, so comment this one. # Extra packages only available to nvim(won't pollute the global home environment)
# plugins = with pkgs.vimPlugins; [ extraPackages = with pkgs;
# # search all the plugins using https://search.nixos.org/packages
# ];
};
};
home = {
packages = with pkgs;
[ [
#-- c/c++ #-- c/c++
cmake cmake
@@ -53,7 +46,7 @@
gcc # c/c++ compiler, required by nvim-treesitter! gcc # c/c++ compiler, required by nvim-treesitter!
llvmPackages.clang-unwrapped # c/c++ tools with clang-tools such as clangd llvmPackages.clang-unwrapped # c/c++ tools with clang-tools such as clangd
gdb gdb
# lldb # TODO - fix python3.11's package conflict - six.py lldb
#-- python #-- python
nodePackages.pyright # python language server nodePackages.pyright # python language server
@@ -85,6 +78,12 @@
gopls # go language server gopls # go language server
delve # go debugger delve # go debugger
# -- java
jdk17
gradle
maven
spring-boot-cli
#-- lua #-- lua
stylua stylua
lua-language-server lua-language-server
@@ -116,6 +115,7 @@
actionlint # GitHub Actions linter actionlint # GitHub Actions linter
buf # protoc plugin for linting and formatting buf # protoc plugin for linting and formatting
proselint # English prose linter proselint # English prose linter
guile # scheme language
#-- Misc #-- Misc
tree-sitter # common language parser/highlighter tree-sitter # common language parser/highlighter
@@ -136,5 +136,11 @@
verible verible
] ]
); );
# currently we use lazy.nvim as neovim's package manager, so comment this one.
# plugins = with pkgs.vimPlugins; [
# # search all the plugins using https://search.nixos.org/packages
# ];
};
}; };
} }
-13
View File
@@ -1,14 +1,6 @@
{pkgs, ...}: { {pkgs, ...}: {
# Linux Only Packages, not available on Darwin # Linux Only Packages, not available on Darwin
home.packages = with pkgs; [ home.packages = with pkgs; [
# Automatically trims your branches whose tracking remote refs are merged or gone
# It's really useful when you work on a project for a long time.
git-trim
# cloud tools that nix do not have cache for.
terraform
terraformer # generate terraform configs from existing cloud resources
nmon nmon
iotop iotop
iftop iftop
@@ -17,11 +9,6 @@
libnotify libnotify
wireguard-tools # manage wireguard vpn manually, via wg-quick wireguard-tools # manage wireguard vpn manually, via wg-quick
# need to run `conda-install` before using it
# need to run `conda-shell` before using command `conda`
# conda is not available for MacOS
conda
# system call monitoring # system call monitoring
strace # system call monitoring strace # system call monitoring
ltrace # library call monitoring ltrace # library call monitoring
-4
View File
@@ -11,9 +11,6 @@
home.packages = with pkgs; [ home.packages = with pkgs; [
# GUI apps # GUI apps
insomnia # REST client
wireshark # network analyzer
# e-book viewer(.epub/.mobi/...) # e-book viewer(.epub/.mobi/...)
# do not support .pdf # do not support .pdf
foliate foliate
@@ -29,7 +26,6 @@
# misc # misc
flameshot flameshot
mitmproxy # http/https proxy tool
ventoy # multi-boot usb creator ventoy # multi-boot usb creator
]; ];
+1 -1
View File
@@ -34,6 +34,7 @@
]; ];
# Homebrew Mirror # Homebrew Mirror
# NOTE: is only useful when you run `brew install` manually! (not via nix-darwin)
environment.variables = { environment.variables = {
HOMEBREW_API_DOMAIN = "https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/api"; HOMEBREW_API_DOMAIN = "https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/api";
HOMEBREW_BOTTLE_DOMAIN = "https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles"; HOMEBREW_BOTTLE_DOMAIN = "https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles";
@@ -136,7 +137,6 @@
# Development # Development
"insomnia" # REST client "insomnia" # REST client
"wireshark" # network analyzer "wireshark" # network analyzer
"temurin17" # JDK 17
"jdk-mission-control" # Java Mission Control "jdk-mission-control" # Java Mission Control
"google-cloud-sdk" # Google Cloud SDK "google-cloud-sdk" # Google Cloud SDK
]; ];
+2 -10
View File
@@ -31,16 +31,8 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
parted parted
ventoy ventoy
# python, some times I may need to use python with root permission. gnumake
(python310.withPackages (ps:
with ps; [
ipython
pandas
requests
pyquery
pyyaml
]
))
psmisc # killall/pstree/prtstat/fuser/... psmisc # killall/pstree/prtstat/fuser/...
colmena # nixos's remote deployment tool colmena # nixos's remote deployment tool
pulseaudio # provides `pactl`, which is required by some apps(e.g. sonic-pi) pulseaudio # provides `pactl`, which is required by some apps(e.g. sonic-pi)