diff --git a/DEBIAN/control b/DEBIAN/control index 132f7d0..0862434 100644 --- a/DEBIAN/control +++ b/DEBIAN/control @@ -1,6 +1,6 @@ Package: remaster Source: remaster -Version: 2.0.3 +Version: 2.0.4 Architecture: all Maintainer: 6543 <6543@obermui.de> Installed-Size: diff --git a/changes/remaster.md b/changes/remaster.md index d5f582d..7a6a57d 100644 --- a/changes/remaster.md +++ b/changes/remaster.md @@ -24,3 +24,9 @@ * 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 diff --git a/doc/check_config/live-system-files.pdf b/doc/check_config/live-system-files.pdf new file mode 100644 index 0000000..334ec1e Binary files /dev/null and b/doc/check_config/live-system-files.pdf differ diff --git a/doc/check_config/live-system-files.stg b/doc/check_config/live-system-files.stg new file mode 100644 index 0000000..9ec8f76 Binary files /dev/null and b/doc/check_config/live-system-files.stg differ diff --git a/doc/draft_mod-pronects b/doc/draft_mod-pronects new file mode 100644 index 0000000..2e8f466 --- /dev/null +++ b/doc/draft_mod-pronects @@ -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:~$ + diff --git a/doc/proj-head b/doc/proj-head new file mode 100755 index 0000000..8b02794 --- /dev/null +++ b/doc/proj-head @@ -0,0 +1,8 @@ +#!/bin/bash +#remaster lib +[ -d "" ] || { echo "LIBDIR not exist"; exit 1; } + +# +# +source /proj/ +project_relation=" $project_relation" diff --git a/script/add_project.sh b/script/add_project.sh new file mode 100755 index 0000000..5205581 --- /dev/null +++ b/script/add_project.sh @@ -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=\"\"" "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 +# . -> -> base +sed -i "s//\ \.\ ->\ $base_relations/g" "src/proj/$name" +# +sed -i "s//$name/g" "src/proj/$name" +sed -i "s//$base/g" "src/proj/$name" + +#open +editor "src/proj/$name" diff --git a/src/config.sample.cfg b/src/config.sample.cfg index b16bc57..30cbfbb 100644 --- a/src/config.sample.cfg +++ b/src/config.sample.cfg @@ -4,20 +4,17 @@ ## sample-config rename it to config.cfg after changes ## ######################################################### -## MODUS -modus_default="update_pxe" - #CD/DVD -#entweder iso_source oder filesystem_source alls quelle +#entweder iso_source oder squashfs_path alls quelle # -> bei iso gen erforderlich! iso_source="/data/remaster/desinfect-2017.iso" #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'`" #Filesystem (for pxe) -#entweder iso_source oder filesystem_source alls quelle -filesystem_source="/data/remaster/result/filesystem.squashfs" +#entweder iso_source oder squashfs_path alls quelle +squashfs_path="/data/remaster/result/filesystem.squashfs" #Network proxy_host="proxy.local" @@ -26,7 +23,7 @@ domain="local" nameserver="10.x.x.2,10.x.x.1" #remaster_script -distro="desinfect2017" +project="desinfect.17" #LOG log_file="/data/remaster/logs/`date '+%Y-%m-%d'`.log" diff --git a/src/func/check_config b/src/func/check_config index fcb70b0..313332a 100755 --- a/src/func/check_config +++ b/src/func/check_config @@ -6,21 +6,21 @@ function check_config() { #Project - [ -f "/proj/$distro" ] || { - echo "No Project \"$distro\" is not supported" + [ -f "/proj/$project" ] || { + echo "No Project \"$project\" is not supported" return 3 } #live-system files if [ -f "$iso_source" ]; then - if [ -n "$iso_destination" ] && [ -d "${iso_destination%/*}" ]; then + if [ -n "$iso_aim" ] && [ -d "${iso_aim%/*}" ]; then #Lable - [ -z "$iso_lable" ] && iso_lable="$distro" + [ -z "$iso_lable" ] && iso_lable="$project" - echo 'iso_source -> iso_destination' + echo 'iso_source -> iso_aim' echo 'iso_source -> squashfs [optinal]' else - if [ -n "$filesystem_source" ] && [ -d "${filesystem_source%/*}" ]; then + if [ -n "$squashfs_path" ] && [ -d "${squashfs_path%/*}" ]; then echo 'iso_source -> squashfs' else # ERROR @@ -29,8 +29,8 @@ function check_config() { fi fi else - if [ -f "$filesystem_source" ]; then - if [ -n "$iso_destination" ]; then + if [ -f "$squashfs_path" ]; then + if [ -n "$iso_aim" ]; then # ERROR echo "only Squashfs source in Settings, cant creat ISO" return 3 diff --git a/src/func/check_url b/src/func/check_url new file mode 100644 index 0000000..53b23e0 --- /dev/null +++ b/src/func/check_url @@ -0,0 +1,20 @@ +#!/bin/bash +#remaster lib +[ -d "" ] || { 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 $@ +} diff --git a/src/func/iso_extract b/src/func/iso_extract index ab6c6df..d89ff28 100755 --- a/src/func/iso_extract +++ b/src/func/iso_extract @@ -15,18 +15,26 @@ function iso_extract() { return 10 } - iso_source="$1" - [ -f "$iso_source" ] || { - echo "### ERROR ### iso_extract: ISO \"$iso_source\" not exist!" - return 11 - } - iso_extr_dir="$2" [ -d "$iso_extr_dir" ] || { echo "### ERROR ### iso_extract: aim directory not exist!" 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 tmpdir="`mktemp -d`" [ -d "$iso_extr_dir" ] && { @@ -41,6 +49,7 @@ function iso_extract() { #clear tmp mountpoint umount "$iso_source" rm -r "$tmpdir" + [ -n "$iso_tmp" ] && rm "$iso_tmp" tmpdir= echo "done" diff --git a/src/proj/base b/src/proj/base new file mode 100755 index 0000000..e33b145 --- /dev/null +++ b/src/proj/base @@ -0,0 +1,34 @@ +#!/bin/bash +#remaster lib +[ -d "" ] || { 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" +} diff --git a/src/proj/debian b/src/proj/debian index db0aaa4..196dbe2 100755 --- a/src/proj/debian +++ b/src/proj/debian @@ -2,14 +2,18 @@ #remaster lib [ -d "" ] || { echo "LIBDIR not exist"; exit 1; } +source /proj/base +#debian +# . -> base +project_relation="debian" + #################################### ##### Base Template D E B I A N #### #################################### -# . #tools_add [chroot_dir] [tools_list] -function tools_add() { +function tools_add-debian() { echo "add tools ... " #$1 = chroot directory 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:" echo "done" } +function tools_add() { tools_add-debian $@; } #os_update [chroot_dir] -function os_update() { +function os_update-debian() { echo "updating os ... " #$1 = chroot directory @@ -35,3 +40,59 @@ function os_update() { 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 $@; } diff --git a/src/proj/desinfect.15 b/src/proj/desinfect.15 new file mode 100755 index 0000000..02302d7 --- /dev/null +++ b/src/proj/desinfect.15 @@ -0,0 +1,227 @@ +#!/bin/bash +#remaster lib +[ -d "" ] || { echo "LIBDIR not exist"; exit 1; } + +#desinfect.15 +# . -Y ubuntu.14.04 -> ubuntu -> debian +source /proj/ubuntu.14.04 +project_relation="desinfect.15 $project_relation" + + + +#iso_create-desinfect.15 [chroot_path] [iso_extr_dir] [iso_aim] [iso_lable] +function iso_create-desinfect.15() { + echo "prepere iso folder ... " + + chroot_path="$1" + iso_extr_dir="$2" + iso_aim="$3" + iso_lable="$4" + + #desinfect + rm "$iso_extr_dir/casper/initrd.lz" + wget http://www.heise.de/ct/projekte/desinfect/des15/initrd.lz -O "$iso_extr_dir/casper/initrd.lz" + + echo "done" + + iso_create-debian "$chroot_path" "$iso_extr_dir" "$iso_aim" "$iso_lable" +} +function iso_create() { iso_create-desinfect.15 $@; } + +#chroot_initial-desinfect.15 [chroot_dir] +function chroot_initial-desinfect.15() { + #$1 = chroot dir + + chroot_initial-debian "$1" + + echo -n "initial desinfect on chroot ... " + + #check chroot dir + chroot_dir="$1" + [ -d "$chroot_dir" ] || { + echo "### ERROR ### chroot_initial_desinfect: chroot directory not exist!" + return 12 + } + + #mount virus definitions + #bitdefender + mount --bind $chroot_dir/opt/BitDefender-scanner/var/lib/scan{.orig,} + mount --bind $chroot_dir/var/kl/bases_rd{.orig,} + + echo "done" +} +function iso_create() { iso_create-desinfect.15 $@; } + +#chroot_umount-desinfect.15 [chroot_dir] +function chroot_umount-desinfect.15() { + #call main mount + chroot_umount-debian "$1" + + echo -n "unmount desinfect on chroot ... " + #check chroot dir + chroot_dir="$1" + [ -d "$chroot_dir" ] || { + echo "### ERROR ### chroot_umount_desinfect: chroot directory not exist!" + return 12 + } + + for d in "$chroot_dir/opt/BitDefender-scanner/var/lib/scan" "$chroot_dir/var/kl/bases_rd" ; do + umount $d + retval=$? + [ "$retval" -gt 0 ] && { + echo "### ERROR ### chroot_umount_desinfect: can't umount \"$d\"!" + return 21 + } + done + + echo "done" +} +function chroot_umount() { chroot_umount-desinfect.15 $@; } + +#proxy_enable-desinfect.15 [chroot_dir] [proxy_host] [proxy_port] +function proxy_enable-desinfect.15() { + + proxy_enable-debian $1 $2 $3 + + echo -n "enable proxy for desinfect's av ... " + + chroot_dir="$1" + proxy_host="$2" + proxy_port="$3" + + #Avast AntiVirus + 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" + + #BitDefender + echo "ProxyEnable = Yes" >> "$chroot_dir/etc/BitDefender-scanner/bdscan.conf" + echo "ProxyHost = $proxy_host:$proxy_port" >> "$chroot_dir/etc/BitDefender-scanner/bdscan.conf" + + #Clam AV + echo "HTTPProxyServer $proxy_host" >> "$chroot_dir/etc/clamav/freshclam.conf" + echo "HTTPProxyPort $proxy_port" >> "$chroot_dir/etc/clamav/freshclam.conf" + + #Kaspersky + sed -i "s/0<\/tDWORD>/1<\/tDWORD>/g" "$chroot_dir/etc/kl/config.xml" + sed -i "s/<\/tSTRING>/$proxy_host<\/tSTRING>/g" "$chroot_dir/etc/kl/config.xml" + sed -i "s/<\/tDWORD>/$proxy_port<\/tDWORD>/g" "$chroot_dir/etc/kl/config.xml" + + echo "done" +} +function proxy_enable() { proxy_enable-desinfect.15 $@; } + +#sourcelist_desinfect_set_nomal2015 [chroot_dir] +function sourcelist_desinfect_set_nomal2015() { + echo -n "build normal source.list ... " + #$1 = chroot directory + + sourcelist="$1/etc/apt/sources.list" + + + echo "#### Desinfe't 2015 ####" > "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2015 main" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "# #### Ubuntu 14.04 (trusty) ####" >> "$sourcelist" + echo "#" >> "$sourcelist" + echo "# deb http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" + echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" + echo "#" >> "$sourcelist" + echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" + echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" + echo "#" >> "$sourcelist" + echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" + echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" + echo "#" >> "$sourcelist" + echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse" >> "$sourcelist" + echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-backports 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 trusty main" >> "$sourcelist" + + echo "done" +} + +#sourcelist_desinfect_set_extendet2015 [chroot_dir] +function sourcelist_desinfect_set_extendet2015() { + echo -n "build extendet source.list ... " + + sourcelist="$1/etc/apt/sources.list" + + + echo "#### Desinfe't 2015 ####" > "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2015 main" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "#### Ubuntu 14.04 (trusty) ####" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" + echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" + echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" + echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://de.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse" >> "$sourcelist" + echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-backports 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 trusty main" >> "$sourcelist" + + echo "done" +} + +#os_update-desinfect.15 [chroot_dir] +function os_update-desinfect.15() { + #$1 = chroot directory + + chroot_dir="$1" + + #call main os_update + os_update-debian "$chroot_dir" + + echo "update virus definitions ... " + + #BitDefender + chroot "$chroot_dir" /bin/bash -c "bdscan --update" | grep -v "... updated" + + #Avast Avira + chroot "$chroot_dir" /bin/bash -c "/AntiVirUpdate/avupdate" | grep -v " -> " + + #Clam AV + chroot "$chroot_dir" /bin/bash -c "freshclam" > /dev/null + rm -f "$chroot_dir/var/lib/clamav/daily.cld" + + #Karspersky + echo '#!/bin/bash' > "$chroot_dir/tmp/up_kasp" + echo 'PATH=/usr/lib/kl:$PATH' >> "$chroot_dir/tmp/up_kasp" + echo 'LD_LIBRARY_PATH=/usr/lib/kl:$LD_LIBRARY_PATH' >> "$chroot_dir/tmp/up_kasp" + echo 'KL_PLUGINS_PATH=/usr/lib/kl' >> "$chroot_dir/tmp/up_kasp" + echo 'export PATH LD_LIBRARY_PATH KL_PLUGINS_PATH' >> "$chroot_dir/tmp/up_kasp" + echo '/usr/lib/kl/kav update' >> "$chroot_dir/tmp/up_kasp" + chmod +x "$chroot_dir/tmp/up_kasp" + chroot "$chroot_dir" /bin/bash -c "/tmp/up_kasp" | grep -v ".kdc" | grep -v "File downloaded" + rm "$chroot_dir/tmp/up_kasp" + + + echo "done" +} +function os_update() { os_update-desinfect.15 $@; } + +#tools_add-desinfect.15 [chroot_dir] [tools_list] +function tools_add-desinfect.15() { + #$1 = chroot directory + chroot_dir="$1" + tools_list="$2" + + sourcelist_desinfect_set_extendet2015 "$chroot_dir" + tools_add-debian "$chroot_dir" "$tools_list" + sourcelist_desinfect_set_nomal2015 "$chroot_dir" +} +function tools_add() { tools_add-desinfect.15 $@; } diff --git a/src/proj/desinfect.16 b/src/proj/desinfect.16 new file mode 100755 index 0000000..89e5d5a --- /dev/null +++ b/src/proj/desinfect.16 @@ -0,0 +1,262 @@ +#!/bin/bash +#remaster lib +[ -d "" ] || { echo "LIBDIR not exist"; exit 1; } + +#desinfect.16 +# . -Y ubuntu.14.04 -> ubuntu -> debian +source /proj/ubuntu.14.04 +project_relation="desinfect.16 $project_relation" + + +#chroot_initial-desinfect.16 [chroot_dir] +function chroot_initial-desinfect.16() { + #$1 = chroot dir + + chroot_initial-debian "$1" + + echo -n "initial desinfect on chroot ... " + + #check chroot dir + chroot_dir="$1" + [ -d "$chroot_dir" ] || { + echo "### ERROR ### chroot_initial_desinfect: chroot directory not exist!" + return 12 + } + + #mount virus definitions + mount --bind $chroot_dir/var/kl/bases_rd{.orig,} + + echo "done" +} +function chroot_initial() { chroot_initial-desinfect.16 $@; } + +#chroot_umount-desinfect.16 [chroot_dir] +function chroot_umount-desinfect.16() { + #call main mount + chroot_umount-debian "$1" + + echo -n "unmount desinfect on chroot ... " + #check chroot dir + chroot_dir="$1" + [ -d "$chroot_dir" ] || { + echo "### ERROR ### chroot_umount_desinfect: chroot directory not exist!" + return 12 + } + + umount "$chroot_dir/var/kl/bases_rd" + [ "$?" -gt 0 ] && { + echo "### ERROR ### chroot_umount_desinfect: can't umount \"$chroot_dir/var/kl/bases_rd\"!" + #return 21 + } + + echo "done" +} +function chroot_umount() { chroot_umount-desinfect.16 $@; } + +#proxy_enable-desinfect.16 [chroot_dir] [proxy_host] [proxy_port] +function proxy_enable-desinfect.16() { + + proxy_enable-debian $1 $2 $3 + + echo -n "enable proxy for desinfect's av ... " + + chroot_dir="$1" + proxy_host="$2" + proxy_port="$3" + tmp_file_344532="`mktemp`" + + #Avast AntiVirus + 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" + + #Clam AV + 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" + + #Eset AV + 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" + + #Kaspersky + sed -i "s/0<\/tDWORD>/1<\/tDWORD>/g" "$chroot_dir/etc/kl/config.xml" + sed -i "s/<\/tSTRING>/$proxy_host<\/tSTRING>/g" "$chroot_dir/etc/kl/config.xml" + sed -i "s/<\/tDWORD>/$proxy_port<\/tDWORD>/g" "$chroot_dir/etc/kl/config.xml" + + rm "$tmp_file_344532" + tmp_file_344532= + + echo "done" +} +function proxy_enable() { proxy_enable-desinfect.16 $@; } + +#sourcelist_desinfect_set_nomal2016 [chroot_dir] +function sourcelist_desinfect_set_nomal2016() { + echo -n "build normal source.list ... " + #$1 = chroot directory + + sourcelist="$1/etc/apt/sources.list" + + + echo "#### Desinfe't 2016 ####" > "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2016 main" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "# #### Ubuntu 14.04 (trusty) ####" >> "$sourcelist" + echo "#" >> "$sourcelist" + echo "# deb http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" + echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" + echo "#" >> "$sourcelist" + echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" + echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" + echo "#" >> "$sourcelist" + echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" + echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" + echo "#" >> "$sourcelist" + echo "# deb http://de.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse" >> "$sourcelist" + echo "# deb-src http://de.archive.ubuntu.com/ubuntu trusty-backports 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 trusty main" >> "$sourcelist" + + echo "done" +} + +#sourcelist_desinfect_set_extendet2016 [chroot_dir] +function sourcelist_desinfect_set_extendet2016() { + echo -n "build extendet source.list ... " + + sourcelist="$1/etc/apt/sources.list" + + + echo "#### Desinfe't 2016 ####" > "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://www.heise.de/ct/projekte/desinfect/ubuntu 2016 main" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "#### Ubuntu 14.04 (trusty) ####" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" + echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" + echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" + echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse" >> "$sourcelist" + echo "" >> "$sourcelist" + echo "deb http://de.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse" >> "$sourcelist" + echo "deb-src http://de.archive.ubuntu.com/ubuntu trusty-backports 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 trusty main" >> "$sourcelist" + + echo "done" +} + +#os_update-desinfect.16 [chroot_dir] +function os_update-desinfect.16() { + #$1 = chroot directory + + chroot_dir="$1" + + #call main os_update + os_update-debian "$chroot_dir" + + echo "update virus definitions ... " + + #Avast Avira + { + echo "Avira ..." + chroot "$chroot_dir" /bin/bash -c "/AntiVirUpdate/avupdate" | grep -v " -> " + echo "Avira done" + } + + #Clam AV + { + echo "ClamAV..." + chroot "$chroot_dir" /bin/bash -c "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" + + echo "set timeout: 2min" + av_eaet_timeout=1200 + 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" + sleep 2 + chroot "$chroot_dir" /bin/bash -c "/opt/eset/esets/sbin/esets_daemon --update" + + #warten auf daemon update ... + sleep 10m + echo "wait 10min for Eset AV update" + while [ "`chroot "$chroot_dir" /bin/bash -c "/opt/desinfect/conky_info.sh eset"`" == "$tmp_var_3092" ]; do + sleep 1 + av_eaet_timeout=$((av_eaet_timeout-1)) + [ $av_eaet_timeout -gt 0 ] || tmp_var_3092= + done + + sleep 4 + + chroot "$chroot_dir" /bin/bash -c "/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" + } + + #Karspersky + { + echo "Karspersky ..." + #gen update-scrypt + echo '#!/bin/bash' > "$chroot_dir/tmp/up_kasp" + echo 'PATH=/usr/lib/kl:$PATH' >> "$chroot_dir/tmp/up_kasp" + echo 'LD_LIBRARY_PATH=/usr/lib/kl:$LD_LIBRARY_PATH' >> "$chroot_dir/tmp/up_kasp" + echo 'KL_PLUGINS_PATH=/usr/lib/kl' >> "$chroot_dir/tmp/up_kasp" + echo 'export PATH LD_LIBRARY_PATH KL_PLUGINS_PATH' >> "$chroot_dir/tmp/up_kasp" + echo '/usr/lib/kl/kav update' >> "$chroot_dir/tmp/up_kasp" + chmod +x "$chroot_dir/tmp/up_kasp" + + chroot "$chroot_dir" /bin/bash -c "/tmp/up_kasp" | grep -v ".kdc" | grep -v "File downloaded" + rm "$chroot_dir/tmp/up_kasp" + echo "Karspersky done" + } + + echo "update virus definitions done" +} +function os_update() { os_update-desinfect.16 $@; } + +#tools_add-desinfect.16 [chroot_dir] [tools_list] +function tools_add-desinfect.16() { + #$1 = chroot directory + chroot_dir="$1" + tools_list="$2" + + sourcelist_desinfect_set_extendet2016 "$chroot_dir" + tools_add-debian "$chroot_dir" "$tools_list" + sourcelist_desinfect_set_nomal2016 "$chroot_dir" +} +function tools_add() { tools_add-desinfect.16 $@; } diff --git a/src/proj/desinfect.17 b/src/proj/desinfect.17 index eedc2ce..355e2e4 100755 --- a/src/proj/desinfect.17 +++ b/src/proj/desinfect.17 @@ -5,5 +5,259 @@ #desinfect.17 # . -Y ubuntu.16.04 -> ubuntu -> debian source /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 "sophos:
http://$proxy_host:$proxy_port
" >> "$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 $@; } diff --git a/src/proj/desinfect2017 b/src/proj/desinfect2017 deleted file mode 100644 index e69de29..0000000 diff --git a/src/proj/ubuntu b/src/proj/ubuntu index cd36ae9..8f00d9f 100755 --- a/src/proj/ubuntu +++ b/src/proj/ubuntu @@ -7,3 +7,4 @@ #################################### # . -> debian source /proj/debian +project_relation="ubuntu $project_relation" diff --git a/src/proj/ubuntu.14.04 b/src/proj/ubuntu.14.04 new file mode 100755 index 0000000..d535285 --- /dev/null +++ b/src/proj/ubuntu.14.04 @@ -0,0 +1,8 @@ +#!/bin/bash +#remaster lib +[ -d "" ] || { echo "LIBDIR not exist"; exit 1; } + +#ubuntu.14.04 +# . -> ubuntu -> debian +source /proj/ubuntu +project_relation="ubuntu.14.04 $project_relation" diff --git a/src/proj/ubuntu.16.04 b/src/proj/ubuntu.16.04 index 427a76a..3143508 100755 --- a/src/proj/ubuntu.16.04 +++ b/src/proj/ubuntu.16.04 @@ -5,3 +5,4 @@ #ubuntu.16.04 # . -> ubuntu -> debian source /proj/ubuntu +project_relation="ubuntu.16.04 $project_relation"