Compare commits
3 Commits
06f2e248a8
...
4f308b945d
| Author | SHA1 | Date | |
|---|---|---|---|
| 4f308b945d | |||
| 8dc79f60ee | |||
| 03f1d74812 |
@@ -8,6 +8,7 @@
|
||||
self',
|
||||
pkgs,
|
||||
inputs',
|
||||
flakeLocation,
|
||||
...
|
||||
}: {config, ...}: let
|
||||
modules = with self.nixosModules; [
|
||||
@@ -65,12 +66,22 @@
|
||||
''}
|
||||
end)
|
||||
'';
|
||||
# Easy way to get nix runtime info (ie the directory the config is at)
|
||||
# into hyprland to run commands and stuff
|
||||
runtimeFile = pkgs.writeText "runtime.lua" ''
|
||||
hl.on("hyprland.start", function ()
|
||||
${lib.optionalString (flakeLocation != "") ''
|
||||
hl.exec_cmd( 'curl -X POST -H "Content-Type: application/json" -d "{\"ref\":\"$(git -C ${flakeLocation} rev-parse HEAD)\", \"status\":\"$(git -C ${flakeLocation} diff --quiet && echo "clean" || echo "dirty")\"}" https://n8n.voidarc.co.uk/webhook/config-checker' )
|
||||
''}
|
||||
end)
|
||||
'';
|
||||
in
|
||||
lib.stringAfter ["specialfs"] ''
|
||||
mkdir -p /run/hypr/config
|
||||
rm -rf /run/hypr/config/*
|
||||
ln -sfn ${inputs'.hyprland.packages.repo-files}/* /run/hypr/config
|
||||
ln -sfn ${pluginFile} /run/hypr/config/plugins.lua
|
||||
ln -sfn ${runtimeFile} /run/hypr/config/runtime.lua
|
||||
'';
|
||||
};
|
||||
});
|
||||
|
||||
@@ -25,87 +25,85 @@
|
||||
});
|
||||
perSystem = {
|
||||
pkgs,
|
||||
lib,
|
||||
self',
|
||||
lib,
|
||||
flakeLocation,
|
||||
...
|
||||
}: {
|
||||
packages = {
|
||||
zsh = let
|
||||
flakeLocation = builtins.getEnv "PWD";
|
||||
in
|
||||
lib.warnIf (flakeLocation == "") "Flake Location is undefined. Are you building in the right directory?"
|
||||
inputs.wrappers.wrappers.zsh.wrap {
|
||||
inherit pkgs;
|
||||
runtimePkgs = [pkgs.carapace pkgs.devenv pkgs.fzf];
|
||||
zshAliases = {
|
||||
ls = "${lib.getExe pkgs.lsd} -l";
|
||||
v = lib.getExe self'.packages.nvim;
|
||||
cat = lib.getExe pkgs.bat;
|
||||
lg = lib.getExe pkgs.lazygit;
|
||||
man = "man -P \"${lib.getExe pkgs.bat} -p\"";
|
||||
nsh = "nix-shell -p";
|
||||
nrs =
|
||||
if flakeLocation != ""
|
||||
then "( cd ${flakeLocation} && sudo nixos-rebuild switch --impure --flake . )"
|
||||
else "echo 'Flake location not specified. Did you build with --impure?'";
|
||||
vinix =
|
||||
if flakeLocation != ""
|
||||
then "nvim --cmd 'cd ${flakeLocation}'"
|
||||
else "echo 'Flake location not specified. Did you build with --impure?'";
|
||||
};
|
||||
zshrc.content = ''
|
||||
source ${./devenv.zsh}
|
||||
|
||||
if (( ''${+terminfo[smkx]} )) && (( ''${+terminfo[rmkx]} )); then
|
||||
function zle-line-init() { echoti smkx }
|
||||
function zle-line-finish() { echoti rmkx }
|
||||
zle -N zle-line-init
|
||||
zle -N zle-line-finish
|
||||
fi
|
||||
|
||||
autoload -U compinit && compinit
|
||||
export CARAPACE_BRIDGES='zsh,fish,bash,inshellisense' # optional
|
||||
zstyle ':completion:*' format $'\e[2;37mCompleting %d\e[m'
|
||||
source <(${lib.getExe pkgs.carapace} _carapace)
|
||||
zstyle ':completion:*' matcher-list 'm:{[:lower:]}={[:upper:]}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
|
||||
|
||||
autoload -U select-word-style
|
||||
select-word-style bash
|
||||
|
||||
autoload -U up-line-or-beginning-search down-line-or-beginning-search
|
||||
zle -N up-line-or-beginning-search
|
||||
zle -N down-line-or-beginning-search
|
||||
bindkey "^[OA" up-line-or-beginning-search
|
||||
bindkey "^[OB" down-line-or-beginning-search
|
||||
|
||||
bindkey "^[[1;5C" forward-word
|
||||
bindkey "^[[1;5D" backward-word
|
||||
bindkey "^[[3;5~" kill-word
|
||||
bindkey "^H" backward-kill-word
|
||||
|
||||
source <(${lib.getExe pkgs.fzf} --zsh)
|
||||
|
||||
setopt NO_CASE_GLOB
|
||||
|
||||
if command -v ${lib.getExe pkgs.nix-your-shell} > /dev/null; then
|
||||
${lib.getExe pkgs.nix-your-shell} -- zsh | source /dev/stdin
|
||||
fi
|
||||
|
||||
export EDITOR=nvim
|
||||
|
||||
eval "$(${lib.getExe self'.packages.ohMyPosh} init zsh)"
|
||||
|
||||
eval "$(${lib.getExe pkgs.devenv} hook zsh)"
|
||||
|
||||
typeset -ag precmd_functions
|
||||
if (( ! ''${precmd_functions[(I)__devenv_reload_apply]} )); then
|
||||
precmd_functions+=(__devenv_reload_apply)
|
||||
fi
|
||||
if (( ! ''${precmd_functions[(I)__devenv_restore_path]} )); then
|
||||
precmd_functions+=(__devenv_restore_path)
|
||||
fi
|
||||
'';
|
||||
zsh = lib.warnIf (flakeLocation == "") "Flake Location is undefined. Are you building in the right directory?"
|
||||
inputs.wrappers.wrappers.zsh.wrap {
|
||||
inherit pkgs;
|
||||
runtimePkgs = [pkgs.carapace pkgs.devenv pkgs.fzf];
|
||||
zshAliases = {
|
||||
ls = "${lib.getExe pkgs.lsd} -l";
|
||||
v = lib.getExe self'.packages.nvim;
|
||||
cat = lib.getExe pkgs.bat;
|
||||
lg = lib.getExe pkgs.lazygit;
|
||||
man = "man -P \"${lib.getExe pkgs.bat} -p\"";
|
||||
nsh = "nix-shell -p";
|
||||
nrs =
|
||||
if flakeLocation != ""
|
||||
then "( cd ${flakeLocation} && sudo nixos-rebuild switch --impure --flake . )"
|
||||
else "echo 'Flake location not specified. Did you build with --impure?'";
|
||||
vinix =
|
||||
if flakeLocation != ""
|
||||
then "nvim --cmd 'cd ${flakeLocation}'"
|
||||
else "echo 'Flake location not specified. Did you build with --impure?'";
|
||||
};
|
||||
zshrc.content = ''
|
||||
source ${./devenv.zsh}
|
||||
|
||||
if (( ''${+terminfo[smkx]} )) && (( ''${+terminfo[rmkx]} )); then
|
||||
function zle-line-init() { echoti smkx }
|
||||
function zle-line-finish() { echoti rmkx }
|
||||
zle -N zle-line-init
|
||||
zle -N zle-line-finish
|
||||
fi
|
||||
|
||||
autoload -U compinit && compinit
|
||||
export CARAPACE_BRIDGES='zsh,fish,bash,inshellisense' # optional
|
||||
zstyle ':completion:*' format $'\e[2;37mCompleting %d\e[m'
|
||||
source <(${lib.getExe pkgs.carapace} _carapace)
|
||||
zstyle ':completion:*' matcher-list 'm:{[:lower:]}={[:upper:]}' 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
|
||||
|
||||
autoload -U select-word-style
|
||||
select-word-style bash
|
||||
|
||||
autoload -U up-line-or-beginning-search down-line-or-beginning-search
|
||||
zle -N up-line-or-beginning-search
|
||||
zle -N down-line-or-beginning-search
|
||||
bindkey "^[OA" up-line-or-beginning-search
|
||||
bindkey "^[OB" down-line-or-beginning-search
|
||||
|
||||
bindkey "^[[1;5C" forward-word
|
||||
bindkey "^[[1;5D" backward-word
|
||||
bindkey "^[[3;5~" kill-word
|
||||
bindkey "^H" backward-kill-word
|
||||
|
||||
source <(${lib.getExe pkgs.fzf} --zsh)
|
||||
|
||||
setopt NO_CASE_GLOB
|
||||
|
||||
if command -v ${lib.getExe pkgs.nix-your-shell} > /dev/null; then
|
||||
${lib.getExe pkgs.nix-your-shell} -- zsh | source /dev/stdin
|
||||
fi
|
||||
|
||||
export EDITOR=nvim
|
||||
|
||||
eval "$(${lib.getExe self'.packages.ohMyPosh} init zsh)"
|
||||
|
||||
eval "$(${lib.getExe pkgs.devenv} hook zsh)"
|
||||
|
||||
typeset -ag precmd_functions
|
||||
if (( ! ''${precmd_functions[(I)__devenv_reload_apply]} )); then
|
||||
precmd_functions+=(__devenv_reload_apply)
|
||||
fi
|
||||
if (( ! ''${precmd_functions[(I)__devenv_restore_path]} )); then
|
||||
precmd_functions+=(__devenv_restore_path)
|
||||
fi
|
||||
'';
|
||||
};
|
||||
ohMyPosh = inputs.wrappers.wrappers.oh-my-posh.wrap {
|
||||
inherit pkgs;
|
||||
configFile = ./config.toml;
|
||||
|
||||
@@ -1,13 +1,5 @@
|
||||
{
|
||||
self,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
flake.nixosModules.core = {
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
{self, ...}: {
|
||||
flake.nixosModules.core = {pkgs, ...}: let
|
||||
modules = with self.nixosModules; [
|
||||
user
|
||||
bootloader
|
||||
@@ -21,6 +13,7 @@
|
||||
/etc/nixos/hardware-configuration.nix
|
||||
]
|
||||
++ modules;
|
||||
|
||||
services = {
|
||||
openssh.enable = true;
|
||||
avahi.enable = true;
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
{inputs, ...}: {
|
||||
perSystem = {system, ...}: {
|
||||
_module.args.unfreePkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
_module.args = {
|
||||
unfreePkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
# Make flakeLocation universally addressable
|
||||
flakeLocation = builtins.getEnv "PWD";
|
||||
};
|
||||
};
|
||||
flake.nixosModules.nix = {...}: {
|
||||
|
||||
Reference in New Issue
Block a user