X-Git-Url: https://iankelling.org/git/?p=distro-setup;a=blobdiff_plain;f=keyscript-on;h=6307b3636153c1a7a2c2d77f811b81ac6229d7ae;hp=e62c7ed63c14d4b6f1a9b50965a0511773d4aebf;hb=79b274fcd8bfa556133ab13270e84b40aebe8468;hpb=343a048be4b32d18540c6531048d2b9a006774ae diff --git a/keyscript-on b/keyscript-on index e62c7ed..6307b36 100755 --- a/keyscript-on +++ b/keyscript-on @@ -1,43 +1,34 @@ #!/bin/bash -# Copyright (C) 2016 Ian Kelling - -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at - -# http://www.apache.org/licenses/LICENSE-2.0 - -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. +# Copyright (C) 2019 Ian Kelling +# SPDX-License-Identifier: AGPL-3.0-or-later set -eE -o pipefail trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?"' ERR [[ $EUID == 0 ]] || exec sudo -E "${BASH_SOURCE[0]}" "$@" if [[ $- != *i* ]]; then - exec &>>/var/log/keyscript-on.log - echo "$0: starting. $(date)" + exec &>>/var/log/keyscript-on.log + echo "$0: starting. $(date)" fi rootn=1 sed="sed --follow-symlinks" if [[ ! -e /tmp/keyscript-off ]]; then - if [[ $($sed -rn 's/^ID=(.*)/\1/p' /etc/os-release) == arch ]]; then - if ! grep -q '^\s*FILES=' /etc/mkinitcpio.conf; then - $sed -ri 's/^#(\s*FILES=.*)/\1/' /etc/mkinitcpio.conf # uncomment - mkinitcpio -p linux - fi - else - x=/root/keyscript - if grep -q "${x}-manual," /etc/crypttab; then - $sed -i "s#${x}-manual,#${x},#" /etc/crypttab - update-initramfs -u - fi + if [[ $($sed -rn 's/^ID=(.*)/\1/p' /etc/os-release) == arch ]]; then + if ! grep -q '^\s*FILES=' /etc/mkinitcpio.conf; then + $sed -ri 's/^#(\s*FILES=.*)/\1/' /etc/mkinitcpio.conf # uncomment + mkinitcpio -p linux + fi + else + x=decrypt_keyctl + # old name. can remove this sometime after aug 2019 + $sed -i "s#/root/keyscript-manual,#${x},#" /etc/crypttab + if grep -q "${x}," /etc/crypttab; then + $sed -i "s#${x},#/root/keyscript,#" /etc/crypttab + update-initramfs -u fi + fi fi # switch to easy or hard login pass which is the same as luks f=/q/root/shadow/traci-simple