add in chanages to match existing helix config
This commit is contained in:
@@ -35,7 +35,9 @@ This repository contains a Nix flake configuration for setting up a development
|
|||||||
To use this configuration with Home Manager:
|
To use this configuration with Home Manager:
|
||||||
|
|
||||||
1. Make sure you have Nix installed
|
1. Make sure you have Nix installed
|
||||||
2. Run `home-manager switch` to apply the configuration
|
2.
|
||||||
|
a) Run `home-manager switch` to apply the configuration
|
||||||
|
b) Run with `nix run nixpkgs#home-manager -- switch --flake https://gitea.tylerbohrer.dev/tyler/my-default-nix-home`
|
||||||
|
|
||||||
The configuration will set up:
|
The configuration will set up:
|
||||||
- Default shell to zsh
|
- Default shell to zsh
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
description = "Home Manager configuration with tmux, helix, zsh, starship, alacritty, git, ssh for WSL, Linux, and Mac M1 with Docker and conditional language support";
|
description = "My Nix flake for cross-platform development environment";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
@@ -7,13 +7,12 @@
|
|||||||
url = "github:nix-community/home-manager/release-23.11";
|
url = "github:nix-community/home-manager/release-23.11";
|
||||||
};
|
};
|
||||||
flake-utils.url = "github:numtide/flake-utils";
|
flake-utils.url = "github:numtide/flake-utils";
|
||||||
tmux = {
|
my-repo = {
|
||||||
url = "github:jakehamilton/tmux";
|
url = "https://gitea.tylerbohrer.dev/tyler/my-default-nix-home";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, home-manager, flake-utils, tmux }:
|
outputs = { self, nixpkgs, home-manager, flake-utils, my-repo }:
|
||||||
flake-utils.lib.eachSystem [ "x86_64-linux" "aarch64-darwin" "x86_64-windows" ] (system: let
|
flake-utils.lib.eachSystem [ "x86_64-linux" "aarch64-darwin" "x86_64-windows" ] (system: let
|
||||||
pkgs = import nixpkgs {
|
pkgs = import nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
@@ -21,37 +20,14 @@
|
|||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
in {
|
homeConfig = import ./home-manager/home.nix {
|
||||||
# Development shell with all our tools
|
inherit pkgs;
|
||||||
devShells.default = pkgs.mkShell {
|
tmuxPackage = my-repo.packages.${system}.tmux;
|
||||||
buildInputs = with pkgs; [
|
|
||||||
tmux
|
|
||||||
helix
|
|
||||||
zsh
|
|
||||||
git
|
|
||||||
openssh
|
|
||||||
alacritty
|
|
||||||
starship
|
|
||||||
htop
|
|
||||||
docker-client
|
|
||||||
docker-compose
|
|
||||||
odin
|
|
||||||
ols
|
|
||||||
harper
|
|
||||||
gcc
|
|
||||||
gnumake
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
in {
|
||||||
# Home Manager configuration
|
packages.default = homeConfig;
|
||||||
homeConfigurations."tylerbohrer" = home-manager.lib.homeManagerConfiguration {
|
checks = {
|
||||||
inherit pkgs;
|
home-manager = homeConfig;
|
||||||
modules = [
|
|
||||||
(import ./home-manager/home.nix {
|
|
||||||
inherit pkgs;
|
|
||||||
tmuxPackage = tmux.packages.${system}.tmux;
|
|
||||||
})
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
+26
-6
@@ -236,18 +236,38 @@ in
|
|||||||
# Helix Configuration with Language Servers
|
# Helix Configuration with Language Servers
|
||||||
|
|
||||||
[editor]
|
[editor]
|
||||||
theme = "onedark"
|
theme="peachpuff"
|
||||||
|
|
||||||
|
[editor.file-picker]
|
||||||
|
hidden = true
|
||||||
|
|
||||||
|
[editor]
|
||||||
|
line-number = "relative"
|
||||||
|
|
||||||
|
[editor.cursor-shape]
|
||||||
|
insert = "bar"
|
||||||
|
normal = "block"
|
||||||
|
select = "underline"
|
||||||
|
|
||||||
[editor.lsp]
|
[editor.lsp]
|
||||||
enable = true
|
enable = true
|
||||||
auto-start = true
|
auto-start = true
|
||||||
|
|
||||||
# Default language servers (always active)
|
[language-server.harper-ls]
|
||||||
[[languages.odin]]
|
command = "harper-ls"
|
||||||
language-server = { name = "ols", command = "ols" }
|
args = ["--stdio"]
|
||||||
|
|
||||||
[[languages.harper]]
|
[language-server.harper-ls.config.harper-ls.linters]
|
||||||
language-server = { name = "harper", command = "harper-ls" }
|
SpellCheck = false
|
||||||
|
SentenceCapitalization = false
|
||||||
|
|
||||||
|
[language-server.ols]
|
||||||
|
command = "ols"
|
||||||
|
args = []
|
||||||
|
|
||||||
|
[[language]]
|
||||||
|
name = "odin"
|
||||||
|
language-servers = ["ols", "harper-ls"]
|
||||||
|
|
||||||
# Dynamically added language servers based on user selection
|
# Dynamically added language servers based on user selection
|
||||||
${builtins.concatStringsSep "\n" (generateLanguageServerConfig)}
|
${builtins.concatStringsSep "\n" (generateLanguageServerConfig)}
|
||||||
|
|||||||
Reference in New Issue
Block a user