nix-prefetch-git: fix handling of submodules with spaces

The script would parse the output of `git submodule status` but
didn't handle paths with spaces in them. This would result in the
following error when trying to determine the URL of the submodule:

error: key does not contain a section: .url
This commit is contained in:
Lionello Lunesu 2018-05-04 07:41:06 +08:00
parent cc8c33e159
commit 9fe26eed9e

View File

@ -185,7 +185,7 @@ init_submodules(){
# checkout each submodule # checkout each submodule
hash=$(echo "$l" | awk '{print $1}' | tr -d '-') hash=$(echo "$l" | awk '{print $1}' | tr -d '-')
dir=$(echo "$l" | awk '{print $2}') dir=$(echo "$l" | sed -n 's/^ \{0,1\}[^ ]* \(.*\) ([^ ]*)$/\1/p')
name=$( name=$(
git config -f .gitmodules --get-regexp submodule\..*\.path | git config -f .gitmodules --get-regexp submodule\..*\.path |
sed -n "s,^\(.*\)\.path $dir\$,\\1,p") sed -n "s,^\(.*\)\.path $dir\$,\\1,p")