Compare commits
No commits in common. "e16ea740c9d03fae640363ca39f308b4b48b380f" and "d952c2c7916b2db27aac6d655ce29f4aa6ed5084" have entirely different histories.
e16ea740c9
...
d952c2c791
19
flake.nix
19
flake.nix
|
@ -73,7 +73,7 @@
|
||||||
system ? "x86_64-linux",
|
system ? "x86_64-linux",
|
||||||
username ? "pixelifytica",
|
username ? "pixelifytica",
|
||||||
hostName ? "Atlas",
|
hostName ? "Atlas",
|
||||||
loginShell ? "bash",
|
loginShell ? "zsh",
|
||||||
...
|
...
|
||||||
}: [
|
}: [
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
|
@ -89,7 +89,7 @@
|
||||||
networking = {inherit hostName;};
|
networking = {inherit hostName;};
|
||||||
nix.settings.trusted-users = [username];
|
nix.settings.trusted-users = [username];
|
||||||
services.greetd.settings.initial_session.user = username;
|
services.greetd.settings.initial_session.user = username;
|
||||||
programs.${loginShell} = lib.mkIf (loginShell != "bash") {enable = true;};
|
programs.${loginShell}.enable = true;
|
||||||
users.users.${username} = {
|
users.users.${username} = {
|
||||||
shell = pkgs.${loginShell};
|
shell = pkgs.${loginShell};
|
||||||
group = "users";
|
group = "users";
|
||||||
|
@ -137,48 +137,53 @@
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
username = "pixelifytica";
|
username = "pixelifytica";
|
||||||
hostName = "Legion";
|
hostName = "Legion";
|
||||||
|
loginShell = "zsh";
|
||||||
in
|
in
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = defaultSpecialArgs {inherit system;};
|
specialArgs = defaultSpecialArgs {inherit system;};
|
||||||
modules = defaultModules {inherit system username hostName;};
|
modules = defaultModules {inherit system username hostName loginShell;};
|
||||||
};
|
};
|
||||||
## Personal
|
## Personal
|
||||||
Northstar = let
|
Northstar = let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
username = "pixelifytica";
|
username = "pixelifytica";
|
||||||
hostName = "Northstar";
|
hostName = "Northstar";
|
||||||
|
loginShell = "zsh";
|
||||||
in
|
in
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = defaultSpecialArgs {inherit system;};
|
specialArgs = defaultSpecialArgs {inherit system;};
|
||||||
modules = defaultModules {inherit system username hostName;};
|
modules = defaultModules {inherit system username hostName loginShell;};
|
||||||
};
|
};
|
||||||
Vanguard = let
|
Vanguard = let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
username = "pixelifytica";
|
username = "pixelifytica";
|
||||||
hostName = "Vanguard";
|
hostName = "Vanguard";
|
||||||
|
loginShell = "zsh";
|
||||||
in
|
in
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = defaultSpecialArgs {inherit system;};
|
specialArgs = defaultSpecialArgs {inherit system;};
|
||||||
modules = defaultModules {inherit system username hostName;};
|
modules = defaultModules {inherit system username hostName loginShell;};
|
||||||
};
|
};
|
||||||
## Work
|
## Work
|
||||||
Tone = let
|
Tone = let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
username = "elitherl";
|
username = "elitherl";
|
||||||
hostName = "Tone";
|
hostName = "Tone";
|
||||||
|
loginShell = "zsh";
|
||||||
in
|
in
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = defaultSpecialArgs {inherit system;};
|
specialArgs = defaultSpecialArgs {inherit system;};
|
||||||
modules = defaultModules {inherit system username hostName;};
|
modules = defaultModules {inherit system username hostName loginShell;};
|
||||||
};
|
};
|
||||||
Scorch = let
|
Scorch = let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
username = "elitherl";
|
username = "elitherl";
|
||||||
hostName = "Scorch";
|
hostName = "Scorch";
|
||||||
|
loginShell = "zsh";
|
||||||
in
|
in
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = defaultSpecialArgs {inherit system;};
|
specialArgs = defaultSpecialArgs {inherit system;};
|
||||||
modules = defaultModules {inherit system username hostName;};
|
modules = defaultModules {inherit system username hostName loginShell;};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -51,14 +51,74 @@
|
||||||
(load-theme '${custom-theme-name})
|
(load-theme '${custom-theme-name})
|
||||||
'';
|
'';
|
||||||
extraPackages = epkgs:
|
extraPackages = epkgs:
|
||||||
with epkgs;
|
with epkgs; [
|
||||||
[
|
|
||||||
# Tree-sitter grammars, not a real Emacs package
|
# Tree-sitter grammars, not a real Emacs package
|
||||||
treesit-grammars.with-all-grammars
|
treesit-grammars.with-all-grammars
|
||||||
# Maildir utils with linked Emacs package
|
# Maildir utils with linked Emacs package
|
||||||
mu4e
|
mu4e
|
||||||
]
|
# Theme
|
||||||
++ (import ./emacs-packages.nix epkgs);
|
base16-theme
|
||||||
|
# UI
|
||||||
|
all-the-icons
|
||||||
|
nerd-icons
|
||||||
|
nerd-icons-completion
|
||||||
|
nerd-icons-corfu
|
||||||
|
nerd-icons-dired
|
||||||
|
nerd-icons-ibuffer
|
||||||
|
minions
|
||||||
|
ligature
|
||||||
|
page-break-lines
|
||||||
|
helpful
|
||||||
|
which-key
|
||||||
|
ace-window
|
||||||
|
link-hint
|
||||||
|
diff-hl
|
||||||
|
# Completion
|
||||||
|
vertico
|
||||||
|
orderless
|
||||||
|
marginalia
|
||||||
|
cape
|
||||||
|
corfu
|
||||||
|
corfu-terminal
|
||||||
|
consult
|
||||||
|
consult-eglot
|
||||||
|
consult-flyspell
|
||||||
|
embark
|
||||||
|
embark-consult
|
||||||
|
flyspell-correct
|
||||||
|
tempel
|
||||||
|
# IDE
|
||||||
|
treesit-auto
|
||||||
|
magit
|
||||||
|
forge
|
||||||
|
flymake-popon
|
||||||
|
flymake-shellcheck
|
||||||
|
flymake-yamllint
|
||||||
|
flymake-eslint
|
||||||
|
apheleia
|
||||||
|
envrc
|
||||||
|
rainbow-delimiters
|
||||||
|
aggressive-indent
|
||||||
|
python-docstring
|
||||||
|
nix-mode
|
||||||
|
lua-mode
|
||||||
|
# Writing
|
||||||
|
org-roam
|
||||||
|
org-noter
|
||||||
|
citar
|
||||||
|
citar-embark
|
||||||
|
markdown-mode
|
||||||
|
pandoc-mode
|
||||||
|
auctex
|
||||||
|
htmlize
|
||||||
|
# Other
|
||||||
|
password-store
|
||||||
|
emms
|
||||||
|
bbdb
|
||||||
|
ement
|
||||||
|
elfeed
|
||||||
|
elfeed-org
|
||||||
|
];
|
||||||
};
|
};
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# Emacs requirements
|
# Emacs requirements
|
||||||
|
|
|
@ -1,65 +0,0 @@
|
||||||
epkgs:
|
|
||||||
with epkgs; [
|
|
||||||
# Theme
|
|
||||||
base16-theme
|
|
||||||
# UI
|
|
||||||
all-the-icons
|
|
||||||
nerd-icons
|
|
||||||
nerd-icons-completion
|
|
||||||
nerd-icons-corfu
|
|
||||||
nerd-icons-dired
|
|
||||||
nerd-icons-ibuffer
|
|
||||||
minions
|
|
||||||
ligature
|
|
||||||
page-break-lines
|
|
||||||
helpful
|
|
||||||
which-key
|
|
||||||
ace-window
|
|
||||||
link-hint
|
|
||||||
diff-hl
|
|
||||||
# Completion
|
|
||||||
vertico
|
|
||||||
orderless
|
|
||||||
marginalia
|
|
||||||
cape
|
|
||||||
corfu
|
|
||||||
corfu-terminal
|
|
||||||
consult
|
|
||||||
consult-eglot
|
|
||||||
consult-flyspell
|
|
||||||
embark
|
|
||||||
embark-consult
|
|
||||||
flyspell-correct
|
|
||||||
tempel
|
|
||||||
# IDE
|
|
||||||
treesit-auto
|
|
||||||
magit
|
|
||||||
forge
|
|
||||||
flymake-popon
|
|
||||||
flymake-shellcheck
|
|
||||||
flymake-yamllint
|
|
||||||
flymake-eslint
|
|
||||||
apheleia
|
|
||||||
envrc
|
|
||||||
rainbow-delimiters
|
|
||||||
aggressive-indent
|
|
||||||
python-docstring
|
|
||||||
nix-mode
|
|
||||||
lua-mode
|
|
||||||
# Writing
|
|
||||||
org-roam
|
|
||||||
org-noter
|
|
||||||
citar
|
|
||||||
citar-embark
|
|
||||||
markdown-mode
|
|
||||||
pandoc-mode
|
|
||||||
auctex
|
|
||||||
htmlize
|
|
||||||
# Other
|
|
||||||
password-store
|
|
||||||
emms
|
|
||||||
bbdb
|
|
||||||
ement
|
|
||||||
elfeed
|
|
||||||
elfeed-org
|
|
||||||
]
|
|
|
@ -1,7 +1,7 @@
|
||||||
HOSTS=("$@")
|
HOSTS=("$@")
|
||||||
# Config files
|
# Config files
|
||||||
for TARGET in ".inputrc" ".config/bat/" ".config/starship.toml"; do
|
for TARGET in bat starship.toml; do
|
||||||
SOURCE="$HOME/$TARGET"
|
SOURCE="$HOME/.config/$TARGET"
|
||||||
echo "--- $SOURCE ---"
|
echo "--- $SOURCE ---"
|
||||||
TMP_TARGET=/tmp/rsync-local-config
|
TMP_TARGET=/tmp/rsync-local-config
|
||||||
TMP_SOURCE=$TMP_TARGET
|
TMP_SOURCE=$TMP_TARGET
|
||||||
|
@ -16,7 +16,7 @@ for TARGET in ".inputrc" ".config/bat/" ".config/starship.toml"; do
|
||||||
rsync -avzL --exclude=".git*" --chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=r "$SOURCE" $TMP_TARGET
|
rsync -avzL --exclude=".git*" --chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=r "$SOURCE" $TMP_TARGET
|
||||||
sh -c "$NIX_REPLACE"
|
sh -c "$NIX_REPLACE"
|
||||||
for HOST in "${HOSTS[@]}"; do
|
for HOST in "${HOSTS[@]}"; do
|
||||||
rsync -avzL --delete --exclude=".git*" $TMP_SOURCE "$HOST:$TARGET"
|
rsync -avzL --delete --exclude=".git*" $TMP_SOURCE "$HOST:.config/$TARGET"
|
||||||
done
|
done
|
||||||
rm -rf $TMP_SOURCE
|
rm -rf $TMP_SOURCE
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -13,10 +13,7 @@
|
||||||
du-dust
|
du-dust
|
||||||
];
|
];
|
||||||
programs = {
|
programs = {
|
||||||
bash = {
|
bash.enable = true;
|
||||||
enable = true;
|
|
||||||
enableCompletion = true;
|
|
||||||
};
|
|
||||||
bat = {
|
bat = {
|
||||||
enable = true;
|
enable = true;
|
||||||
config = {
|
config = {
|
||||||
|
@ -42,23 +39,6 @@
|
||||||
fileWidgetCommand = "${pkgs.fd}/bin/fd --type f";
|
fileWidgetCommand = "${pkgs.fd}/bin/fd --type f";
|
||||||
};
|
};
|
||||||
jq.enable = true;
|
jq.enable = true;
|
||||||
readline = {
|
|
||||||
enable = true;
|
|
||||||
variables = {
|
|
||||||
bell-style = "visible";
|
|
||||||
blink-matching-paren = "On";
|
|
||||||
colored-completion-prefix = "On";
|
|
||||||
colored-stats = "On";
|
|
||||||
completion-ignore-case = "On";
|
|
||||||
completion-map-case = "On";
|
|
||||||
editing-mode = "emacs";
|
|
||||||
expand-tilde = "On";
|
|
||||||
horizontal-scroll-mode = "On";
|
|
||||||
mark-directories = "On";
|
|
||||||
mark-symlinked-directories = "On";
|
|
||||||
visible-stats = "On";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
ripgrep.enable = true;
|
ripgrep.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue