]>
glassweightruler.freedombox.rocks Git - Ventoy.git/blob - IMG/cpio/ventoy/hook/debian/porteus-hook.sh
2 #************************************************************************************
3 # Copyright (c) 2020, longpanda <admin@ventoy.net>
5 # This program is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU General Public License as
7 # published by the Free Software Foundation; either version 3 of the
8 # License, or (at your option) any later version.
10 # This program is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 # General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, see <http://www.gnu.org/licenses/>.
18 #************************************************************************************
21 $SED "/searching *for *\$SGN *file/i\ $BUSYBOX_PATH/sh $VTOY_PATH/hook/debian/porteus-disk.sh" -i $1
22 $SED "/searching *for *\$CFG *file/i\ $BUSYBOX_PATH/sh $VTOY_PATH/hook/debian/porteus-disk.sh" -i $1
25 vtPath
=$($VTOY_PATH/tool/vtoydump -p $VTOY_PATH/ventoy_os_param)
26 echo $vtPath | $GREP -q " "
29 $GREP -q exfat
/proc
/filesystems
32 echo "_vtRet1=$_vtRet1 _vtRet2=$_vtRet2 ..." >> $VTLOG
34 if [ $_vtRet1 -ne 0 -a $_vtRet2 -eq 0 ]; then
36 $GREP '`value from`' /usr
/* -r | $AWK -F: '{print $1}' | while read vtline
; do
37 echo "hooking $vtline ..." >> $VTLOG
38 $SED "s#\`value from\`#$vtPath#g" -i $vtline
42 if [ $vtFindFlag -eq 0 ]; then
43 if $GREP -q '`value from`' /linuxrc
; then
44 if $GREP -q "searching *for *\$CFG *file" /linuxrc
; then
45 echo "hooking linuxrc CFG..." >> $VTLOG
46 $SED "/searching *for *\$CFG *file/i$BUSYBOX_PATH/sh $VTOY_PATH/hook/debian/porteus-path.sh" -i /linuxrc
47 $SED "/searching *for *\$CFG *file/iFROM=\$(cat /porteus-from)" -i /linuxrc
48 $SED "/searching *for *\$CFG *file/iISO=\$(cat /porteus-from)" -i /linuxrc
51 echo "hooking linuxrc SGN..." >> $VTLOG
52 $SED "/searching *for *\$SGN *file/i$BUSYBOX_PATH/sh $VTOY_PATH/hook/debian/porteus-path.sh" -i /linuxrc
53 $SED "/searching *for *\$SGN *file/iFROM=\$(cat /porteus-from)" -i /linuxrc
54 $SED "/searching *for *\$SGN *file/iISO=\$(cat /porteus-from)" -i /linuxrc
61 for vtfile
in '/linuxrc' '/init'; do
62 if [ -e $vtfile ]; then
63 if ! $GREP -q ventoy
$vtfile; then
64 echo "hooking disk $vtfile ..." >> $VTLOG
72 # replace blkid in system
73 vtblkid
=$($BUSYBOX_PATH/which blkid)
74 $BUSYBOX_PATH/rm -f $vtblkid
75 $BUSYBOX_PATH/cp -a $BUSYBOX_PATH/blkid
$vtblkid