Compare commits

..

2 commits

Author SHA1 Message Date
c3ee5f00c9
Change nixpkgs to nixos branch
This corrects a mistake I've had in here for a while thanks to using
home-manager on MacOS first. Now Linux nixpkgs is the default, and
darwin-specific modules get darwin nixpkgs special for them.
2025-06-28 14:46:21 -05:00
b2ed56901a
refactor: Move starship config to its own file 2025-06-25 16:27:38 -05:00
4 changed files with 80 additions and 60 deletions

25
flake.lock generated
View file

@ -111,7 +111,7 @@
"nix-darwin": { "nix-darwin": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs-darwin"
] ]
}, },
"locked": { "locked": {
@ -147,11 +147,27 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1748022455, "lastModified": 1750969886,
"narHash": "sha256-XiE6W4I2cB+b/mYdkdrW70M2KPqj5nY0VHw3+i6duvs=", "narHash": "sha256-zW/OFnotiz/ndPFdebpo3X0CrbVNf22n4DjN2vxlb58=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "85464f6a9651821d209a37a90a2f05f1fc981941", "rev": "a676066377a2fe7457369dd37c31fd2263b662f4",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-25.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-darwin": {
"locked": {
"lastModified": 1750903198,
"narHash": "sha256-63IOb2kjG8VERVnwgoWSrN13bmKeQVoDINOu10/h8iw=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "ca5542ac5290cdfe15e36f82fb5de02764ade1f0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -229,6 +245,7 @@
"nix-darwin": "nix-darwin", "nix-darwin": "nix-darwin",
"nix-flatpak": "nix-flatpak", "nix-flatpak": "nix-flatpak",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixpkgs-darwin": "nixpkgs-darwin",
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"nur": "nur", "nur": "nur",
"plasma-manager": "plasma-manager", "plasma-manager": "plasma-manager",

View file

@ -3,7 +3,8 @@
inputs = { inputs = {
# Specify the source of Home Manager and Nixpkgs. # Specify the source of Home Manager and Nixpkgs.
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-25.05-darwin"; nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
nixpkgs-darwin.url = "github:nixos/nixpkgs/nixpkgs-25.05-darwin";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable";
home-manager = { home-manager = {
url = "github:nix-community/home-manager/release-25.05"; url = "github:nix-community/home-manager/release-25.05";
@ -15,7 +16,7 @@
}; };
nix-darwin = { nix-darwin = {
url = "github:LnL7/nix-darwin/nix-darwin-25.05"; url = "github:LnL7/nix-darwin/nix-darwin-25.05";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs-darwin";
}; };
rycee-nurpkgs = { rycee-nurpkgs = {
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons"; url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
@ -33,8 +34,9 @@
}; };
}; };
outputs = { self, nix-darwin, nixpkgs, nixpkgs-unstable, home-manager, agenix outputs = { self, nix-darwin, nixpkgs, nixpkgs-darwin, nixpkgs-unstable
, rycee-nurpkgs, nur, nix-flatpak, plasma-manager, ... }: , home-manager, agenix, rycee-nurpkgs, nur, nix-flatpak, plasma-manager, ...
}:
let let
mkHomeConfiguration = { hostname, arch ? "x86_64", os ? "linux" mkHomeConfiguration = { hostname, arch ? "x86_64", os ? "linux"
, desktop ? false, extraModules ? [ ] }: , desktop ? false, extraModules ? [ ] }:

View file

@ -10,6 +10,7 @@ let
} }
''; '';
starship-config = import ./../programs/starship.nix;
in { in {
home = { home = {
stateVersion = "23.11"; stateVersion = "23.11";
@ -144,58 +145,7 @@ in {
''; '';
}; };
pandoc = { enable = true; }; pandoc = { enable = true; };
starship = { starship = starship-config { inherit lib; };
enable = true;
enableBashIntegration = true;
enableZshIntegration = true;
settings = {
add_newline = false;
format = lib.concatStrings [
"$os"
" "
"($container )"
"\\["
"([$username](bold yellow)@[$hostname](bold red) )"
"[$directory](cyan)"
"($git_branch$git_commit$git_state$git_metrics$git_status)"
"\\] "
"($package)"
"($conda$direnv$julia$nix_shell$nodejs$python$quarto$rlang$ruby)"
"($shell)"
"$character"
];
right_format = lib.concatStrings [ "$cmd_duration" "$battery" ];
character = {
success_symbol = "[\\$](bold green)";
error_symbol = "[\\$](bold red)";
};
git_metrics = { disabled = false; };
git_status = {
# Remove trailing space from format string
format = "([\\[$all_status$ahead_behind\\]]($style))";
};
hostname = { format = "[$hostname]($style)"; };
shell = {
# Show which shell if not using zsh (the default)
disabled = false;
zsh_indicator = "";
style = "yellow bold";
};
os = {
disabled = false;
symbols = {
AlmaLinux = "";
Alpine = "";
CentOS = "";
Debian = "";
Fedora = "";
Macos = "";
};
};
username = { format = "[$user]($style)"; };
};
};
yt-dlp = { enable = true; }; yt-dlp = { enable = true; };
zsh = { zsh = {
enable = true; enable = true;

51
programs/starship.nix Normal file
View file

@ -0,0 +1,51 @@
{ lib }: {
enable = true;
enableBashIntegration = true;
enableZshIntegration = true;
settings = {
add_newline = false;
format = lib.concatStrings [
"$os"
" "
"($container )"
"\\["
"([$username](bold yellow)@[$hostname](bold red) )"
"[$directory](cyan)"
"($git_branch$git_commit$git_state$git_metrics$git_status)"
"\\] "
"($package)"
"($conda$direnv$julia$nix_shell$nodejs$python$quarto$rlang$ruby)"
"($shell)"
"$character"
];
right_format = lib.concatStrings [ "$cmd_duration" "$battery" ];
character = {
success_symbol = "[\\$](bold green)";
error_symbol = "[\\$](bold red)";
};
git_metrics = { disabled = false; };
git_status = {
# Remove trailing space from format string
format = "([\\[$all_status$ahead_behind\\]]($style))";
};
hostname = { format = "[$hostname]($style)"; };
os = {
disabled = false;
symbols = {
AlmaLinux = "";
Alpine = "";
CentOS = "";
Debian = "";
Fedora = "";
Macos = "";
};
};
shell = {
# Show which shell if not using zsh (the default)
disabled = false;
zsh_indicator = "";
style = "yellow bold";
};
username = { format = "[$user]($style)"; };
};
}