diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix
index 01b0e20394232ec8f04c3c96df312ca5f79b5f6d..9c851e37170291fdab41a3fa8f18ae42e9f4820b 100644
--- a/etc/completion/bash/guix
+++ b/etc/completion/bash/guix
@@ -154,7 +154,10 @@ _guix_complete ()
 		fi
 	    elif _guix_is_command "system"
 	    then
-		_guix_complete_subcommand
+		case $COMP_CWORD in
+		    2) _guix_complete_subcommand;;
+		    *) _guix_complete_file;; # TODO: restrict to *.scm
+		esac
 	    elif _guix_is_command "import"
 	    then
 		_guix_complete_subcommand