X-Git-Url: https://ruderich.org/simon/gitweb/?p=config%2Fdotfiles.git;a=blobdiff_plain;f=archive.sh;h=4de7061021dce5ac691a1e9ed45b8c5159bdb361;hp=4a205a2d8da307f46aa2aadc9a4dd2d89b957059;hb=dab786b7775766e62acd77e57794d8425a5e6e35;hpb=c9709be14cb6f88c5c8c41b26c805d0acfd4d45b diff --git a/archive.sh b/archive.sh index 4a205a2..4de7061 100755 --- a/archive.sh +++ b/archive.sh @@ -5,22 +5,42 @@ # # Usage: ./archive.sh +# Copyright (C) 2010-2018 Simon Ruderich +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +set -eu git_clone() { - git clone "$1" "$2" > /dev/null - cwd=`pwd` - cd "$2" && git remote rm origin && git gc && cd "$cwd" + git clone "$1" "$2" >/dev/null + ( cd "$2" && git remote rm origin && git gc ) } + +# Don't overwrite an existing file/directory. +if test -e tmp; then + echo 'tmp/ already exists!' + exit 1 +fi + git_clone . tmp/dotfiles -for name in browser shell vcs vim x11; do - echo cloning $name to tmp/ - git_clone $name tmp/dotfiles/$name -done - -echo creating dotfiles.tar -tar cf tmp/dotfiles.tar -C tmp dotfiles -echo moving dotfiles.tar to . -mv tmp/dotfiles.tar . + +archive=dotfiles.tar.gz +echo "creating $archive" +tar cf tmp/$archive -C tmp -z dotfiles +echo "moving $archive to ." +mv tmp/$archive . rm -rf tmp