diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2013-04-07 16:00:03 +0200 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2013-04-07 16:05:21 +0200 |
commit | 97a2d2414a7f9d4abce3a40320fe9e0883155884 (patch) | |
tree | 56239ed4a2a4010e4e92b2634f2cafbe8ae7ee8f | |
parent | eebfd9a30f7d7f2c7fa98b08dcf7b062a29c2377 (diff) |
mkarchroot: Fix creation of btrfs snapshot and remove force option
-rw-r--r-- | bash_completion.in | 2 | ||||
-rw-r--r-- | mkarchroot.in | 20 | ||||
-rw-r--r-- | zsh_completion.in | 1 |
3 files changed, 8 insertions, 15 deletions
diff --git a/bash_completion.in b/bash_completion.in index cd959fc..9395d3a 100644 --- a/bash_completion.in +++ b/bash_completion.in @@ -53,7 +53,7 @@ _mkarchroot() { case $cur in -*) - COMPREPLY=( $( compgen -W '-C -M -c -f -h -n -r -u' -- "$cur" ) ) + COMPREPLY=( $( compgen -W '-C -M -c -h -n -r -u' -- "$cur" ) ) ;; *) _filedir diff --git a/mkarchroot.in b/mkarchroot.in index 6598089..5c1298b 100644 --- a/mkarchroot.in +++ b/mkarchroot.in @@ -12,7 +12,6 @@ m4_include(lib/common.sh) CHROOT_VERSION='v3' -FORCE='n' RUN='' NOCOPY='n' @@ -26,7 +25,6 @@ usage() { echo ' options:' echo ' -r <app> Run "app" within the context of the chroot' echo ' -u Update the chroot via pacman' - echo ' -f Force overwrite of files in the working-dir' echo ' -C <file> Location of a pacman config file' echo ' -M <file> Location of a makepkg config file' echo ' -n Do not copy config files into the chroot' @@ -39,7 +37,6 @@ while getopts 'r:ufnhC:M:c:' arg; do case "${arg}" in r) RUN="$OPTARG" ;; u) RUN='pacman -Syu --noconfirm' ;; - f) FORCE='y' ;; C) pac_conf="$OPTARG" ;; M) makepkg_conf="$OPTARG" ;; n) NOCOPY='y' ;; @@ -152,18 +149,18 @@ if [[ -n $RUN ]]; then # }}} else # {{{ build chroot - if [[ -e $working_dir && $FORCE = 'n' ]]; then - die "Working directory '${working_dir}' already exists - try using -f" + if [[ -e $working_dir ]]; then + die "Working directory '${working_dir}' already exists" fi - if [[ ! -d "${working_dir}" ]]; then - mkdir -p "${working_dir}" - fi + mkdir -p "${working_dir}" if [[ "$(stat -f -c %T "${working_dir}")" == btrfs ]]; then - if { type -P btrfs && btrfs subvolume create "${working_dir}"; } &>/dev/null; then - chmod 0755 "${working_dir}" + rmdir "${working_dir}" + if ! btrfs subvolume create "${working_dir}"; then + die "Couldn't create subvolume for '${working_dir}'" fi + chmod 0755 "${working_dir}" fi chroot_lock @@ -173,9 +170,6 @@ else pacargs+=("--config=${pac_conf}") fi - if [[ $FORCE = 'y' ]]; then - pacargs+=("--force") - fi if ! pacstrap -GMcd "${working_dir}" "${pacargs[@]}" "$@"; then die 'Failed to install all packages' fi diff --git a/zsh_completion.in b/zsh_completion.in index 727112a..c3abdfd 100644 --- a/zsh_completion.in +++ b/zsh_completion.in @@ -42,7 +42,6 @@ _makechrootpkg_args=( _mkarchroot_args=( '-r[Run a program within the context of the chroot]:app' '-u[Update the chroot via pacman]' - '-f[Force overwrite of files in the working-dir]' '-C[Location of a pacman config file]:pacman_config:_files' '-M[Location of a makepkg config file]:makepkg_config:_files' '-n[Do not copy config files into the chroot]' |