Compare commits

...

4 Commits

Author SHA1 Message Date
Noah Masur
9d7c6b3215
remember to enable services 2025-03-08 08:57:01 -05:00
Noah Masur
50a1be634c
add more presets to power-user 2025-03-08 08:53:56 -05:00
Noah Masur
bcf1737858 disable fun stuff in base config 2025-03-08 13:38:40 +00:00
Noah Masur
c36ca39a0d get more working on flame 2025-03-08 13:30:47 +00:00
14 changed files with 42 additions and 28 deletions

View File

@ -17,7 +17,6 @@ rec {
base.enable = true; base.enable = true;
server.enable = true; server.enable = true;
communications.enable = true; communications.enable = true;
power-user.enable = true;
}; };
home-manager.users."noah" = { home-manager.users."noah" = {

View File

@ -40,9 +40,6 @@ in
description = "Evaluate a bash-like environment variables file"; description = "Evaluate a bash-like environment variables file";
body = ''set -gx (cat $argv | tr "=" " " | string split ' ')''; body = ''set -gx (cat $argv | tr "=" " " | string split ' ')'';
}; };
fish_user_key_bindings = {
body = builtins.readFile ./functions/fish_user_key_bindings.fish;
};
ip = { ip = {
body = lib.getExe pkgs.nmasur.ip-check; body = lib.getExe pkgs.nmasur.ip-check;
}; };

View File

@ -51,11 +51,11 @@ in
}; };
recent = { recent = {
description = "Open a recent file in Vim"; description = "Open a recent file in Vim";
body = builtins.readFile ./edit/recent.fish; body = builtins.readFile ./fish/recent.fish;
}; };
search-and-edit = { search-and-edit = {
description = "Search and open the relevant file in Vim"; description = "Search and open the relevant file in Vim";
body = builtins.readFile ./edit/search-and-edit.fish; body = builtins.readFile ./fish/search-and-edit.fish;
}; };
}; };
shellAbbrs = { shellAbbrs = {

View File

@ -16,10 +16,12 @@ in
name = lib.mkOption { name = lib.mkOption {
type = lib.types.str; type = lib.types.str;
description = "Name to use for git commits"; description = "Name to use for git commits";
default = config.nmasur.settings.fullName;
}; };
email = lib.mkOption { email = lib.mkOption {
type = lib.types.str; type = lib.types.str;
description = "Email to use for git commits"; description = "Email to use for git commits";
default = "7386960+nmasur@users.noreply.github.com";
}; };
}; };

View File

@ -28,12 +28,13 @@ in
home.packages = [ cfg.package ]; home.packages = [ cfg.package ];
nmasur.presets.programs.neovim.package = lib.mkDefault pkgs.nmasur-neovim.override { #nmasur.presets.programs.neovim.package = lib.mkDefault pkgs.nmasur-neovim.override {
colors = cfg.colors; # colors = cfg.colors;
github = cfg.github.enable; # github = cfg.github.enable;
terraform = cfg.terraform.enable; # terraform = cfg.terraform.enable;
kubernetes = cfg.kubernetes.enable; # kubernetes = cfg.kubernetes.enable;
}; #};
nmasur.presets.programs.neovim.package = pkgs.nmasur.neovim;
# Use Neovim as the editor for git commit messages # Use Neovim as the editor for git commit messages
programs.git.extraConfig.core.editor = "${lib.getExe cfg.package}"; programs.git.extraConfig.core.editor = "${lib.getExe cfg.package}";
@ -60,7 +61,7 @@ in
# Create a desktop option for launching Neovim from a file manager # Create a desktop option for launching Neovim from a file manager
# (Requires launching the terminal and then executing Neovim) # (Requires launching the terminal and then executing Neovim)
xdg.desktopEntries.nvim = lib.mkIf (pkgs.stdenv.isLinux) { xdg.desktopEntries.nvim = lib.mkIf (pkgs.stdenv.isLinux && config.nmasur.presets.services.i3.enable) {
name = "Neovim wrapper"; name = "Neovim wrapper";
exec = "${lib.getExe config.nmasur.presets.services.i3.terminal} nvim %F"; # TODO: change to generic exec = "${lib.getExe config.nmasur.presets.services.i3.terminal} nvim %F"; # TODO: change to generic
mimeType = [ mimeType = [

View File

@ -28,9 +28,11 @@ in
nmasur.presets = { nmasur.presets = {
programs = { programs = {
bat.enable = true; bat.enable = lib.mkDefault true;
ripgrep.enable = true; fd.enable = lib.mkDefault true;
fd.enable = true; ripgrep.enable = lib.mkDefault true;
starship.enable = lib.mkDefault true;
nixpkgs.enable = lib.mkDefault true;
}; };
services = { services = {
loadkey.enable = lib.mkDefault true; loadkey.enable = lib.mkDefault true;

View File

@ -1,6 +1,5 @@
{ {
config, config,
pkgs,
lib, lib,
... ...
}: }:
@ -35,14 +34,9 @@ in
}; };
}; };
programs.fish = { nmasur.presets.programs = {
shellAliases = { doas.enable = lib.mkDefault true;
# Move files to XDG trash on the commandline
trash = lib.mkDefault "${pkgs.trash-cli}/bin/trash-put";
};
shellAbbrs = {
t = lib.mkDefault "trash";
};
}; };
}; };
} }

View File

@ -1,5 +1,6 @@
{ {
config, config,
pkgs,
lib, lib,
... ...
}: }:
@ -43,5 +44,15 @@ in
}; };
}; };
programs.fish = {
shellAliases = {
# Move files to XDG trash on the commandline
trash = lib.mkDefault "${pkgs.trash-cli}/bin/trash-put";
};
shellAbbrs = {
t = lib.mkDefault "trash";
};
};
}; };
} }

View File

@ -52,10 +52,14 @@ in
nmasur.presets.programs = { nmasur.presets.programs = {
atuin.enable = lib.mkDefault true; atuin.enable = lib.mkDefault true;
bat.enable = lib.mkDefault true; bat.enable = lib.mkDefault true;
direnv.enable = lib.mkDefault true;
dotfiles.enable = lib.mkDefault true; dotfiles.enable = lib.mkDefault true;
fd.enable = lib.mkDefault true; fd.enable = lib.mkDefault true;
ripgrep.enable = lib.mkDefault true; fish.enable = lib.mkDefault true;
fzf.enable = lib.mkDefault true;
nixpkgs.enable = lib.mkDefault true;
prettyping.enable = lib.mkDefault true; prettyping.enable = lib.mkDefault true;
ripgrep.enable = lib.mkDefault true;
weather.enable = lib.mkDefault true; weather.enable = lib.mkDefault true;
yt-dlp.enable = lib.mkDefault true; yt-dlp.enable = lib.mkDefault true;
zoxide.enable = lib.mkDefault true; zoxide.enable = lib.mkDefault true;

View File

@ -83,6 +83,7 @@ in
); );
in in
{ {
enable = true;
adapter = "''"; # Required to enable JSON adapter = "''"; # Required to enable JSON
configFile = pkgs.writeText "Caddyfile" ( configFile = pkgs.writeText "Caddyfile" (
builtins.toJSON { builtins.toJSON {

View File

@ -67,8 +67,8 @@ in
# Tell Caddy to use Cloudflare DNS for ACME challenge validation # Tell Caddy to use Cloudflare DNS for ACME challenge validation
services.caddy.package = pkgs.caddy.withPlugins { services.caddy.package = pkgs.caddy.withPlugins {
plugins = [ "github.com/caddy-dns/cloudflare@master" ]; plugins = [ "github.com/caddy-dns/cloudflare@v0.0.0-20250228175314-1fb64108d4de" ];
hash = "sha256-C7JOGd4sXsRZL561oP84V2/pTg7szEgF4OFOw35yS1s="; hash = "sha256-3nvVGW+ZHLxQxc1VCc/oTzCLZPBKgw4mhn+O3IoyiSs=";
}; };
nmasur.presets.services.caddy.tlsPolicies = [ nmasur.presets.services.caddy.tlsPolicies = [
{ {

View File

@ -23,6 +23,7 @@ in
allowUnfreePackages = [ "minecraft-server" ]; allowUnfreePackages = [ "minecraft-server" ];
services.minecraft-server = { services.minecraft-server = {
enable = true;
eula = true; eula = true;
declarative = true; declarative = true;
whitelist = { }; whitelist = { };

View File

@ -17,6 +17,7 @@ in
allowUnfreePackages = [ "n8n" ]; allowUnfreePackages = [ "n8n" ];
services.n8n = { services.n8n = {
enable = true;
webhookUrl = "https://${hostnames.n8n}"; webhookUrl = "https://${hostnames.n8n}";
settings = { settings = {
listen_address = "127.0.0.1"; listen_address = "127.0.0.1";

View File

@ -10,6 +10,7 @@ in
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.thelounge = { services.thelounge = {
enable = true;
public = false; public = false;
port = 9000; port = 9000;
extraConfig = { extraConfig = {