diff --git a/docs/man-home-manager.xml b/docs/man-home-manager.xml
index 513973e98..e83cab898 100644
--- a/docs/man-home-manager.xml
+++ b/docs/man-home-manager.xml
@@ -179,6 +179,10 @@
--no-out-link
+
+ --refresh
+
+
@@ -611,6 +615,18 @@
+
+
+
+
+
+
+ Passed on to
+ nix-build
+ 1
+
+
+
diff --git a/home-manager/completion.bash b/home-manager/completion.bash
index c55122991..152f8c325 100644
--- a/home-manager/completion.bash
+++ b/home-manager/completion.bash
@@ -296,7 +296,7 @@ _home-manager_completions ()
"-L" "--print-build-logs" \
"--show-trace" "--substitute" "--builders" "--version" \
"--update-input" "--override-input" "--experimental-features" \
- "--extra-experimental-features" )
+ "--extra-experimental-features" "--refresh")
# ^ « home-manager »'s options.
diff --git a/home-manager/completion.fish b/home-manager/completion.fish
index 58ce386e6..3781d3a71 100644
--- a/home-manager/completion.fish
+++ b/home-manager/completion.fish
@@ -69,3 +69,4 @@ complete -c home-manager -f -l "update-input"
complete -c home-manager -f -l "override-input"
complete -c home-manager -f -l "experimental-features"
complete -c home-manager -f -l "extra-experimental-features"
+complete -c home-manager -f -l "refresh" -d "Consider all previously downloaded files out-of-date"
diff --git a/home-manager/completion.zsh b/home-manager/completion.zsh
index 3babc1fee..c5d3b4936 100644
--- a/home-manager/completion.zsh
+++ b/home-manager/completion.zsh
@@ -63,6 +63,7 @@ case "$state" in
'--show-trace[show trace]' \
'--substitute[substitute]' \
'--builders[builders]:SPEC:()' \
+ '--refresh[refresh]' \
'--override-input[override flake input]:NAME VALUE:()' \
'--update-input[update flake input]:NAME:()' \
'--experimental-features[set experimental Nix features]:VALUE:()' \
diff --git a/home-manager/home-manager b/home-manager/home-manager
index 89f58c4d0..9e0f4ae0e 100644
--- a/home-manager/home-manager
+++ b/home-manager/home-manager
@@ -556,6 +556,7 @@ function doHelp() {
echo " --no-out-link Do not create a symlink to the output path"
echo " --no-write-lock-file"
echo " --builders VALUE"
+ echo " --refresh Consider all previously downloaded files out-of-date"
echo
echo "Commands"
echo
@@ -628,7 +629,7 @@ while [[ $# -gt 0 ]]; do
FLAKE_ARG="$1"
shift
;;
- --recreate-lock-file|--no-update-lock-file|--no-write-lock-file|--no-registries|--commit-lock-file)
+ --recreate-lock-file|--no-update-lock-file|--no-write-lock-file|--no-registries|--commit-lock-file|--refresh)
PASSTHROUGH_OPTS+=("$opt")
;;
--update-input)