diff options
Diffstat (limited to 'hosts/erp1')
-rw-r--r-- | hosts/erp1 | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/hosts/erp1 b/hosts/erp1 new file mode 100644 index 0000000..9ee5fa8 --- /dev/null +++ b/hosts/erp1 @@ -0,0 +1,171 @@ +#!/bin/sh + +# start,size,id,bootable +part_script=' + ,+,83,* + ' + +# fs mp type options dump pass +fstab=' + @DEV1@ / ext4 errors=remount-ro 0 1 + ' + +mirror='http://httpredir.debian.org/debian' +suite='jessie' +arch='amd64' +extra_pkgs=' + linux-image-amd64 + sysvinit-core + ' + +hostname='erp1' + +locale='en_US' +supported_locales='en_US.UTF-8 en_DK.UTF-8' + +time_zone='UTC' + +passwd_shadow='on' +root_passwd_crypted='$6$he1NJ78D$MX6RAaXqldtiHl5e5tHtBn06lol0py5Y6fvsQrJ0vY2olzQabWKlqQxCtROVYf6Ud/du4AqcGnj06YKYRtTDb0' +root_login=true +user_make=true +user_name='user' +user_full_name='User' +user_groups='adm cdrom floppy sudo audio dip video plugdev netdev' +user_passwd_crypted='$6$HW3iK00IksexUd$6cyoqzc/VL7cXryGM8hxl9SVYornqTK9x3DMJnU4WmQaAMJeJIXPXMZwjLATtlYS5tvtL//6ms23vtx6.MIY0/' + +debconf_selections=' + keyboard-configuration keyboard-configuration/layout select English (US) + keyboard-configuration keyboard-configuration/variant select English (US) + ' + +postinst_pkgs=' + bash bash-completion + screen sudo adduser + bc + nocache + lsof + info + vcsh myrepos + vim bvi less wdiff vbindiff + git + flashrom + dnsutils whois ftp + gddrescue + alsa-utils alsa-base + openssh-server openssh-client rsync netcat-openbsd + htop ntp ncdu + postgresql apache2 + ' + +do_postinst() +{ + # Add "deb-src" line and backports. + cat >"${target}/etc/apt/sources.list" <<-EOF + deb http://httpredir.debian.org/debian jessie main + deb-src http://httpredir.debian.org/debian jessie main + EOF + cat >"${target}/etc/apt/sources.list.d/jessie-backports.list" <<-EOF + deb http://httpredir.debian.org/debian jessie-backports main + deb-src http://httpredir.debian.org/debian jessie-backports main + EOF + in_target apt-get update || return 1 + + # Purge systemd. + in_target apt-get -q -y purge libpam-systemd systemd || return 1 + in_target apt-get -q -y --purge autoremove || return 1 + + # Disable services. + printf '#!/bin/sh\n\nexit 101\n' >"${target}/usr/sbin/policy-rc.d" + chmod a+x "${target}/usr/sbin/policy-rc.d" + + # Install LedgerSMB. + cat >"${target}/etc/apt/sources.list.d/ledgersmb.list" <<-EOF + deb https://apt.ledgersmb.org/ jessie main + deb-src https://apt.ledgersmb.org/ jessie main + EOF + wget -O - https://apt.ledgersmb.org/apt-ledgersmb-org_public-key.asc | \ + in_target apt-key add - || return 1 + in_target apt-get update || return 1 + in_target apt-get install ledgersmb || return 1 + + # Install Odoo. + cat >"${target}/etc/apt/sources.list.d/odoo.list" <<-EOF + deb http://nightly.odoo.com/9.0/nightly/deb/ ./ + deb-src http://nightly.odoo.com/9.0/nightly/deb/ ./ + EOF + wget -O - https://nightly.odoo.com/odoo.key | \ + in_target apt-key add - || return 1 + in_target apt-get update || return 1 + in_target apt-get install odoo || return 1 + + # Enable services. + rm -f "${target}/usr/sbin/policy-rc.d" + + # Remove packages from APT cache. + in_target apt-get clean || return 1 + + # Update initramfs. + in_target update-initramfs -u + + # Configure network interfaces. + cat >"${target}/etc/network/interfaces" <<-EOF + # This file describes the network interfaces available on your system + # and how to activate them. For more information, see interfaces(5). + + # The loopback network interface + auto lo + iface lo inet loopback + + # The primary network interface + auto eth0 + allow-hotplug eth0 + iface eth0 inet dhcp + EOF + + # Use temporary configuation SSH key. + install -d -o 1000 -g 1000 -m 0700 "${target}/home/user/.ssh" || return 1 + cat >"${target}/home/user/.ssh/id_rsa" <<-EOF + -----BEGIN RSA PRIVATE KEY----- + MIICXAIBAAKBgQCzAF0zqeS2X0TuVOIxqMec3lMzZy/MHQswPP+BQkmc2D3YVb2x + px1YAAweQnfZ27pGJkDztStOtMQJeaOsnAVdm2NSe+hEdaKAOxf9p6t+F930HM/w + 1wkm1ddlsnCaaCipzGVOM77Q/brEItWvuq8G0+/fgN1o4pZzl4Bub/4D4QIDAQAB + AoGAS+wKnAAiXuv3m7LrIa75w2JVHcdVcZicB0DICnYoLNtXF+v+AlzkSE/009zT + YtccoeZVxEiCbuajA3XRY0PlzgGHTbsGn1BWqI9cjdXTiotnjzOH8zr3JiMZMWwf + hqwbtleP+yruNPHMxQ8dKVXv875NKJW+aArmQWtjeMOy/vECQQDdsvPJ4bUu8M7/ + MXqGtz8CJbrRp+ZMKUw0WuwSwTfHRs/Jp27mWf5+t/u+RN8WK/RRD8FHvz4azLhr + sNUFiE69AkEAzrI/DFBFOM5mUECujs2UvCCeWZiAi9QoJ7kDrrAkcG+hMalpNUU3 + SUZ76stBUk3hZNpc82aq0a0o8ac0VrBd9QJAB3nbYrlrxLN2J4Dhot1XEJl5HUzO + JU9XNITEZTWCzgODSkeNI9NxE5DcumPUKgk9aeZgHC1EyN6ScX87D76y+QJAL8DE + ii69X1toDeBzs7BRTYlnrCFsiWGRiWPYMvKk6IkRv6x5DwKXvEkZdexRghdWHHvK + f71Xd6u+yt2rXN/QRQJBALv6SwbokdXp5qKJV48QG452dSOT7FQEINnCsIeNUKP6 + 9YyaZxqLia6pEbEKTSRdztXaMqRsrmOG8E084sFg8DQ= + -----END RSA PRIVATE KEY----- + EOF + in_target chown user:user '/home/user/.ssh/id_rsa' + in_target chmod 0600 '/home/user/.ssh/id_rsa' + + # Set up SSH known hosts. + cat >"${target}/home/user/.ssh/known_hosts" <<-EOF + |1|fypb7kn7NH0fqHGj9Xs/rdpO71s=|SCtg2BdMNB9zL5bAPYkJy1uiNSM= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCXcG5BuZi4947D9WqY1L6CzaH4Qjw7YA7Dja+09y0nZjLVDd1saZCPkTjo1PEHxVCvSHvc0VmRqIZ2wUGtuqIlgGPMphCPAtdHN63YcNXqIhjEygLsaSZgy1Qz33YQF+YSANbeZQ4vnqiYr3C1IA7Cw4km/0s1BvP3t9yJf/iYODZqjVqUhqB4hzXJcBZHrgnM4LmPD4NH81fCqpwfRviNQNFAqd/aT1YTvgdn46HTVz7dV8ahW6SLXBTJZvO9dLAAKOPPZwuluaRphBqjPLC83zsihQ884SAH+AKcpN1ne73UZUuA1Gyk3HW+a/ngbzm1nmoeC0Sm1nNlTvC4WrLD + |1|z7it+otnWcn/98YKdeaBCXl+ug8=|NFRpdQZBMTAuWbUDAqXLptFR5Ao= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCXcG5BuZi4947D9WqY1L6CzaH4Qjw7YA7Dja+09y0nZjLVDd1saZCPkTjo1PEHxVCvSHvc0VmRqIZ2wUGtuqIlgGPMphCPAtdHN63YcNXqIhjEygLsaSZgy1Qz33YQF+YSANbeZQ4vnqiYr3C1IA7Cw4km/0s1BvP3t9yJf/iYODZqjVqUhqB4hzXJcBZHrgnM4LmPD4NH81fCqpwfRviNQNFAqd/aT1YTvgdn46HTVz7dV8ahW6SLXBTJZvO9dLAAKOPPZwuluaRphBqjPLC83zsihQ884SAH+AKcpN1ne73UZUuA1Gyk3HW+a/ngbzm1nmoeC0Sm1nNlTvC4WrLD + EOF + in_target chown user:user '/home/user/.ssh/known_hosts' + in_target chmod 0600 '/home/user/.ssh/known_hosts' + + # Bootstrap vcsh and mr. + rm -f "${target}/home/user/.profile" "${target}/home/user/.bashrc" \ + "${target}/home/user/.bash_logout" + in_target sudo -u user vcsh clone \ + ssh://git@git.pehjota.net/dotfiles/mr.git mr || return 1 + in_target sudo -u user mr update || return 1 + + # Generate target's SSH keypair. + #rm -f "${target}/home/user/.ssh/id_rsa" \ + # "${target}/home/user/.ssh/id_rsa.pub" || return 1 + #in_target ssh-keygen -b 4096 -C user@erp1 -t rsa \ + # -f /home/user/.ssh/id_rsa </dev/null || return 1 + #cp "${target}/home/user/.ssh/id_rsa.pub" 'user@erp1.pub' || return 1 + + return 0 +} |