Move language files to top-level.

main
Joshua Potter 2023-11-22 11:14:10 -07:00
parent de4778e966
commit 47431e9eb8
10 changed files with 63 additions and 84 deletions

View File

@ -1,58 +1,48 @@
{ config, pkgs, lib, ... }:
{ pkgs, ... }:
{
options.home.extraPythonPackages = lib.mkOption {
type = lib.types.listOf lib.types.string;
example = ''
[ debugpy mccabe ]
'';
description = lib.mdDoc ''
Extra Python packages that should be linked to the topmost Python
interpreter.
'';
};
imports = [
./git.nix
./lang/bash.nix
./lang/c.nix
./lang/elixir.nix
./lang/lean.nix
./lang/lua.nix
./lang/nix.nix
./lang/python.nix
./lang/typescript.nix
./neovim
./wezterm
];
config = {
home = {
username = "jrpotter";
homeDirectory = "/home/jrpotter";
packages = with pkgs; [
anki-bin
bitwarden
elan
firefox
gnumake
mullvad-vpn
(python3.withPackages
(ps: builtins.map (s: ps.${s}) config.home.extraPythonPackages))
unzip
wezterm
zotero
];
};
programs = {
bash.enable = true;
direnv.enable = true;
git.enable = true;
home-manager.enable = true;
neovim.enable = true;
};
# 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 can update Home Manager without changing this value.
# See the Home Manager release notes for a list of state
# version changes in each release.
home.stateVersion = "23.05";
home = {
username = "jrpotter";
homeDirectory = "/home/jrpotter";
packages = with pkgs; [
anki-bin
bitwarden
firefox
mullvad-vpn
unzip
wezterm
zotero
];
};
programs = {
bash.enable = true;
direnv.enable = true;
git.enable = true;
home-manager.enable = true;
neovim.enable = true;
};
# 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 can update Home Manager without changing this value.
# See the Home Manager release notes for a list of state
# version changes in each release.
home.stateVersion = "23.05";
}

View File

@ -1,13 +1,17 @@
{ pkgs, ... }:
let
codelldb = pkgs.writeShellScriptBin "codelldb" ''
#!/usr/bin/env bash
exec ${pkgs.vscode-extensions.vadimcn.vscode-lldb}/share/vscode/extensions/vadimcn.vscode-lldb/adapter/codelldb "$@"
'';
in
{
home.packages = with pkgs; [
bear
clang
clang-tools
(writeShellScriptBin "codelldb" ''
#!/usr/bin/env bash
exec ${vscode-extensions.vadimcn.vscode-lldb}/share/vscode/extensions/vadimcn.vscode-lldb/adapter/codelldb "$@"
'')
codelldb
gnumake
];
programs.neovim = {

View File

@ -1,9 +1,9 @@
args @ { pkgs, ... }:
let
utils = import ../utils.nix args;
neovimUtils = import ../neovim/utils.nix args;
lean-nvim = {
plugin = utils.pluginGit
plugin = neovimUtils.pluginGit
"47ff75ce2fcc319fe7d8e031bc42a75473919b93"
"Julian/lean.nvim";
config = ''
@ -17,6 +17,10 @@ let
};
in
{
home.packages = with pkgs; [
elan
];
programs.neovim = {
plugins = [
lean-nvim

View File

@ -1,12 +1,14 @@
{ ... }:
{ pkgs, ... }:
{
home.extraPythonPackages = [
"debugpy"
"mccabe"
"pycodestyle"
"pyflakes"
"python-lsp-server"
"python-lsp-black"
home.packages = with pkgs; [
(python3.withPackages (ps: with ps; [
debugpy
mccabe
pycodestyle
pyflakes
python-lsp-server
python-lsp-black
]))
];
programs.neovim = {

View File

@ -68,27 +68,6 @@ in
};
};
# Notice that within our imports we use `home.packages` instead of
# `extraPackages`. The latter is preferable but comes with `$PATH`-related
# problems.
#
# Specifically, Home Manager appends paths specifed in `extraPackages` to the
# end of `$PATH` meaning any already defined instance of some package will be
# used instead. Prepending is not an option either since that would break
# environments like those produced by `direnv` or `nix-shell`.
#
# https://github.com/nix-community/home-manager/pull/1756
imports = [
./lang/bash.nix
./lang/c.nix
./lang/elixir.nix
./lang/lean.nix
./lang/lua.nix
./lang/nix.nix
./lang/python.nix
./lang/typescript.nix
];
config = {
programs.neovim = {
defaultEditor = true;