Merge branch 'release-2.0.4'
This commit is contained in:
commit
ffdab66b35
@ -1,6 +1,6 @@
|
|||||||
Package: remaster
|
Package: remaster
|
||||||
Source: remaster
|
Source: remaster
|
||||||
Version: 2.0.2
|
Version: 2.0.4
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Maintainer: 6543 <6543@obermui.de>
|
Maintainer: 6543 <6543@obermui.de>
|
||||||
Installed-Size: <SIZE>
|
Installed-Size: <SIZE>
|
||||||
|
@ -12,6 +12,7 @@ The aim of this Project is to create a daemon for a server, witch update live sy
|
|||||||
- wget
|
- wget
|
||||||
- sed
|
- sed
|
||||||
- sendemail
|
- sendemail
|
||||||
|
- curl
|
||||||
|
|
||||||
## To Do
|
## To Do
|
||||||
|
|
||||||
|
@ -18,3 +18,15 @@
|
|||||||
|
|
||||||
2018-05-13 - 2.0.2
|
2018-05-13 - 2.0.2
|
||||||
* hotfix-2.0.2 ( create release folder if not exist )
|
* hotfix-2.0.2 ( create release folder if not exist )
|
||||||
|
|
||||||
|
2018-05-20 - 2.0.3
|
||||||
|
* make email, proxy optional
|
||||||
|
* change Strukture.md
|
||||||
|
* add config check
|
||||||
|
* some help scripts
|
||||||
|
|
||||||
|
2018-05-22 - 2.0.4
|
||||||
|
* add iso_source as URL
|
||||||
|
* restructure code
|
||||||
|
* use proj templates
|
||||||
|
* some help scripts
|
||||||
|
123
doc/Strukture.md
123
doc/Strukture.md
@ -1,28 +1,113 @@
|
|||||||
# Src
|
# 1. Starte "remaster"
|
||||||
|
|
||||||
raw scripts ..
|
## 1.1 Lade Grundfunctionen [-> #functions]
|
||||||
|
|
||||||
## functions
|
## 1.2 Überprüfe ...
|
||||||
|
* auf Updates
|
||||||
|
* auf Rechte
|
||||||
|
|
||||||
- creat iso
|
## 1.3 Lade Richtige Einstellungen [-> #config]
|
||||||
- burn cd ...
|
* Lade /etc/remaster/<Conf>
|
||||||
- clean workspace ...
|
* Überprüfe Conf. (Proj Exist; Mods Exist; ...)
|
||||||
|
|
||||||
|
## 1.4 Lade Proj-Func [-> #projects]
|
||||||
|
* Überlade nach Abhängigkeit
|
||||||
|
* (z.B. ubuntu.16.04 -> ubuntu -> debian)
|
||||||
|
* Prüfe Conf. (Proj Conform)
|
||||||
|
|
||||||
## distros
|
## 1.5 Lade $n Mods (optional) [-> #mods]
|
||||||
|
* Überprüfen
|
||||||
|
* Spechern in MOD_LST
|
||||||
|
|
||||||
scripts vor distros
|
# 2. Init Chroot
|
||||||
- update
|
|
||||||
- set network settings
|
|
||||||
- set OS settings
|
|
||||||
|
|
||||||
## mods
|
## 2.1 Dateien Entpacken
|
||||||
- for example: install & enable xrdp
|
* ISO
|
||||||
- set default passwd
|
* Squashfs
|
||||||
- ...
|
|
||||||
|
|
||||||
## web
|
## 2.2 Config für Chroot (chroot_initial)
|
||||||
placeholder for webfiles ...
|
* (lxc-conf / tmpdir)
|
||||||
|
* Netzwerk
|
||||||
|
|
||||||
## pxe
|
## 2.3 Starte Chroot
|
||||||
placeholder for pxefiles ...
|
* (lxc-start / mount ...)
|
||||||
|
|
||||||
|
# 3. Modivikationen
|
||||||
|
|
||||||
|
## 3.1 Netzwerk
|
||||||
|
|
||||||
|
## 3.2 Proj-Spez.
|
||||||
|
* (z.B. Desinfect: conky_info)
|
||||||
|
|
||||||
|
## 3.3 Packet Mgr
|
||||||
|
* Updates
|
||||||
|
* Install
|
||||||
|
* Delete
|
||||||
|
|
||||||
|
## 3.4 Weitere in $MOD_LST
|
||||||
|
* z.B. xrdp
|
||||||
|
* z.B. default pw
|
||||||
|
|
||||||
|
# 4. Finish
|
||||||
|
|
||||||
|
## 4.1 Aufreumen Live-Sys
|
||||||
|
* tmpfiles
|
||||||
|
* Packet Mgr
|
||||||
|
|
||||||
|
## 4.2 Stop chroot
|
||||||
|
* Umount
|
||||||
|
|
||||||
|
## 4.3. Gen ISO/PXE
|
||||||
|
|
||||||
|
## 4.4. Del Chroot
|
||||||
|
|
||||||
|
# 5. Send Log
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
## lxc
|
||||||
|
|
||||||
|
-> chroot_sh exec lxc-attach
|
||||||
|
|
||||||
|
-> chroot_dir = container name
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
## PXE
|
||||||
|
|
||||||
|
-> Install
|
||||||
|
* DHCP Relay
|
||||||
|
* NFS-Server
|
||||||
|
* TFTP-Server
|
||||||
|
* [Samba]
|
||||||
|
|
||||||
|
-> Setup
|
||||||
|
* (use <Lib>/proj/<proj> func)
|
||||||
|
* SMB/NFS LiveSys export
|
||||||
|
* TFTP (Boot Menue; Boot Loader; Kernel&Initrd)
|
||||||
|
|
||||||
|
-> Deinstall
|
||||||
|
* RM TFTP-Root
|
||||||
|
* RM SMB/NFS LiveSys export
|
||||||
|
* del DHCP Relay conf
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
## Jobs
|
||||||
|
* Read Confs -> get time interfall I
|
||||||
|
* Exec remaster <Conf> for I
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
## Web
|
||||||
|
|
||||||
|
show/edit #Configs
|
||||||
|
|
||||||
|
show (+live) #Logs
|
||||||
|
|
||||||
|
start/stop/plan #Jobs
|
||||||
|
|
||||||
|
start/stop/edit #PXE menue
|
||||||
|
* default
|
||||||
|
* all / single / none
|
||||||
|
* live view new clients
|
||||||
|
BIN
doc/check_config/live-system-files.pdf
Normal file
BIN
doc/check_config/live-system-files.pdf
Normal file
Binary file not shown.
BIN
doc/check_config/live-system-files.stg
Normal file
BIN
doc/check_config/live-system-files.stg
Normal file
Binary file not shown.
19
doc/draft_mod-pronects
Normal file
19
doc/draft_mod-pronects
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
maddl@NB-Maddl:~$ function a() { echo null; }
|
||||||
|
maddl@NB-Maddl:~$ a
|
||||||
|
null
|
||||||
|
maddl@NB-Maddl:~$ function a_desinfect() { echo desinfect; }
|
||||||
|
maddl@NB-Maddl:~$ a_desinfect
|
||||||
|
desinfect
|
||||||
|
maddl@NB-Maddl:~$ alias a=a_desinfect
|
||||||
|
maddl@NB-Maddl:~$ a
|
||||||
|
desinfect
|
||||||
|
maddl@NB-Maddl:~$ alias --help
|
||||||
|
bash: alias: --: Ungültige Option
|
||||||
|
alias: Gebrauch: alias [-p] [Name[=Wert] ... ]
|
||||||
|
maddl@NB-Maddl:~$ man alias
|
||||||
|
Kein Handbucheintrag für alias vorhanden
|
||||||
|
maddl@NB-Maddl:~$ alias a=a
|
||||||
|
maddl@NB-Maddl:~$ a
|
||||||
|
null
|
||||||
|
maddl@NB-Maddl:~$
|
||||||
|
|
@ -2,10 +2,12 @@
|
|||||||
#remaster lib
|
#remaster lib
|
||||||
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
||||||
|
|
||||||
#beginn func
|
#<function> [param]
|
||||||
|
function <function>() {
|
||||||
|
#Code of <function>
|
||||||
|
}
|
||||||
|
|
||||||
#this func is standalone executable
|
#this func is standalone executable
|
||||||
[ -n "$1" ] && {
|
[ -n "$1" ] && {
|
||||||
check_user
|
<function> $@
|
||||||
}
|
}
|
8
doc/proj-head
Executable file
8
doc/proj-head
Executable file
@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#remaster lib
|
||||||
|
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
||||||
|
|
||||||
|
#<PROJECT_NAME>
|
||||||
|
#<project_relation>
|
||||||
|
source <LIBDIR>/proj/<BASE>
|
||||||
|
project_relation="<PROJECT_NAME> $project_relation"
|
12
script/add_function.sh
Executable file
12
script/add_function.sh
Executable file
@ -0,0 +1,12 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#check param
|
||||||
|
[ -z "$1" ] && { echo "$0 [name]"; exit 1; }
|
||||||
|
name="$1"
|
||||||
|
|
||||||
|
#gen function
|
||||||
|
cp "doc/lib-head+tail" "src/func/$name"
|
||||||
|
sed -i "s/<function>/$name/g" "src/func/$name"
|
||||||
|
|
||||||
|
#open
|
||||||
|
editor "src/func/$name"
|
34
script/add_project.sh
Executable file
34
script/add_project.sh
Executable file
@ -0,0 +1,34 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#check param
|
||||||
|
[ -z "$1" ] && { echo "$0 \"name\" [base]"; exit 1; }
|
||||||
|
name="$1"
|
||||||
|
base="$2"
|
||||||
|
|
||||||
|
#gen project
|
||||||
|
cp "doc/proj-head" "src/proj/$name"
|
||||||
|
|
||||||
|
#set base_relations
|
||||||
|
if [ -z "$base" ]; then
|
||||||
|
base_relations="base"
|
||||||
|
base="base"
|
||||||
|
sed -i "/project_relation=/c\project_relation=\"<PROJECT_NAME>\"" "src/proj/$name"
|
||||||
|
else
|
||||||
|
[ -f "src/proj/$base" ] || {
|
||||||
|
echo "BASE: $base dont exist"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
#get base of $base
|
||||||
|
base_base=`grep '# . ->' src/proj/$base`
|
||||||
|
base_relations=`echo $base_base | sed "s/#\ \./$base/g"`
|
||||||
|
fi
|
||||||
|
|
||||||
|
## replace strings
|
||||||
|
# . -> <PROJECT_PARENT> -> base
|
||||||
|
sed -i "s/<project_relation>/\ \.\ ->\ $base_relations/g" "src/proj/$name"
|
||||||
|
#<PROJECT_NAME>
|
||||||
|
sed -i "s/<PROJECT_NAME>/$name/g" "src/proj/$name"
|
||||||
|
sed -i "s/<BASE>/$base/g" "src/proj/$name"
|
||||||
|
|
||||||
|
#open
|
||||||
|
editor "src/proj/$name"
|
3
script/get_version.sh
Executable file
3
script/get_version.sh
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
grep '@version ' src/remaster.sh | cut -d " " -f 2
|
@ -8,10 +8,10 @@ date=`date +%Y-%m-%d`
|
|||||||
version_sed=`echo $version | sed 's/\./\\./g'`
|
version_sed=`echo $version | sed 's/\./\\./g'`
|
||||||
|
|
||||||
#nummer
|
#nummer
|
||||||
sed -i "s/@version\ .\..\../@version\ $version_sed/g" src/remaster.sh
|
sed -i "/#@version\ /c\#@version\ $version_sed" src/remaster.sh
|
||||||
|
|
||||||
#datum
|
#datum
|
||||||
sed -i "s/@date\ ....-..-../@date\ $date/g" src/remaster.sh
|
sed -i "/#@date\ /c\#@date\ $date" src/remaster.sh
|
||||||
}
|
}
|
||||||
|
|
||||||
[ -e "changes/remaster.md" ] && {
|
[ -e "changes/remaster.md" ] && {
|
||||||
@ -22,5 +22,5 @@ date=`date +%Y-%m-%d`
|
|||||||
}
|
}
|
||||||
|
|
||||||
[ -f "DEBIAN/control" ] && {
|
[ -f "DEBIAN/control" ] && {
|
||||||
sed -i "s/Version:\ .\..\../Version:\ $version_sed/g" "DEBIAN/control"
|
sed -i "/Version:\ /c\Version:\ $version_sed" "DEBIAN/control"
|
||||||
}
|
}
|
||||||
|
@ -4,20 +4,17 @@
|
|||||||
## sample-config rename it to config.cfg after changes ##
|
## sample-config rename it to config.cfg after changes ##
|
||||||
#########################################################
|
#########################################################
|
||||||
|
|
||||||
## MODUS
|
|
||||||
modus_default="update_pxe"
|
|
||||||
|
|
||||||
#CD/DVD
|
#CD/DVD
|
||||||
#entweder iso_source oder filesystem_source alls quelle
|
#entweder iso_source oder squashfs_path alls quelle
|
||||||
# -> bei iso gen erforderlich!
|
# -> bei iso gen erforderlich!
|
||||||
iso_source="/data/remaster/desinfect-2017.iso"
|
iso_source="/data/remaster/desinfect-2017.iso"
|
||||||
#destination optinal
|
#destination optinal
|
||||||
iso_destination="/data/remaster/result/custom_desinfect_`date '+%Y-%m-%d'`.iso"
|
iso_aim="/data/remaster/result/custom_desinfect_`date '+%Y-%m-%d'`.iso"
|
||||||
iso_lable="DESINFECT_`date '+%Y-%m-%d'`"
|
iso_lable="DESINFECT_`date '+%Y-%m-%d'`"
|
||||||
|
|
||||||
#Filesystem (for pxe)
|
#Filesystem (for pxe)
|
||||||
#entweder iso_source oder filesystem_source alls quelle
|
#entweder iso_source oder squashfs_path alls quelle
|
||||||
filesystem_source="/data/remaster/result/filesystem.squashfs"
|
squashfs_path="/data/remaster/result/filesystem.squashfs"
|
||||||
|
|
||||||
#Network
|
#Network
|
||||||
proxy_host="proxy.local"
|
proxy_host="proxy.local"
|
||||||
@ -26,7 +23,7 @@ domain="local"
|
|||||||
nameserver="10.x.x.2,10.x.x.1"
|
nameserver="10.x.x.2,10.x.x.1"
|
||||||
|
|
||||||
#remaster_script
|
#remaster_script
|
||||||
distro="desinfect2017"
|
project="desinfect.17"
|
||||||
|
|
||||||
#LOG
|
#LOG
|
||||||
log_file="/data/remaster/logs/`date '+%Y-%m-%d'`.log"
|
log_file="/data/remaster/logs/`date '+%Y-%m-%d'`.log"
|
||||||
|
55
src/func/check_config
Executable file
55
src/func/check_config
Executable file
@ -0,0 +1,55 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#remaster lib
|
||||||
|
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
||||||
|
|
||||||
|
#check_config
|
||||||
|
function check_config() {
|
||||||
|
|
||||||
|
#Project
|
||||||
|
[ -f "<LIBDIR>/proj/$project" ] || {
|
||||||
|
echo "No Project \"$project\" is not supported"
|
||||||
|
return 3
|
||||||
|
}
|
||||||
|
|
||||||
|
#live-system files
|
||||||
|
if [ -f "$iso_source" ]; then
|
||||||
|
if [ -n "$iso_aim" ] && [ -d "${iso_aim%/*}" ]; then
|
||||||
|
#Lable
|
||||||
|
[ -z "$iso_lable" ] && iso_lable="$project"
|
||||||
|
|
||||||
|
echo 'iso_source -> iso_aim'
|
||||||
|
echo 'iso_source -> squashfs [optinal]'
|
||||||
|
else
|
||||||
|
if [ -n "$squashfs_path" ] && [ -d "${squashfs_path%/*}" ]; then
|
||||||
|
echo 'iso_source -> squashfs'
|
||||||
|
else
|
||||||
|
# ERROR
|
||||||
|
echo "No corect AIM in Settings"
|
||||||
|
return 3
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [ -f "$squashfs_path" ]; then
|
||||||
|
if [ -n "$iso_aim" ]; then
|
||||||
|
# ERROR
|
||||||
|
echo "only Squashfs source in Settings, cant creat ISO"
|
||||||
|
return 3
|
||||||
|
else
|
||||||
|
echo 'squashfs -> squashfs'
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# ERROR
|
||||||
|
echo "No corect Source in Settings"
|
||||||
|
return 3
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#this func is standalone executable
|
||||||
|
[ -n "$1" ] && {
|
||||||
|
check_config $@
|
||||||
|
}
|
@ -5,9 +5,9 @@
|
|||||||
#check_update
|
#check_update
|
||||||
function check_update() {
|
function check_update() {
|
||||||
if curl https://raw.githubusercontent.com/6543/remaster/master/changes/remaster.md | diff - <(zcat <ROOTDIR>/usr/share/doc/remaster/changelog.gz ); then
|
if curl https://raw.githubusercontent.com/6543/remaster/master/changes/remaster.md | diff - <(zcat <ROOTDIR>/usr/share/doc/remaster/changelog.gz ); then
|
||||||
echo 'REMASTER: Aktuell'
|
echo 'INFO: Programm Aktuell'
|
||||||
else
|
else
|
||||||
echo 'REMASTER: Warning: neue Version verfügbar'
|
echo 'WARNUNG: neue Version verfügbar'
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
20
src/func/check_url
Normal file
20
src/func/check_url
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#remaster lib
|
||||||
|
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
||||||
|
|
||||||
|
#check_url [URL]
|
||||||
|
function check_url() {
|
||||||
|
URL="$1"
|
||||||
|
if [[ `wget -S --spider "$URL" 2>&1 | grep 'HTTP/1.1 200 OK'` ]]; then
|
||||||
|
echo "true"
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
echo "false"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#this func is standalone executable
|
||||||
|
[ -n "$1" ] && {
|
||||||
|
check_url $@
|
||||||
|
}
|
@ -15,18 +15,26 @@ function iso_extract() {
|
|||||||
return 10
|
return 10
|
||||||
}
|
}
|
||||||
|
|
||||||
iso_source="$1"
|
|
||||||
[ -f "$iso_source" ] || {
|
|
||||||
echo "### ERROR ### iso_extract: ISO \"$iso_source\" not exist!"
|
|
||||||
return 11
|
|
||||||
}
|
|
||||||
|
|
||||||
iso_extr_dir="$2"
|
iso_extr_dir="$2"
|
||||||
[ -d "$iso_extr_dir" ] || {
|
[ -d "$iso_extr_dir" ] || {
|
||||||
echo "### ERROR ### iso_extract: aim directory not exist!"
|
echo "### ERROR ### iso_extract: aim directory not exist!"
|
||||||
return 12
|
return 12
|
||||||
}
|
}
|
||||||
|
|
||||||
|
iso_source="$1"
|
||||||
|
[ -f "$iso_source" ] || {
|
||||||
|
#if it is an url...
|
||||||
|
if [ "`check_url $iso_source`" == "true" ]; then
|
||||||
|
#dl to tmp + set iso_source
|
||||||
|
iso_tmp="`mktemp --suffix=.iso`"; rm "$iso_tmp"
|
||||||
|
wget -O "$iso_tmp" "$iso_source"
|
||||||
|
else
|
||||||
|
echo "### ERROR ### iso_extract: ISO \"$iso_source\" not exist!"
|
||||||
|
return 11
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#mace tmp mountpoint
|
#mace tmp mountpoint
|
||||||
tmpdir="`mktemp -d`"
|
tmpdir="`mktemp -d`"
|
||||||
[ -d "$iso_extr_dir" ] && {
|
[ -d "$iso_extr_dir" ] && {
|
||||||
@ -41,6 +49,7 @@ function iso_extract() {
|
|||||||
#clear tmp mountpoint
|
#clear tmp mountpoint
|
||||||
umount "$iso_source"
|
umount "$iso_source"
|
||||||
rm -r "$tmpdir"
|
rm -r "$tmpdir"
|
||||||
|
[ -n "$iso_tmp" ] && rm "$iso_tmp"
|
||||||
tmpdir=
|
tmpdir=
|
||||||
|
|
||||||
echo "done"
|
echo "done"
|
||||||
|
@ -4,28 +4,31 @@
|
|||||||
|
|
||||||
#on_exit [error_level]
|
#on_exit [error_level]
|
||||||
function on_exit() {
|
function on_exit() {
|
||||||
#send log and errorlevel[success/errorr xy]
|
### send mail
|
||||||
|
[ -n "$log_mail_aim" ] && {
|
||||||
|
#send log and errorlevel[success/errorr xy]
|
||||||
|
if [ "$1" != "0" ]; then
|
||||||
|
log_mail_subject="$log_mail_subject [ERROR]"
|
||||||
|
else
|
||||||
|
log_mail_subject="$log_mail_subject [Success]"
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "$1" != "0" ]; then
|
#Mail Body:
|
||||||
log_mail_subject="$log_mail_subject [ERROR]"
|
for mail_aim in `echo "$log_mail_aim" | tr "," " "`; do
|
||||||
else
|
{
|
||||||
log_mail_subject="$log_mail_subject [Success]"
|
echo "$log_mail_subject"
|
||||||
fi
|
echo $'####################################################################################\n\n'
|
||||||
|
cat "$log_file"
|
||||||
|
} | sendemail -s "$log_mail_smtp" -f "$log_mail_source" -t "$mail_aim" -u "$log_mail_subject" -o tls=no
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
#Mail Body:
|
### clean up
|
||||||
for mail_aim in `echo "$log_mail_aim" | tr "," " "`; do
|
[ "$1" != "0" ] && {
|
||||||
{
|
chroot_umount$distro "$chroot_path" 2> /dev/null
|
||||||
echo "$log_mail_subject"
|
workspace_erase "$iso_extr_dir/" "$chroot_path/" 2> /dev/null
|
||||||
echo $'####################################################################################\n\n'
|
}
|
||||||
cat "$log_file"
|
exit $1
|
||||||
} | sendemail -s "$log_mail_smtp" -f "$log_mail_source" -t "$mail_aim" -u "$log_mail_subject" -o tls=no
|
|
||||||
done
|
|
||||||
|
|
||||||
[ "$1" != "0" ] && {
|
|
||||||
chroot_umount$distro "$chroot_path" 2> /dev/null
|
|
||||||
workspace_erase "$iso_extr_dir/" "$chroot_path/" 2> /dev/null
|
|
||||||
}
|
|
||||||
exit $1
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#this func is standalone executable
|
#this func is standalone executable
|
||||||
|
34
src/proj/base
Executable file
34
src/proj/base
Executable file
@ -0,0 +1,34 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#remaster lib
|
||||||
|
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
||||||
|
|
||||||
|
##################
|
||||||
|
##### B a s e ####
|
||||||
|
##################
|
||||||
|
# .
|
||||||
|
project_relation=""
|
||||||
|
[ -z "$project" ] && project=base
|
||||||
|
|
||||||
|
#tools_add [chroot_dir] [tools_list]
|
||||||
|
function tools_add() {
|
||||||
|
echo "$project: tools_add ot available"
|
||||||
|
}
|
||||||
|
|
||||||
|
#os_update [chroot_dir]
|
||||||
|
function os_update() {
|
||||||
|
echo "$project: os_update ot available"
|
||||||
|
}
|
||||||
|
|
||||||
|
#proxy_enable [chroot_dir] [proxy_host] [proxy_port]
|
||||||
|
function proxy_enable() {
|
||||||
|
echo "$project: proxy_enable ot available"
|
||||||
|
}
|
||||||
|
|
||||||
|
#dns_set [chroot_dir] [domain] [nameserver]
|
||||||
|
function dns_set() {
|
||||||
|
echo "$project: dns_set ot available"
|
||||||
|
}
|
||||||
|
|
||||||
|
function project_mods() {
|
||||||
|
echo "$project: project_mods ot available"
|
||||||
|
}
|
@ -2,14 +2,18 @@
|
|||||||
#remaster lib
|
#remaster lib
|
||||||
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
||||||
|
|
||||||
|
source <LIBDIR>/proj/base
|
||||||
|
#debian
|
||||||
|
# . -> base
|
||||||
|
project_relation="debian"
|
||||||
|
|
||||||
####################################
|
####################################
|
||||||
##### Base Template D E B I A N ####
|
##### Base Template D E B I A N ####
|
||||||
####################################
|
####################################
|
||||||
# .
|
|
||||||
|
|
||||||
|
|
||||||
#tools_add [chroot_dir] [tools_list]
|
#tools_add [chroot_dir] [tools_list]
|
||||||
function tools_add() {
|
function tools_add-debian() {
|
||||||
echo "add tools ... "
|
echo "add tools ... "
|
||||||
#$1 = chroot directory
|
#$1 = chroot directory
|
||||||
chroot_dir="$1"
|
chroot_dir="$1"
|
||||||
@ -20,9 +24,10 @@ function tools_add() {
|
|||||||
chroot "$chroot_dir" /bin/bash -c "apt-get install -y $tools_list" | grep -v "wird eingerichtet ..." | grep -v "Vormals nicht ausgewähltes Paket" | grep -v "Entpacken von" | grep -v "Holen: " | grep -v "Trigger für" | grep -v "update-alternatives:"
|
chroot "$chroot_dir" /bin/bash -c "apt-get install -y $tools_list" | grep -v "wird eingerichtet ..." | grep -v "Vormals nicht ausgewähltes Paket" | grep -v "Entpacken von" | grep -v "Holen: " | grep -v "Trigger für" | grep -v "update-alternatives:"
|
||||||
echo "done"
|
echo "done"
|
||||||
}
|
}
|
||||||
|
function tools_add() { tools_add-debian $@; }
|
||||||
|
|
||||||
#os_update [chroot_dir]
|
#os_update [chroot_dir]
|
||||||
function os_update() {
|
function os_update-debian() {
|
||||||
echo "updating os ... "
|
echo "updating os ... "
|
||||||
#$1 = chroot directory
|
#$1 = chroot directory
|
||||||
|
|
||||||
@ -35,3 +40,59 @@ function os_update() {
|
|||||||
|
|
||||||
echo "done"
|
echo "done"
|
||||||
}
|
}
|
||||||
|
function os_update() { os_update-debian $@; }
|
||||||
|
|
||||||
|
#proxy_enable [chroot_dir] [proxy_host] [proxy_port]
|
||||||
|
function proxy_enable-debian() {
|
||||||
|
echo -n "enable proxy ... "
|
||||||
|
|
||||||
|
chroot_dir="$1"
|
||||||
|
proxy_host="$2"
|
||||||
|
proxy_port="$3"
|
||||||
|
|
||||||
|
[ -d "$chroot_dir" ] || {
|
||||||
|
echo "### ERROR ### chroot_umount_desinfect: chroot directory not exist!"
|
||||||
|
return 12
|
||||||
|
}
|
||||||
|
|
||||||
|
#Wenn alle zwei Parameter gegeben
|
||||||
|
if [ "$proxy_host" != "" ] && [ "$proxy_port" != "" ] ; then
|
||||||
|
echo "http_proxy=\"http://$proxy_host:$proxy_port\"" >> $chroot_dir/etc/environment
|
||||||
|
echo "https_proxy=\"http://$proxy_host:$proxy_port\"" >> $chroot_dir/etc/environment
|
||||||
|
echo "ftp_proxy=\"http://$proxy_host:$proxy_port\"" >> $chroot_dir/etc/environment
|
||||||
|
|
||||||
|
echo "HTTP_PROXY=\"http://$proxy_host:$proxy_port\"" >> $chroot_dir/etc/environment
|
||||||
|
echo "HTTPS_PROXY=\"http://$proxy_host:$proxy_port\"" >> $chroot_dir/etc/environment
|
||||||
|
echo "FTP_PROXY=\"http://$proxy_host:$proxy_port\"" >> $chroot_dir/etc/environment
|
||||||
|
|
||||||
|
echo "Acquire::http::Proxy \"http://$proxy_host:$proxy_port\"\;" > $chroot_dir/etc/apt/apt.conf.d/90proxy
|
||||||
|
echo "Acquire::ftp::Proxy \"ftp://$proxy_host:$proxy_port\"\;" >> $chroot_dir/etc/apt/apt.conf.d/90proxy
|
||||||
|
|
||||||
|
echo "done"
|
||||||
|
else
|
||||||
|
if [ "$proxy_host" == "" ] && [ "$proxy_port" == "" ] ; then
|
||||||
|
echo "done"
|
||||||
|
else
|
||||||
|
echo "### ERROR ### proxy_enable: wrong parameters! (\"$chroot_dir\"; \"$proxy_host\"; \"$proxy_port\")"
|
||||||
|
echo "proxy_enable [chroot_dir] [proxy_host] [proxy_port]"
|
||||||
|
return 2
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
function proxy_enable() { proxy_enable-debian $@; }
|
||||||
|
|
||||||
|
#dns_set [chroot_dir] [domain] [nameserver]
|
||||||
|
function dns_set-debian() {
|
||||||
|
echo -n "set dns config ... "
|
||||||
|
|
||||||
|
rm "$chroot_dir/etc/resolv.conf"
|
||||||
|
|
||||||
|
[ "$2" != "" ] && echo "domain $2" >> "$chroot_dir/etc/resolv.conf"
|
||||||
|
echo "search $2" >> "$chroot_dir/etc/resolv.conf"
|
||||||
|
for namesv in `echo "$3" | tr "," " "`; do
|
||||||
|
echo "nameserver $namesv" >> "$chroot_dir/etc/resolv.conf"
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "done"
|
||||||
|
}
|
||||||
|
function dns_set() { dns_set-debian $@; }
|
||||||
|
@ -5,5 +5,259 @@
|
|||||||
#desinfect.17
|
#desinfect.17
|
||||||
# . -Y ubuntu.16.04 -> ubuntu -> debian
|
# . -Y ubuntu.16.04 -> ubuntu -> debian
|
||||||
source <LIBDIR>/proj/ubuntu.16.04
|
source <LIBDIR>/proj/ubuntu.16.04
|
||||||
|
project_relation="desinfect.17 $project_relation"
|
||||||
|
|
||||||
TEST2="na"
|
|
||||||
|
#sourcelist_desinfect_set_nomal2017 [chroot_dir]
|
||||||
|
function sourcelist_desinfect_set_nomal2017() {
|
||||||
|
echo -n "build normal source.list ... "
|
||||||
|
#$1 = chroot directory
|
||||||
|
|
||||||
|
sourcelist="$1/etc/apt/sources.list"
|
||||||
|
|
||||||
|
|
||||||
|
echo "#### Desinfe't 2017 ####" > "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2017 main" >> "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "# #### Ubuntu 16.04 LTS (Xenial) ####" >> "$sourcelist"
|
||||||
|
echo "#" >> "$sourcelist"
|
||||||
|
echo "# deb http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "# deb-src http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "#" >> "$sourcelist"
|
||||||
|
echo "# deb http://security.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "# deb-src http://security.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "#" >> "$sourcelist"
|
||||||
|
echo "# deb http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "# deb-src http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "#" >> "$sourcelist"
|
||||||
|
echo "# ## This software is not part of Ubuntu, but is offered by third-party" >> "$sourcelist"
|
||||||
|
echo "# ## developers who want to ship their latest software." >> "$sourcelist"
|
||||||
|
echo "# deb http://extras.ubuntu.com/ubuntu xenial main" >> "$sourcelist"
|
||||||
|
|
||||||
|
echo "done"
|
||||||
|
}
|
||||||
|
|
||||||
|
#sourcelist_desinfect_set_extendet2017 [chroot_dir]
|
||||||
|
function sourcelist_desinfect_set_extendet2017() {
|
||||||
|
echo -n "build extendet source.list ... "
|
||||||
|
|
||||||
|
sourcelist="$1/etc/apt/sources.list"
|
||||||
|
|
||||||
|
|
||||||
|
echo "#### Desinfe't 2017 ####" > "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2017 main" >> "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "#### Ubuntu 16.04 LTS (Xenial) ####" >> "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "deb http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "deb-src http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "deb http://security.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "deb-src http://security.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "deb http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "deb-src http://security.ubuntu.com/ubuntu xenial-security main restricted universe multiverse" >> "$sourcelist"
|
||||||
|
echo "" >> "$sourcelist"
|
||||||
|
echo "## This software is not part of Ubuntu, but is offered by third-party" >> "$sourcelist"
|
||||||
|
echo "## developers who want to ship their latest software." >> "$sourcelist"
|
||||||
|
echo "deb http://extras.ubuntu.com/ubuntu xenial main" >> "$sourcelist"
|
||||||
|
|
||||||
|
echo "done"
|
||||||
|
}
|
||||||
|
|
||||||
|
#os_update-desinfect.17 [chroot_dir]
|
||||||
|
function os_update-desinfect.17() {
|
||||||
|
#$1 = chroot directory
|
||||||
|
|
||||||
|
chroot_dir="$1"
|
||||||
|
|
||||||
|
#call main os_update from debian
|
||||||
|
os_update-debian "$chroot_dir"
|
||||||
|
|
||||||
|
echo "update virus definitions ... "
|
||||||
|
|
||||||
|
#Avast Avira
|
||||||
|
{
|
||||||
|
echo "Avira ..."
|
||||||
|
#chroot "$chroot_dir" /bin/bash --login -c ". /tmp/env.sh; /AntiVirUpdate/avupdate" | grep -v " -> "
|
||||||
|
chroot_sh "$chroot_dir" "/AntiVirUpdate/avupdate" | grep -v " -> "
|
||||||
|
echo "Avira done"
|
||||||
|
}
|
||||||
|
|
||||||
|
#Clam AV
|
||||||
|
{
|
||||||
|
echo "ClamAV..."
|
||||||
|
#chroot "$chroot_dir" /bin/bash --login -c ". /tmp/env.sh; freshclam" > /dev/null
|
||||||
|
chroot_sh "$chroot_dir" "freshclam" > /dev/null
|
||||||
|
rm -f "$chroot_dir/var/lib/clamav/daily.cld"
|
||||||
|
echo "ClamAV done"
|
||||||
|
}
|
||||||
|
|
||||||
|
#Eset AV
|
||||||
|
{
|
||||||
|
echo "Eset AV ..."
|
||||||
|
tmp_file_23421="`mktemp`"
|
||||||
|
cat "$chroot_dir/etc/opt/eset/esets/esets.cfg" | grep -v "av_update_username" | grep -v "av_update_password" > "$tmp_file_23421"
|
||||||
|
cat "$tmp_file_23421" > "$chroot_dir/etc/opt/eset/esets/esets.cfg"
|
||||||
|
chroot "$chroot_dir" /bin/bash -c "/usr/bin/esetrand" >> "$chroot_dir/etc/opt/eset/esets/esets.cfg"
|
||||||
|
|
||||||
|
av_eaet_timeout=300
|
||||||
|
echo "set timeout: $((av_eaet_timeout/60))min"
|
||||||
|
tmp_var_3092="`chroot "$chroot_dir" /bin/bash -c "/opt/desinfect/conky_info.sh eset"`"
|
||||||
|
|
||||||
|
#eig. update routine
|
||||||
|
#chroot "$chroot_dir" /bin/bash -c "/etc/init.d/esets restart"
|
||||||
|
chroot_sh "$chroot_dir" "/etc/init.d/esets restart"
|
||||||
|
sleep 2
|
||||||
|
#chroot "$chroot_dir" /bin/bash --login -c "/opt/eset/esets/sbin/esets_daemon --update"
|
||||||
|
chroot_sh "$chroot_dir" "/opt/eset/esets/sbin/esets_daemon --update"
|
||||||
|
|
||||||
|
#warten auf daemon update ...
|
||||||
|
echo "wait $((av_eaet_timeout/60))min for Eset AV update"
|
||||||
|
while [ "`chroot "$chroot_dir" /bin/bash -c "/opt/desinfect/conky_info.sh eset"`" == "$tmp_var_3092" ]; do
|
||||||
|
sleep 10
|
||||||
|
av_eaet_timeout=$((av_eaet_timeout-10))
|
||||||
|
[ $av_eaet_timeout -gt 0 ] || tmp_var_3092=
|
||||||
|
done
|
||||||
|
|
||||||
|
sleep 4
|
||||||
|
|
||||||
|
#chroot "$chroot_dir" /bin/bash -c "/etc/init.d/esets stop"
|
||||||
|
chroot_sh "$chroot_dir" "/etc/init.d/esets stop"
|
||||||
|
|
||||||
|
cat "$tmp_file_23421" > "$chroot_dir/etc/opt/eset/esets/esets.cfg"
|
||||||
|
|
||||||
|
rm "$tmp_file_23421"
|
||||||
|
tmp_file_23421=
|
||||||
|
tmp_var_3092=
|
||||||
|
echo "Eset AV done"
|
||||||
|
}
|
||||||
|
|
||||||
|
#Sophos
|
||||||
|
{
|
||||||
|
echo "Sophos..."
|
||||||
|
#chroot "$chroot_dir" /bin/bash --login -c "/opt/sophos-av/bin/savupdate -v3"
|
||||||
|
chroot_sh "$chroot_dir" "/opt/sophos-av/bin/savupdate -v3"
|
||||||
|
chroot_sh "$chroot_dir" "/opt/sophos-av/bin/savdstatus --version"
|
||||||
|
#chroot "$chroot_dir" /bin/bash -c "/opt/sophos-av/bin/savupdate -v3 -a"
|
||||||
|
echo "Sophos done"
|
||||||
|
}
|
||||||
|
|
||||||
|
#F-Secure
|
||||||
|
{
|
||||||
|
echo "F-Secure..."
|
||||||
|
chroot_sh "$chroot_dir" "/etc/init.d/fsaua start"
|
||||||
|
chroot_sh "$chroot_dir" "/etc/init.d/fsupdate stop"
|
||||||
|
( sleep 1m; chroot_sh "$chroot_dir" "/etc/init.d/fsaua start" ) &
|
||||||
|
chroot_sh "$chroot_dir" "/opt/f-secure/fssp/bin/dbupdate_lite" && echo "Update Success"
|
||||||
|
sleep 1m
|
||||||
|
chroot_sh "$chroot_dir" "/etc/init.d/fsaua stop"
|
||||||
|
chroot_sh "$chroot_dir" "/etc/init.d/fsupdate stop"
|
||||||
|
echo "F-Secure done"
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "update virus definitions done"
|
||||||
|
}
|
||||||
|
function os_update() { os_update-desinfect.17 $@; }
|
||||||
|
|
||||||
|
#proxy_enable-desinfect.17 [chroot_dir] [proxy_host] [proxy_port]
|
||||||
|
function proxy_enable-desinfect.17() {
|
||||||
|
|
||||||
|
proxy_enable-debian $1 $2 $3
|
||||||
|
|
||||||
|
echo "enable proxy for desinfect's av ... "
|
||||||
|
|
||||||
|
chroot_dir="$1"
|
||||||
|
proxy_host="$2"
|
||||||
|
proxy_port="$3"
|
||||||
|
tmp_file_344532="`mktemp`"
|
||||||
|
|
||||||
|
#Avast AntiVirus
|
||||||
|
if [ -f "$chroot_dir/AntiVirUpdate/avupdate" ]; then
|
||||||
|
echo "Avast AntiVirus: Found"
|
||||||
|
sed -i "s/--skip-master-file/--skip-master-file --proxy-host=$proxy_host --proxy-port=$proxy_port/g" "$chroot_dir/AntiVirUpdate/avupdate"
|
||||||
|
sed -i "s/--proxy-host=$proxy_host --proxy-port=$proxy_port --proxy-host=$proxy_host --proxy-port=$proxy_port/--proxy-host=$proxy_host --proxy-port=$proxy_port/g" "$chroot_dir/AntiVirUpdate/avupdate"
|
||||||
|
else
|
||||||
|
eco "Avast AntiVirus: NOT Found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#Eset AV
|
||||||
|
if [ -f "$chroot_dir/etc/opt/eset/esets/esets.cfg" ]; then
|
||||||
|
echo "Eset AV: Found"
|
||||||
|
cat "$chroot_dir/etc/opt/eset/esets/esets.cfg" | grep -v "proxy_addr" | grep -v "proxy_port" > "$tmp_file_344532"
|
||||||
|
rm "$chroot_dir/etc/opt/eset/esets/esets.cfg"
|
||||||
|
cp "$tmp_file_344532" "$chroot_dir/etc/opt/eset/esets/esets.cfg"
|
||||||
|
|
||||||
|
echo "proxy_addr = \"$proxy_host\"" >> "$chroot_dir/etc/opt/eset/esets/esets.cfg"
|
||||||
|
echo "proxy_port = $proxy_port" >> "$chroot_dir/etc/opt/eset/esets/esets.cfg"
|
||||||
|
else
|
||||||
|
eco "Eset AV: NOT Found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#ClamAV
|
||||||
|
if [ -f "$chroot_dir/etc/clamav/freshclam.conf" ]; then
|
||||||
|
echo "ClamAV: Found"
|
||||||
|
cat "$chroot_dir/etc/clamav/freshclam.conf" | grep -v "HTTPProxyServer" | grep -v "HTTPProxyPort" > "$tmp_file_344532"
|
||||||
|
rm "$chroot_dir/etc/clamav/freshclam.conf"
|
||||||
|
cp "$tmp_file_344532" "$chroot_dir/etc/clamav/freshclam.conf"
|
||||||
|
|
||||||
|
echo "HTTPProxyServer $proxy_host" >> "$chroot_dir/etc/clamav/freshclam.conf"
|
||||||
|
echo "HTTPProxyPort $proxy_port" >> "$chroot_dir/etc/clamav/freshclam.conf"
|
||||||
|
else
|
||||||
|
eco "ClamAV: NOT Found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#Sophos
|
||||||
|
if [ -f ""$chroot_dir/opt/sophos-av/etc/savd.cfg"" ]; then
|
||||||
|
echo "Sophos: Found"
|
||||||
|
echo "<Source>sophos:</Source><Proxy><Address>http://$proxy_host:$proxy_port</Proxy></Address>" >> "$chroot_dir/opt/sophos-av/etc/savd.cfg"
|
||||||
|
else
|
||||||
|
eco "Sophos: NOT Found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#F-Secure
|
||||||
|
if [ -f "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template" ]; then
|
||||||
|
echo "F-Secure: Found"
|
||||||
|
echo "enable_fsma=no" >> "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template"
|
||||||
|
echo "update_servers=http://fsbwserver-direct.f-secure.com" >> "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template"
|
||||||
|
echo "update_proxies=http://$proxy_host:$proxy_port" >> "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template"
|
||||||
|
echo "http_proxies=http://$proxy_host:$proxy_port" >> "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template"
|
||||||
|
cat "$chroot_dir/opt/f-secure/fsaua/fsaua_config.template" > "$chroot_dir/etc/opt/f-secure/fsaua/fsaua_config"
|
||||||
|
else
|
||||||
|
eco "F-Secure: NOT Found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
rm "$tmp_file_344532"
|
||||||
|
tmp_file_344532=
|
||||||
|
|
||||||
|
echo "done"
|
||||||
|
}
|
||||||
|
function proxy_enable() { proxy_enable-desinfect.17 $@; }
|
||||||
|
|
||||||
|
#tools_add-desinfect.17 [chroot_dir] [tools_list]
|
||||||
|
function tools_add-desinfect.17() {
|
||||||
|
#$1 = chroot directory
|
||||||
|
chroot_dir="$1"
|
||||||
|
tools_list="$2"
|
||||||
|
|
||||||
|
sourcelist_desinfect_set_extendet2017 "$chroot_dir"
|
||||||
|
tools_add-debian "$chroot_dir" "$tools_list"
|
||||||
|
sourcelist_desinfect_set_nomal2017 "$chroot_dir"
|
||||||
|
}
|
||||||
|
function tools_add() { tools_add-desinfect.17 $@; }
|
||||||
|
|
||||||
|
|
||||||
|
function project_mods-desinfect.17() {
|
||||||
|
#config xrdp to start xfce
|
||||||
|
[ -d "$chroot_path/etc/xrdp/" ] && {
|
||||||
|
echo '#!/bin/sh' > "$chroot_path"/etc/xrdp/startwm.sh
|
||||||
|
echo "export LANG=\"de_DE.UTF-8\"" >> "$chroot_path"/etc/xrdp/startwm.sh
|
||||||
|
echo "startxfce4" >> "$chroot_path"/etc/xrdp/startwm.sh
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function project_mods() { project_mods-desinfect.17 $@; }
|
||||||
|
@ -7,3 +7,4 @@
|
|||||||
####################################
|
####################################
|
||||||
# . -> debian
|
# . -> debian
|
||||||
source <LIBDIR>/proj/debian
|
source <LIBDIR>/proj/debian
|
||||||
|
project_relation="ubuntu $project_relation"
|
||||||
|
8
src/proj/ubuntu.14.04
Executable file
8
src/proj/ubuntu.14.04
Executable file
@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#remaster lib
|
||||||
|
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
|
||||||
|
|
||||||
|
#ubuntu.14.04
|
||||||
|
# . -> ubuntu -> debian
|
||||||
|
source <LIBDIR>/proj/ubuntu
|
||||||
|
project_relation="ubuntu.14.04 $project_relation"
|
@ -5,3 +5,4 @@
|
|||||||
#ubuntu.16.04
|
#ubuntu.16.04
|
||||||
# . -> ubuntu -> debian
|
# . -> ubuntu -> debian
|
||||||
source <LIBDIR>/proj/ubuntu
|
source <LIBDIR>/proj/ubuntu
|
||||||
|
project_relation="ubuntu.16.04 $project_relation"
|
||||||
|
1472
src/remaster.sh
1472
src/remaster.sh
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user