Compare commits
13 commits
f717547060
...
6a43ef3bd9
Author | SHA1 | Date | |
---|---|---|---|
6a43ef3bd9 | |||
76224a7113 | |||
00a252a009 | |||
fd4481a2e1 | |||
b3fe1164fd | |||
b8f1295953 | |||
57a6f61802 | |||
1922579c77 | |||
5633ed5914 | |||
80db008bb7 | |||
16f2e7fd18 | |||
854b296c07 | |||
bad48abd05 |
31 changed files with 398 additions and 334 deletions
|
@ -36,4 +36,22 @@
|
|||
else "Whether to enable ${name}.";
|
||||
type = lib.types.bool;
|
||||
};
|
||||
|
||||
## Like lib.mkDefault, but uses lib.mapAttrsRecursive to apply mkDefault to
|
||||
## every attr in the set.
|
||||
##
|
||||
## ```nix
|
||||
## starship.settings.username = mkDefault' {
|
||||
## enabled = true;
|
||||
## show_always = false;
|
||||
## };
|
||||
## ```
|
||||
## is equivalent to:
|
||||
## ```nix
|
||||
## starship.settings.username = {
|
||||
## enabled = mkDefault true;
|
||||
## show_always = mkDefault false;
|
||||
## };
|
||||
## ```
|
||||
mkDefault' = set: lib.mapAttrsRecursive (_: value: lib.mkDefault value) set;
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
./stylix
|
||||
|
||||
./programs
|
||||
./services
|
||||
|
||||
./profiles.nix
|
||||
./home.nix
|
||||
|
|
|
@ -69,7 +69,7 @@
|
|||
pkgs.writeShellScriptBin "nrepl"
|
||||
# sh
|
||||
''
|
||||
nix repl "${toString ./.}/repl.nix" "$@"
|
||||
nix repl --file "${toString ../../repl.nix}" "$@"
|
||||
'';
|
||||
in [
|
||||
nrepl
|
||||
|
|
|
@ -17,6 +17,13 @@ in {
|
|||
jq = enabled;
|
||||
less = enabled;
|
||||
neovim = enabled;
|
||||
nix-output-monitor = enabled;
|
||||
ripgrep = enabled;
|
||||
wget = enabled;
|
||||
};
|
||||
|
||||
services = {
|
||||
openssh = enabled; # required for agenix
|
||||
};
|
||||
}
|
||||
#
|
||||
|
|
|
@ -5,5 +5,8 @@
|
|||
./jq.nix
|
||||
./less.nix
|
||||
./neovim.nix
|
||||
./nix-output-monitor.nix
|
||||
./ripgrep.nix
|
||||
./wget.nix
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,15 +1,16 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.nix-output-monitor;
|
||||
in {
|
||||
options.marleyos.programs.nix-output-monitor.enable = lib.mkEnableOption "nix-output-monitor";
|
||||
options.marleyos.programs.nix-output-monitor.enable =
|
||||
lib.mkEnableOption "nix-output-monitor";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
environment.systemPackages = with pkgs; [
|
||||
nix-output-monitor
|
||||
];
|
||||
};
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.ripgrep;
|
||||
|
@ -8,6 +9,8 @@ in {
|
|||
options.marleyos.programs.ripgrep.enable = lib.mkEnableOption "ripgrep";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.ripgrep.enable = true;
|
||||
environment.systemPackages = with pkgs; [
|
||||
ripgrep
|
||||
];
|
||||
};
|
||||
}
|
16
modules/base/programs/wget.nix
Normal file
16
modules/base/programs/wget.nix
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.wget;
|
||||
in {
|
||||
options.marleyos.programs.wget.enable = lib.mkEnableOption "wget";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
wget
|
||||
];
|
||||
};
|
||||
}
|
5
modules/base/services/default.nix
Normal file
5
modules/base/services/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
imports = [
|
||||
./openssh.nix
|
||||
];
|
||||
}
|
19
modules/base/services/openssh.nix
Normal file
19
modules/base/services/openssh.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.services.openssh;
|
||||
in {
|
||||
options.marleyos.services.openssh.enable = lib.mkEnableOption "openssh";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
PermitRootLogin = "prohibit-password";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
5
modules/darwin/services/default.nix
Normal file
5
modules/darwin/services/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
imports = [
|
||||
./openssh.nix
|
||||
];
|
||||
}
|
13
modules/darwin/services/openssh.nix
Normal file
13
modules/darwin/services/openssh.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.services.openssh;
|
||||
in {
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.openssh.extraConfig = ''
|
||||
PermitRootLogin prohibit-password
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -27,6 +27,13 @@ in {
|
|||
less = enabled;
|
||||
man = enabled;
|
||||
nh = enabled;
|
||||
ripgrep = enabled;
|
||||
ssh = enabled;
|
||||
starship = enabled;
|
||||
systemctl = enabled;
|
||||
tmux = enabled;
|
||||
wget = enabled;
|
||||
zoxide = enabled;
|
||||
};
|
||||
}
|
||||
#
|
||||
|
@ -43,6 +50,7 @@ in {
|
|||
nemo = enabled;
|
||||
neo = enabled;
|
||||
neovim = enabled;
|
||||
tea = enabled;
|
||||
};
|
||||
|
||||
services = {
|
||||
|
|
|
@ -24,7 +24,15 @@
|
|||
./neo.nix
|
||||
./neovim.nix
|
||||
./nh.nix
|
||||
./ripgrep.nix
|
||||
./ssh.nix
|
||||
./starship
|
||||
./systemctl.nix
|
||||
./tea.nix
|
||||
./tmux.nix
|
||||
./waybar.nix
|
||||
./wget.nix
|
||||
./zoxide.nix
|
||||
|
||||
# TODO: uncomment when swaylock is figured out
|
||||
# ./wlogout
|
||||
|
|
19
modules/home/programs/ripgrep.nix
Normal file
19
modules/home/programs/ripgrep.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
marleylib,
|
||||
config,
|
||||
osConfig,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
inherit (marleylib.module) mkEnableOption';
|
||||
|
||||
cfg = config.marleyos.programs.ripgrep;
|
||||
osCfg = osConfig.marleyos.programs.ripgrep;
|
||||
in {
|
||||
options.marleyos.programs.ripgrep.enable =
|
||||
mkEnableOption' "ripgrep" osCfg.enable;
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.ripgrep.enable = true;
|
||||
};
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.starship;
|
208
modules/home/programs/starship/theme.nix
Normal file
208
modules/home/programs/starship/theme.nix
Normal file
|
@ -0,0 +1,208 @@
|
|||
{
|
||||
marleylib,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.starship;
|
||||
in {
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.starship.settings = with config.lib.stylix.colors.withHashtag; let
|
||||
mkFormat = t: " [](fg:${base02})[${t}]($style)[](fg:${base02}) ";
|
||||
langFormat = mkFormat "$symbol$version";
|
||||
in
|
||||
marleylib.module.mkDefault' {
|
||||
format = lib.concatStrings [
|
||||
"$username"
|
||||
"$hostname"
|
||||
"$directory"
|
||||
"$nix_shell"
|
||||
"$git_branch"
|
||||
"$git_status"
|
||||
"$fill"
|
||||
"$c"
|
||||
"$elixir"
|
||||
"$elm"
|
||||
"$golang"
|
||||
"$haskell"
|
||||
"$java"
|
||||
"$julia"
|
||||
"$nodejs"
|
||||
"$nim"
|
||||
"$rust"
|
||||
"$scala"
|
||||
"$python"
|
||||
"$time"
|
||||
"$line_break"
|
||||
"$character"
|
||||
];
|
||||
|
||||
username = {
|
||||
disabled = false;
|
||||
format = " [](fg:${base02})[ $user@]($style)";
|
||||
show_always = true;
|
||||
style_root = "bg:${base02} fg:${base0D}";
|
||||
style_user = "bg:${base02} fg:${base0D}";
|
||||
};
|
||||
|
||||
hostname = {
|
||||
ssh_only = false;
|
||||
format = "[$hostname ]($style)[](fg:${base02}) ";
|
||||
style = "bg:${base02} fg:${base0D}";
|
||||
};
|
||||
|
||||
directory = {
|
||||
format = mkFormat " $path ";
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
truncation_length = 3;
|
||||
truncation_symbol = "…/";
|
||||
|
||||
substitutions = {
|
||||
Documents = "";
|
||||
Downloads = " ";
|
||||
Music = " ";
|
||||
Pictures = " ";
|
||||
};
|
||||
};
|
||||
|
||||
git_branch = {
|
||||
format = mkFormat " $symbol $branch ";
|
||||
style = "bg:${base02} fg:${base0C}";
|
||||
symbol = "";
|
||||
};
|
||||
|
||||
git_status = {
|
||||
disabled = false;
|
||||
style = "bg:${base02} fg:${base08}";
|
||||
format = mkFormat "$all_status$ahead_behind";
|
||||
up_to_date = "[ ✓ ](bg:${base02} fg:${base0D})";
|
||||
untracked = "[?\\($count\\)](bg:${base02} fg:${base09})";
|
||||
stashed = "[\\$](bg:${base02} fg:${base0D})";
|
||||
modified = "[!\\($count\\)](bg:${base02} fg:${base09})";
|
||||
renamed = "[»\\($count\\)](bg:${base02} fg:${base0D})";
|
||||
deleted = "[✘\\($count\\)](style)";
|
||||
staged = "[++\\($count\\)](bg:${base02} fg:${base09})";
|
||||
ahead = "[⇡\\(\${count}\\)](bg:${base02} fg:${base0C})";
|
||||
diverged = "⇕[\\[](bg:${base02} fg:${base0D})[⇡\\(\${ahead_count}\\)](bg:${base02} fg:${base0C})[⇣\\(\${behind_count}\\)](bg:${base02} fg:${base0A})[\\]](bg:${base02} fg:${base0D})";
|
||||
behind = "[⇣\\(\${count}\\)](bg:${base02} fg:${base0A})";
|
||||
};
|
||||
|
||||
fill = {
|
||||
style = "fg:${base02}";
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
time = {
|
||||
disabled = false;
|
||||
format = mkFormat " $time ";
|
||||
style = "bg:${base02} fg:${base0A}";
|
||||
time_format = "%I:%M%P";
|
||||
use_12hr = true;
|
||||
};
|
||||
|
||||
character = let
|
||||
vim = "";
|
||||
mkChar = sym: col: " [${sym}](fg:${col}) [](fg:${base0C})";
|
||||
in {
|
||||
success_symbol = mkChar "" "${base0D}";
|
||||
error_symbol = mkChar "" "${base08}";
|
||||
vimcmd_symbol = mkChar vim "${base0A}";
|
||||
vimcmd_replace_one_symbol = mkChar vim "${base0C}";
|
||||
vimcmd_replace_symbol = mkChar vim "${base0C}";
|
||||
vimcmd_visual_symbol = mkChar vim "${base0D}";
|
||||
};
|
||||
|
||||
### Languages ###
|
||||
c = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
elixir = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
elm = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
haskell = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
java = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
julia = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
nodejs = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
nim = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
python = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
rust = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = "";
|
||||
};
|
||||
|
||||
scala = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
### Tools ###
|
||||
conda = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = mkFormat "$symbol$environment";
|
||||
disabled = false;
|
||||
symbol = "🅒 ";
|
||||
};
|
||||
|
||||
nix_shell = {
|
||||
style = "bg:${base02} fg:${base0C}";
|
||||
format = mkFormat " $symbol $state( \($name\)) ";
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
30
modules/home/programs/systemctl.nix
Normal file
30
modules/home/programs/systemctl.nix
Normal file
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.systemctl;
|
||||
in {
|
||||
options.marleyos.programs.systemctl.enable = lib.mkEnableOption "systemctl";
|
||||
|
||||
config = lib.mkIf (cfg.enable && pkgs.stdenv.isLinux) {
|
||||
home.shellAbbrs = rec {
|
||||
sctl = "systemctl";
|
||||
sctls = "systemctl status";
|
||||
sctle = "systemctl enable --now";
|
||||
sctld = "systemctl disable --now";
|
||||
sctlr = "systemctl restart";
|
||||
sctla = "systemctl start";
|
||||
sctlo = "systemctl stop";
|
||||
|
||||
ssctl = "sudo ${sctl}";
|
||||
ssctls = "sudo ${sctls}";
|
||||
ssctle = "sudo ${sctle}";
|
||||
ssctld = "sudo ${sctld}";
|
||||
ssctlr = "sudo ${sctlr}";
|
||||
ssctla = "sudo ${sctla}";
|
||||
ssctlo = "sudo ${sctlo}";
|
||||
};
|
||||
};
|
||||
}
|
16
modules/home/programs/tea.nix
Normal file
16
modules/home/programs/tea.nix
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.tea;
|
||||
in {
|
||||
options.marleyos.programs.tea.enable = lib.mkEnableOption "tea";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
tea
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
|
@ -1,12 +1,17 @@
|
|||
{
|
||||
marleylib,
|
||||
lib,
|
||||
config,
|
||||
osConfig,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (marleylib.module) mkEnableOption';
|
||||
|
||||
cfg = config.marleyos.programs.wget;
|
||||
osCfg = osConfig.marleyos.programs.wget;
|
||||
in {
|
||||
options.marleyos.programs.wget.enable = lib.mkEnableOption "wget";
|
||||
options.marleyos.programs.wget.enable = mkEnableOption' "wget" osCfg.enable;
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.zoxide;
|
|
@ -9,16 +9,14 @@
|
|||
inherit (marleylib.module) enabled;
|
||||
in {
|
||||
marleyos = lib.mkMerge [
|
||||
# Universal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
# Universal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
{
|
||||
programs = {
|
||||
fish = enabled;
|
||||
nh = enabled;
|
||||
};
|
||||
|
||||
services = {
|
||||
docker = enabled;
|
||||
openssh = enabled; # needed for agenix
|
||||
};
|
||||
}
|
||||
#
|
||||
|
|
|
@ -5,15 +5,9 @@
|
|||
}: let
|
||||
cfg = config.marleyos.services.openssh;
|
||||
in {
|
||||
options.marleyos.services.openssh.enable = lib.mkEnableOption "openssh";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
services.openssh.settings = {
|
||||
PermitRootLogin = "prohibit-password";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,47 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.cli;
|
||||
|
||||
inherit (lib.marleyos) enabled;
|
||||
in {
|
||||
options.marleyos.programs.cli.enable = lib.mkEnableOption "cli";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
marleyos.programs = {
|
||||
agenix = enabled;
|
||||
bat = enabled;
|
||||
# cheat = enabled;
|
||||
curl = enabled;
|
||||
eza = enabled;
|
||||
figlet = enabled;
|
||||
fish = enabled;
|
||||
fzf = enabled;
|
||||
gh = enabled;
|
||||
git = enabled;
|
||||
glow = enabled;
|
||||
gpg = enabled;
|
||||
httpie = enabled;
|
||||
hyfetch = enabled;
|
||||
journalctl = enabled;
|
||||
jq = enabled;
|
||||
just = enabled;
|
||||
less = enabled;
|
||||
man = enabled;
|
||||
neo = enabled;
|
||||
nh = enabled;
|
||||
nix-output-monitor = enabled;
|
||||
rbw = enabled;
|
||||
ripgrep = enabled;
|
||||
ssh = enabled;
|
||||
starship = enabled;
|
||||
systemctl = enabled;
|
||||
tea = enabled;
|
||||
tmux = enabled;
|
||||
wget = enabled;
|
||||
zoxide = enabled;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,17 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.rbw;
|
||||
in {
|
||||
options.marleyos.programs.rbw.enable = lib.mkEnableOption "rbw";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.rbw = {
|
||||
enable = true;
|
||||
|
||||
settings.email = "bitwarden@punkfairie.net";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,208 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkDefault;
|
||||
|
||||
cfg = config.marleyos.programs.starship;
|
||||
in {
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.starship.settings = with config.lib.stylix.colors.withHashtag; let
|
||||
mkFormat = t: " [](fg:${base02})[${t}]($style)[](fg:${base02}) ";
|
||||
langFormat = mkFormat "$symbol$version";
|
||||
in {
|
||||
format = mkDefault (lib.concatStrings [
|
||||
"$username"
|
||||
"$hostname"
|
||||
"$directory"
|
||||
"$nix_shell"
|
||||
"$git_branch"
|
||||
"$git_status"
|
||||
"$fill"
|
||||
"$c"
|
||||
"$elixir"
|
||||
"$elm"
|
||||
"$golang"
|
||||
"$haskell"
|
||||
"$java"
|
||||
"$julia"
|
||||
"$nodejs"
|
||||
"$nim"
|
||||
"$rust"
|
||||
"$scala"
|
||||
"$python"
|
||||
"$time"
|
||||
"$line_break"
|
||||
"$character"
|
||||
]);
|
||||
|
||||
username = {
|
||||
disabled = mkDefault false;
|
||||
format = mkDefault " [](fg:${base02})[ $user@]($style)";
|
||||
show_always = mkDefault true;
|
||||
style_root = mkDefault "bg:${base02} fg:${base0D}";
|
||||
style_user = mkDefault "bg:${base02} fg:${base0D}";
|
||||
};
|
||||
|
||||
hostname = {
|
||||
ssh_only = mkDefault false;
|
||||
format = mkDefault "[$hostname ]($style)[](fg:${base02}) ";
|
||||
style = mkDefault "bg:${base02} fg:${base0D}";
|
||||
};
|
||||
|
||||
directory = {
|
||||
format = mkDefault (mkFormat " $path ");
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
truncation_length = mkDefault 3;
|
||||
truncation_symbol = mkDefault "…/";
|
||||
|
||||
substitutions = {
|
||||
Documents = mkDefault "";
|
||||
Downloads = mkDefault " ";
|
||||
Music = mkDefault " ";
|
||||
Pictures = mkDefault " ";
|
||||
};
|
||||
};
|
||||
|
||||
git_branch = {
|
||||
format = mkDefault (mkFormat " $symbol $branch ");
|
||||
style = mkDefault "bg:${base02} fg:${base0C}";
|
||||
symbol = mkDefault "";
|
||||
};
|
||||
|
||||
git_status = {
|
||||
disabled = mkDefault false;
|
||||
style = mkDefault "bg:${base02} fg:${base08}";
|
||||
format = mkDefault (mkFormat "$all_status$ahead_behind");
|
||||
up_to_date = mkDefault "[ ✓ ](bg:${base02} fg:${base0D})";
|
||||
untracked = mkDefault "[?\\($count\\)](bg:${base02} fg:${base09})";
|
||||
stashed = mkDefault "[\\$](bg:${base02} fg:${base0D})";
|
||||
modified = mkDefault "[!\\($count\\)](bg:${base02} fg:${base09})";
|
||||
renamed = mkDefault "[»\\($count\\)](bg:${base02} fg:${base0D})";
|
||||
deleted = mkDefault "[✘\\($count\\)](style)";
|
||||
staged = mkDefault "[++\\($count\\)](bg:${base02} fg:${base09})";
|
||||
ahead = mkDefault "[⇡\\(\${count}\\)](bg:${base02} fg:${base0C})";
|
||||
diverged = mkDefault "⇕[\\[](bg:${base02} fg:${base0D})[⇡\\(\${ahead_count}\\)](bg:${base02} fg:${base0C})[⇣\\(\${behind_count}\\)](bg:${base02} fg:${base0A})[\\]](bg:${base02} fg:${base0D})";
|
||||
behind = mkDefault "[⇣\\(\${count}\\)](bg:${base02} fg:${base0A})";
|
||||
};
|
||||
|
||||
fill = {
|
||||
style = mkDefault "fg:${base02}";
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
time = {
|
||||
disabled = mkDefault false;
|
||||
format = mkDefault (mkFormat " $time ");
|
||||
style = mkDefault "bg:${base02} fg:${base0A}";
|
||||
time_format = mkDefault "%I:%M%P";
|
||||
use_12hr = mkDefault true;
|
||||
};
|
||||
|
||||
character = let
|
||||
vim = "";
|
||||
mkChar = sym: col: " [${sym}](fg:${col}) [](fg:${base0C})";
|
||||
in {
|
||||
success_symbol = mkChar "" "${base0D}";
|
||||
error_symbol = mkChar "" "${base08}";
|
||||
vimcmd_symbol = mkChar vim "${base0A}";
|
||||
vimcmd_replace_one_symbol = mkChar vim "${base0C}";
|
||||
vimcmd_replace_symbol = mkChar vim "${base0C}";
|
||||
vimcmd_visual_symbol = mkChar vim "${base0D}";
|
||||
};
|
||||
|
||||
### Languages ###
|
||||
c = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
elixir = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
elm = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
haskell = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
java = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
julia = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
nodejs = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
nim = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
python = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
|
||||
rust = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault "";
|
||||
};
|
||||
|
||||
scala = {
|
||||
style = "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault langFormat;
|
||||
disabled = false;
|
||||
symbol = " ";
|
||||
};
|
||||
|
||||
### Tools ###
|
||||
conda = {
|
||||
style = mkDefault "bg:${base02} fg:${base0B}";
|
||||
format = mkDefault (mkFormat "$symbol$environment");
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault "🅒 ";
|
||||
};
|
||||
|
||||
nix_shell = {
|
||||
style = "bg:${base02} fg:${base0C}";
|
||||
format = mkDefault (mkFormat " $symbol $state( \($name\)) ");
|
||||
disabled = mkDefault false;
|
||||
symbol = mkDefault " ";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
cfg = config.marleyos.programs.systemctl;
|
||||
in {
|
||||
options.marleyos.programs.systemctl.enable = lib.mkEnableOption "systemctl";
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
home.shellAbbrs = {
|
||||
sctl = "sudo systemctl";
|
||||
sctls = "sudo systemctl status";
|
||||
sctle = "sudo systemctl enable --now";
|
||||
sctld = "sudo systemctl disable --now";
|
||||
sctlr = "sudo systemctl restart";
|
||||
sctla = "sudo systemctl start";
|
||||
sctlo = "sudo systemctl stop";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
inherit (lib) mkEnableOption mkIf;
|
||||
|
||||
cfg = config.marleyos.programs.tea;
|
||||
in
|
||||
{
|
||||
options.marleyos.programs.tea.enable = mkEnableOption "tea";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
tea
|
||||
];
|
||||
};
|
||||
}
|
Loading…
Reference in a new issue