Compare commits
2 Commits
c6862c78db
...
c986ac4bf7
| Author | SHA1 | Date | |
|---|---|---|---|
| c986ac4bf7 | |||
| b25430abc9 |
54
flake.lock
generated
54
flake.lock
generated
@ -247,11 +247,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772633327,
|
"lastModified": 1773286336,
|
||||||
"narHash": "sha256-jl+DJB2DUx7EbWLRng+6HNWW/1/VQOnf0NsQB4PlA7I=",
|
"narHash": "sha256-+yFtmhOHterllxWmV6YbdevTXpJdGS0mS0UmJ0k9fh0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "5a75730e6f21ee624cbf86f4915c6e7489c74acc",
|
"rev": "7d06e0cefe6e4a1e85b2b3274dcb0b3da242a557",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -294,11 +294,11 @@
|
|||||||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772698812,
|
"lastModified": 1773303738,
|
||||||
"narHash": "sha256-7+K/VaZ7TXUeUGSYshg8wC3UsRZHB+M4x6r38Q1B79c=",
|
"narHash": "sha256-qrl74wNFMTUzA8z6nSEWNjQcJI/MQEWdWu2Wn+u4Ctg=",
|
||||||
"owner": "sodiboo",
|
"owner": "sodiboo",
|
||||||
"repo": "niri-flake",
|
"repo": "niri-flake",
|
||||||
"rev": "5641625ef950f024e3e0e3f38bb91f876290c0be",
|
"rev": "329df7671b7859abd1cbca5d5af296ed6dc22b46",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -327,11 +327,11 @@
|
|||||||
"niri-unstable": {
|
"niri-unstable": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772207631,
|
"lastModified": 1773130184,
|
||||||
"narHash": "sha256-Jkkg+KqshFO3CbTszVVpkKN2AOObYz+wMsM3ONo1z5g=",
|
"narHash": "sha256-3bwx4WqCB06yfQIGB+OgIckOkEDyKxiTD5pOo4Xz2rI=",
|
||||||
"owner": "YaLTeR",
|
"owner": "YaLTeR",
|
||||||
"repo": "niri",
|
"repo": "niri",
|
||||||
"rev": "e708f546153f74acf33eb183b3b2992587a701e5",
|
"rev": "b07bde3ee82dd73115e6b949e4f3f63695da35ea",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -357,11 +357,11 @@
|
|||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771969195,
|
"lastModified": 1772972630,
|
||||||
"narHash": "sha256-qwcDBtrRvJbrrnv1lf/pREQi8t2hWZxVAyeMo7/E9sw=",
|
"narHash": "sha256-mUJxsNOrBMNOUJzN0pfdVJ1r2pxeqm9gI/yIKXzVVbk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "41c6b421bdc301b2624486e11905c9af7b8ec68e",
|
"rev": "3966ce987e1a9a164205ac8259a5fe8a64528f72",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -372,11 +372,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772721746,
|
"lastModified": 1773304180,
|
||||||
"narHash": "sha256-GBuNOTwrTEDkkCxZIt31/4vOOrk6EN9WJRX5Iw6rSgo=",
|
"narHash": "sha256-e/ctVWU2EYXBOsJHU76lN6vqugD8u1Xl20MJ+A+bPuE=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "954e9a9127b88c528b232c48142345c8d845951a",
|
"rev": "d5eb8dca28f5be580c26f8fcb2ec4ec4215e9102",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -388,11 +388,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772598333,
|
"lastModified": 1773068389,
|
||||||
"narHash": "sha256-YaHht/C35INEX3DeJQNWjNaTcPjYmBwwjFJ2jdtr+5U=",
|
"narHash": "sha256-vMrm7Pk2hjBRPnCSjhq1pH0bg350Z+pXhqZ9ICiqqCs=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "fabb8c9deee281e50b1065002c9828f2cf7b2239",
|
"rev": "44bae273f9f82d480273bab26f5c50de3724f52f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -404,11 +404,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772624091,
|
"lastModified": 1773122722,
|
||||||
"narHash": "sha256-QKyJ0QGWBn6r0invrMAK8dmJoBYWoOWy7lN+UHzW1jc=",
|
"narHash": "sha256-FIqHByVqxCprNjor1NqF80F2QQoiiyqanNNefdlvOg4=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "80bdc1e5ce51f56b19791b52b2901187931f5353",
|
"rev": "62dc67aa6a52b4364dd75994ec00b51fbf474e50",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -495,11 +495,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772695593,
|
"lastModified": 1773291133,
|
||||||
"narHash": "sha256-kS8IgyBauCuOIgUcX4ajko6Szn4FPLCfwcEGfTv7RDc=",
|
"narHash": "sha256-9Odn+7x5l90HnXRY7MwVYcX+8CYAo+ldJ+GOVs7e2T8=",
|
||||||
"owner": "outfoxxed",
|
"owner": "outfoxxed",
|
||||||
"repo": "quickshell",
|
"repo": "quickshell",
|
||||||
"rev": "5721955686a474b814c27bc0ec743f86e473ac4f",
|
"rev": "9a9c60525014bcdf83aace03db4b53c19168edcc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -728,11 +728,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772638901,
|
"lastModified": 1773290887,
|
||||||
"narHash": "sha256-kzAyU054Mzpnzgx475MgmcjYJXxXWQWBG7LLsYtHXKw=",
|
"narHash": "sha256-L1yMYmFffHfZNP+hKJGRBmrFKkn/VDhu7jEbVftBQuM=",
|
||||||
"owner": "0xc000022070",
|
"owner": "0xc000022070",
|
||||||
"repo": "zen-browser-flake",
|
"repo": "zen-browser-flake",
|
||||||
"rev": "75de12ddd50616a3628499ec18b648bceb88eb0d",
|
"rev": "9346698c4562819f61b4e5097151ec0b17729fab",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@ -161,13 +161,64 @@ in
|
|||||||
echo -e "Updating flake and rebuilding system for current host: $HOST on generation: $YELLOW$geno$NOCOLOR"
|
echo -e "Updating flake and rebuilding system for current host: $HOST on generation: $YELLOW$geno$NOCOLOR"
|
||||||
cd "$HOME/$PROJECT" || { echo "Error: Could not change to $HOME/$PROJECT"; exit 1; }
|
cd "$HOME/$PROJECT" || { echo "Error: Could not change to $HOME/$PROJECT"; exit 1; }
|
||||||
|
|
||||||
echo "Updating flake..."
|
# --- Selective flake update ---
|
||||||
if nix flake update; then
|
read -rp "Update [a]ll inputs or [s]elect manually? (a/s): " choice
|
||||||
|
|
||||||
|
case "$choice" in
|
||||||
|
a|A)
|
||||||
|
echo "Updating all inputs..."
|
||||||
|
if nix flake update --flake .; then
|
||||||
echo "✓ Flake updated successfully"
|
echo "✓ Flake updated successfully"
|
||||||
else
|
else
|
||||||
echo "✗ Flake update failed" >&2
|
echo "✗ Flake update failed" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
;;
|
||||||
|
s|S)
|
||||||
|
echo "Fetching available updates (this may take a moment)..."
|
||||||
|
TEMP_LOCK=$(mktemp)
|
||||||
|
trap 'rm -f "$TEMP_LOCK"' EXIT
|
||||||
|
|
||||||
|
nix flake update --output-lock-file "$TEMP_LOCK" --flake . 2>/dev/null
|
||||||
|
|
||||||
|
outdated=$(jq -r --slurpfile new "$TEMP_LOCK" '
|
||||||
|
.nodes as $old |
|
||||||
|
$new[0].nodes as $newn |
|
||||||
|
($old | keys[]) |
|
||||||
|
select(. != "root") |
|
||||||
|
select(
|
||||||
|
($old[.].locked.lastModified // 0) !=
|
||||||
|
($newn[.].locked.lastModified // 0)
|
||||||
|
)
|
||||||
|
' flake.lock)
|
||||||
|
|
||||||
|
if [[ -z "$outdated" ]]; then
|
||||||
|
echo "✓ All inputs are already up to date, skipping flake update."
|
||||||
|
else
|
||||||
|
echo
|
||||||
|
echo "Updates available for:"
|
||||||
|
printf '%s\n' "$outdated"
|
||||||
|
echo
|
||||||
|
echo "Tab to select, Enter to update, Esc to cancel."
|
||||||
|
selected=$(printf '%s\n' "$outdated" | fzf --multi) || {
|
||||||
|
echo "No inputs selected, skipping flake update."
|
||||||
|
selected=""
|
||||||
|
}
|
||||||
|
if [[ -n "$selected" ]]; then
|
||||||
|
if nix flake update --flake . $selected; then
|
||||||
|
echo "✓ Flake updated successfully"
|
||||||
|
else
|
||||||
|
echo "✗ Flake update failed" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Invalid choice, skipping flake update."
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
# --- End selective flake update ---
|
||||||
|
|
||||||
|
|
||||||
current=""
|
current=""
|
||||||
|
|||||||
@ -45,6 +45,8 @@
|
|||||||
rocmPackages.rocm-runtime #AMD ROCm runtime
|
rocmPackages.rocm-runtime #AMD ROCm runtime
|
||||||
ripgrep #Alternative to grep search for text in files
|
ripgrep #Alternative to grep search for text in files
|
||||||
pipewire #Multimedia handling
|
pipewire #Multimedia handling
|
||||||
|
fzf #Needed for nix-selective update tool
|
||||||
|
jq #Needed for nix-selective update tool
|
||||||
distrobox
|
distrobox
|
||||||
dbus
|
dbus
|
||||||
cifs-utils
|
cifs-utils
|
||||||
|
|||||||
Reference in New Issue
Block a user