From b92561806e726559e5974f3cfd1cd2e37758b60d Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 26 Sep 2018 23:05:42 +0200 Subject: [PATCH 01/14] Update debian stretch to buster --- .gitlab-ci.yml | 2 +- Makefile | 30 +++++++++---------- .../ansible/roles/packages/tasks/sources.yml | 12 ++++---- ...debian-stretch.json => debian-buster.json} | 4 +-- security-scanner/Dockerfile | 2 +- txt.cfg | 4 +-- 6 files changed, 27 insertions(+), 27 deletions(-) rename packer/{debian-stretch.json => debian-buster.json} (97%) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9fdb4ec..97e4d49 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -76,7 +76,7 @@ security_scanner: services: - docker:dind script: - - make images/debian-stretch.squashfs + - make images/debian-buster.squashfs artifacts: paths: - images diff --git a/Makefile b/Makefile index f84b350..e8716e9 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ qemu_network = 10.2.2.0 qemu_netmask = 24 qemu_vm_ip = 10.2.2.10 qemu_disk = tmp/qemu-disk.img -qemu_target ?= debian-stretch +qemu_target ?= debian-buster qemu_kernel = $(qemu_target).linux qemu_torrent = $(qemu_target).torrent qemu_initramfs = $(shell \ @@ -33,7 +33,7 @@ fi \ ci_environment=$(shell env | sed -n 's/^\(CI_.*\)=.*/-e \1/p') .PHONY: default -default: builderimg images/debian-stretch.squashfs +default: builderimg images/debian-buster.squashfs .PHONY: clean clean: @@ -52,7 +52,7 @@ images: [ ! -d "$@" ] && mkdir "$@" touch "$@" -images/debian-stretch.squashfs: images +images/debian-buster.squashfs: images docker run \ --rm \ -v /var/run/docker.sock:/var/run/docker.sock \ @@ -67,9 +67,9 @@ images/debian-stretch.squashfs: images -e "COMPRESSION_LEVEL=$(COMPRESSION_LEVEL)" \ $(ci_environment) \ "$(DOCKER_IMAGE_BUILDER)" \ - debian-stretch + debian-buster -images/debian-stretch.torrent: images +images/debian-buster.torrent: images docker run \ --rm \ -v "${PWD}/images:/images" \ @@ -79,7 +79,7 @@ images/debian-stretch.torrent: images -e "WEBSEED=$(WEBSEED)" \ -e "TASK=torrent" \ "$(DOCKER_IMAGE_BUILDER)" \ - debian-stretch + debian-buster .PHONY: ansible ansible: @@ -102,24 +102,24 @@ ansible: # updates the initramfs # only used for development -images/debian-stretch.initramfs.dev: tmp/initramfs-extracted/debian-stretch packer/initramfs/labsync - cp packer/initramfs/labsync tmp/initramfs-extracted/debian-stretch/scripts/labsync - (cd tmp/initramfs-extracted/debian-stretch && find . | cpio -H newc -o | gzip > $(CWD)/images/debian-stretch.initramfs.dev) +images/debian-buster.initramfs.dev: tmp/initramfs-extracted/debian-buster packer/initramfs/labsync + cp packer/initramfs/labsync tmp/initramfs-extracted/debian-buster/scripts/labsync + (cd tmp/initramfs-extracted/debian-buster && find . | cpio -H newc -o | gzip > $(CWD)/images/debian-buster.initramfs.dev) tmp: [ ! -d "$@" ] && mkdir "$@" || true -tmp/initramfs-extracted/debian-stretch: images/debian-stretch.initramfs - rm -rf tmp/initramfs-extracted/debian-stretch - mkdir -p tmp/initramfs-extracted/debian-stretch - (cd tmp/initramfs-extracted/debian-stretch && zcat "$(CWD)/images/debian-stretch.initramfs" | cpio -i) - touch tmp/initramfs-extracted/debian-stretch +tmp/initramfs-extracted/debian-buster: images/debian-buster.initramfs + rm -rf tmp/initramfs-extracted/debian-buster + mkdir -p tmp/initramfs-extracted/debian-buster + (cd tmp/initramfs-extracted/debian-buster && zcat "$(CWD)/images/debian-buster.initramfs" | cpio -i) + touch tmp/initramfs-extracted/debian-buster $(qemu_disk): tmp qemu-img create "$@" 20G tmp/netboot.tar.gz: tmp - wget -c -O "$@" https://cdn-aws.deb.debian.org/debian/dists/stretch/main/installer-amd64/current/images/netboot/netboot.tar.gz + wget -c -O "$@" https://cdn-aws.deb.debian.org/debian/dists/buster/main/installer-amd64/current/images/netboot/netboot.tar.gz touch "$@" tmp/tftproot: tmp/netboot.tar.gz diff --git a/packer/ansible/roles/packages/tasks/sources.yml b/packer/ansible/roles/packages/tasks/sources.yml index d6befbc..0392177 100644 --- a/packer/ansible/roles/packages/tasks/sources.yml +++ b/packer/ansible/roles/packages/tasks/sources.yml @@ -11,20 +11,20 @@ - name: configure main repo apt_repository: - filename: "{{ ansible_distribution_release }}" - repo: "deb {{ debian_mirror }} {{ ansible_distribution_release }} {{ debian_sections | join(' ') }}" + filename: "{{ ansible_lsb.codename }}" + repo: "deb {{ debian_mirror }} {{ ansible_lsb.codename }} {{ debian_sections | join(' ') }}" state: present - name: configure updates repo apt_repository: - filename: "{{ ansible_distribution_release }}-updates" - repo: "deb {{ mirror }} {{ ansible_distribution_release }}-updates {{ debian_sections | join(' ') }}" + filename: "{{ ansible_lsb.codename }}-updates" + repo: "deb {{ mirror }} {{ ansible_lsb.codename }}-updates {{ debian_sections | join(' ') }}" state: present vars: mirror: "{{ debian_mirror_updates | default(debian_mirror) }}" - name: configure security updates repo apt_repository: - filename: "{{ ansible_distribution_release }}-security" - repo: "deb {{ debian_mirror_security }} {{ ansible_distribution_release }}/updates {{ debian_sections | join(' ') }}" + filename: "{{ ansible_lsb.codename }}-security" + repo: "deb {{ debian_mirror_security }} {{ ansible_lsb.codename }}/updates {{ debian_sections | join(' ') }}" state: present diff --git a/packer/debian-stretch.json b/packer/debian-buster.json similarity index 97% rename from packer/debian-stretch.json rename to packer/debian-buster.json index 6ec13b0..645efee 100644 --- a/packer/debian-stretch.json +++ b/packer/debian-buster.json @@ -22,7 +22,7 @@ [ { "type": "docker", - "image": "debian:stretch", + "image": "debian:buster", "discard": true, "run_command": [ "-d", @@ -80,7 +80,7 @@ }, { "type": "shell", - "inline": [ "apt-get -y install openssh-server python" ] + "inline": [ "apt-get -y install openssh-server python lsb-release" ] }, { "type": "ansible", diff --git a/security-scanner/Dockerfile b/security-scanner/Dockerfile index d72732c..3b1eb74 100644 --- a/security-scanner/Dockerfile +++ b/security-scanner/Dockerfile @@ -1,4 +1,4 @@ -FROM debian:stretch-slim +FROM debian:buster-slim RUN apt-get update \ && apt-get -y install \ diff --git a/txt.cfg b/txt.cfg index 98ca8e5..2f544a4 100644 --- a/txt.cfg +++ b/txt.cfg @@ -1,7 +1,7 @@ label labsync menu label ^labsync - kernel images/debian-stretch.linux - append initrd=images/debian-stretch.initramfs.dev boot=labsync labsync_disk=sda labsync_partsize_boot=512 labsync_torrent=http://10.2.2.1/debian-stretch.torrent quiet vga=792 ip=10.2.2.10:::255.255.255.0:qemu-host:ens3:off labsync_wait=pause + kernel images/debian-buster.linux + append initrd=images/debian-buster.initramfs.dev boot=labsync labsync_disk=sda labsync_partsize_boot=512 labsync_torrent=http://10.2.2.1/debian-buster.torrent quiet vga=792 ip=10.2.2.10:::255.255.255.0:qemu-host:ens3:off labsync_wait=pause label install menu label ^Install From 600d1e537b762eff594cc8fe63209b94a2a5c905 Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 3 Apr 2019 19:55:03 +0200 Subject: [PATCH 02/14] Tag docker images with `CI_COMMIT_REF_SLUG` --- Makefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index e8716e9..497fc3f 100644 --- a/Makefile +++ b/Makefile @@ -1,9 +1,11 @@ -PACKER_VERSION ?= 1.2.0 +PACKER_VERSION ?= 1.3.5 ANNOUNCE ?= http://10.2.2.1:6969/announce WEBSEED ?= http://10.2.2.1 -DOCKER_IMAGE_BUILDER ?= labsync-builder -DOCKER_IMAGE_SECURITY_SCANNER ?= security-scanner +CI_COMMIT_REF_SLUG ?= master + +DOCKER_IMAGE_BUILDER ?= labsync-builder:$(CI_COMMIT_REF_SLUG) +DOCKER_IMAGE_SECURITY_SCANNER ?= security-scanner:$(CI_COMMIT_REF_SLUG) CWD=$(abspath $(patsubst %/,%,$(dir $(abspath $(lastword $(MAKEFILE_LIST)))))) From 1c3b583d80581fff9ae0095b90e3a747894c6679 Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 3 Apr 2019 20:17:47 +0200 Subject: [PATCH 03/14] Use debian package to install cura --- packer/ansible/roles/fablab/files/cura.desktop | 9 --------- packer/ansible/roles/fablab/files/cura.png | Bin 2710 -> 0 bytes packer/ansible/roles/fablab/tasks/cura.yml | 17 +++-------------- 3 files changed, 3 insertions(+), 23 deletions(-) delete mode 100644 packer/ansible/roles/fablab/files/cura.desktop delete mode 100644 packer/ansible/roles/fablab/files/cura.png diff --git a/packer/ansible/roles/fablab/files/cura.desktop b/packer/ansible/roles/fablab/files/cura.desktop deleted file mode 100644 index 0c5e228..0000000 --- a/packer/ansible/roles/fablab/files/cura.desktop +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Name=Cura -GenericName=Cura -Comment=3D slicer -Exec=/opt/cura.AppImage -Icon=/opt/cura.png -Terminal=false -Type=Application -Categories=Graphics diff --git a/packer/ansible/roles/fablab/files/cura.png b/packer/ansible/roles/fablab/files/cura.png deleted file mode 100644 index 8fd6f4169100dfed65c69ab9a36e2ad9e911a33d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2710 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 diff --git a/packer/ansible/roles/fablab/tasks/cura.yml b/packer/ansible/roles/fablab/tasks/cura.yml index b77cc83..a2f3d2f 100644 --- a/packer/ansible/roles/fablab/tasks/cura.yml +++ b/packer/ansible/roles/fablab/tasks/cura.yml @@ -1,16 +1,5 @@ --- - name: install cura - get_url: - url: "https://download.ultimaker.com/current/Cura-{{ fablab.cura.version }}.AppImage" - dest: /opt/cura.AppImage - mode: 775 - -- name: get cura icon - copy: - src: cura.png - dest: /opt/cura.png - -- name: install cura dekstop file - copy: - src: cura.desktop - dest: /usr/share/applications/cura.desktop + apt: + name: cura + state: present From b4fbbf26cee7ee7734aba633fc0ac8278a396af0 Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 3 Apr 2019 20:22:26 +0200 Subject: [PATCH 04/14] Use debian package to install docker --- packer/ansible/roles/docker/files/docker.asc | 62 ------------------- .../ansible/roles/docker/tasks/packages.yml | 22 +------ 2 files changed, 3 insertions(+), 81 deletions(-) delete mode 100644 packer/ansible/roles/docker/files/docker.asc diff --git a/packer/ansible/roles/docker/files/docker.asc b/packer/ansible/roles/docker/files/docker.asc deleted file mode 100644 index ee7872e..0000000 --- a/packer/ansible/roles/docker/files/docker.asc +++ /dev/null @@ -1,62 +0,0 @@ ------BEGIN PGP PUBLIC KEY BLOCK----- - -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 -YT90qFF93M3v01BbxP+EIY2/9tiIPbrd -=0YYh ------END PGP PUBLIC KEY BLOCK----- diff --git a/packer/ansible/roles/docker/tasks/packages.yml b/packer/ansible/roles/docker/tasks/packages.yml index 0a31361..9a89248 100644 --- a/packer/ansible/roles/docker/tasks/packages.yml +++ b/packer/ansible/roles/docker/tasks/packages.yml @@ -1,23 +1,7 @@ --- -- name: install dependencies +- name: install docker packages apt: name: - - apt-transport-https - - ca-certificates - state: present - -- name: Add apt key - apt_key: - data: "{{ lookup('file', 'docker.asc') }}" - state: present - -- name: Add repository - apt_repository: - repo: "deb [arch=amd64] https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable" - filename: docker - state: present - -- name: install docker-ce - apt: - name: "docker-ce=18.06.1~ce~3-0~debian" + - docker.io + - docker-compose state: present From 6cd4cd2b05214f1ec72d4c76129fa062bc004ab5 Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 3 Apr 2019 20:24:59 +0200 Subject: [PATCH 05/14] Add slic3r for prusa --- packer/ansible/roles/fablab/tasks/main.yml | 3 +++ packer/ansible/roles/fablab/tasks/prusa.yml | 5 +++++ 2 files changed, 8 insertions(+) create mode 100644 packer/ansible/roles/fablab/tasks/prusa.yml diff --git a/packer/ansible/roles/fablab/tasks/main.yml b/packer/ansible/roles/fablab/tasks/main.yml index 3e50409..891123b 100644 --- a/packer/ansible/roles/fablab/tasks/main.yml +++ b/packer/ansible/roles/fablab/tasks/main.yml @@ -21,5 +21,8 @@ - import_tasks: metalcut.yml tags: - fablab:metalcut + - import_tasks: prusa.yml + tags: + - fablab:prusa tags: - fablab diff --git a/packer/ansible/roles/fablab/tasks/prusa.yml b/packer/ansible/roles/fablab/tasks/prusa.yml new file mode 100644 index 0000000..31a992c --- /dev/null +++ b/packer/ansible/roles/fablab/tasks/prusa.yml @@ -0,0 +1,5 @@ +--- +- name: install slic3r-prusa + apt: + name: slic3r-prusa + state: present From 7ff816bea1b89cac382644e19b0e5dfe57593256 Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 3 Apr 2019 20:27:31 +0200 Subject: [PATCH 06/14] Add cups --- packer/ansible/playbook.yml | 1 + .../ansible/roles/cups/files/kopierviech.ppd | 290 ++++++++++++++++++ packer/ansible/roles/cups/tasks/main.yml | 18 ++ .../roles/cups/templates/printers.conf.j2 | 28 ++ 4 files changed, 337 insertions(+) create mode 100644 packer/ansible/roles/cups/files/kopierviech.ppd create mode 100644 packer/ansible/roles/cups/tasks/main.yml create mode 100644 packer/ansible/roles/cups/templates/printers.conf.j2 diff --git a/packer/ansible/playbook.yml b/packer/ansible/playbook.yml index cf6177b..811aa31 100644 --- a/packer/ansible/playbook.yml +++ b/packer/ansible/playbook.yml @@ -14,6 +14,7 @@ - role: fablab - role: hardware - role: docker + - role: cups vars: auth: sudo: diff --git a/packer/ansible/roles/cups/files/kopierviech.ppd b/packer/ansible/roles/cups/files/kopierviech.ppd new file mode 100644 index 0000000..2544b4d --- /dev/null +++ b/packer/ansible/roles/cups/files/kopierviech.ppd @@ -0,0 +1,290 @@ +*PPD-Adobe: "4.3" +*% +*% For information on using this, and to obtain the required backend +*% script, consult http://www.openprinting.org/ +*% +*% This file is published under the GNU General Public License +*% +*% PPD-O-MATIC (4.0.0 or newer) generated this PPD file. It is for use with +*% all programs and environments which use PPD files for dealing with +*% printer capability information. The printer must be configured with the +*% "foomatic-rip" backend filter script of Foomatic 4.0.0 or newer. This +*% file and "foomatic-rip" work together to support PPD-controlled printer +*% driver option access with all supported printer drivers and printing +*% spoolers. +*% +*% To save this file on your disk, wait until the download has completed +*% (the animation of the browser logo must stop) and then use the +*% "Save as..." command in the "File" menu of your browser or in the +*% pop-up manu when you click on this document with the right mouse button. +*% DO NOT cut and paste this file into an editor with your mouse. This can +*% introduce additional line breaks which lead to unexpected results. +*% +*% You may save this file as 'Epson-LQ-850-lq850.ppd' +*% +*% +*FormatVersion: "4.3" +*FileVersion: "1.1" +*LanguageVersion: English +*LanguageEncoding: ISOLatin1 +*PCFileName: "LQ850.PPD" +*Manufacturer: "Epson" +*Product: "(LQ-850)" +*cupsVersion: 1.0 +*cupsManualCopies: True +*cupsModelNumber: 2 +*cupsFilter: "application/vnd.cups-postscript 100 foomatic-rip" +*cupsFilter: "application/vnd.cups-pdf 0 foomatic-rip" +*%pprRIP: foomatic-rip other +*ModelName: "Epson LQ-850" +*ShortNickName: "Epson LQ-850 lq850" +*NickName: "Epson LQ-850 Foomatic/lq850 (recommended)" +*PSVersion: "(3010.000) 550" +*PSVersion: "(3010.000) 651" +*PSVersion: "(3010.000) 652" +*PSVersion: "(3010.000) 653" +*PSVersion: "(3010.000) 704" +*PSVersion: "(3010.000) 705" +*PSVersion: "(3010.000) 800" +*PSVersion: "(3010.000) 815" +*PSVersion: "(3010.000) 850" +*PSVersion: "(3010.000) 860" +*PSVersion: "(3010.000) 861" +*PSVersion: "(3010.000) 862" +*PSVersion: "(3010.000) 863" +*PSVersion: "(3010.000) 864" +*PSVersion: "(3010.000) 870" +*LanguageLevel: "3" +*ColorDevice: False +*DefaultColorSpace: Gray +*FileSystem: False +*Throughput: "1" +*LandscapeOrientation: Plus90 +*TTRasterizer: Type42 +*1284DeviceID: "DRV:Dlq850,R1,M0,F1,P0,TG;" + +*driverName lq850: "" +*driverType G/Ghostscript built-in: "" +*driverUrl: "http://www.ghostscript.com/" +*driverObsolete: False +*driverManufacturerSupplied: False +*driverFreeSoftware: True + + + + +*HWMargins: 18 36 18 36 +*VariablePaperSize: True +*MaxMediaWidth: 100000 +*MaxMediaHeight: 100000 +*NonUIOrderDependency: 100 AnySetup *CustomPageSize +*CustomPageSize True: "pop pop pop pop pop +%% FoomaticRIPOptionSetting: PageSize=Custom" +*End +*FoomaticRIPOptionSetting PageSize=Custom: " -dDEVICEWIDTHPOINTS=0 -dD&& +EVICEHEIGHTPOINTS=0" +*End +*ParamCustomPageSize Width: 1 points 36 100000 +*ParamCustomPageSize Height: 2 points 36 100000 +*ParamCustomPageSize Orientation: 3 int 0 0 +*ParamCustomPageSize WidthOffset: 4 points 0 0 +*ParamCustomPageSize HeightOffset: 5 points 0 0 + +*FoomaticIDs: Epson-LQ-850 lq850 +*FoomaticRIPCommandLine: "gs -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPA&& +USE -dNOMEDIAATTRS -dNOINTERPOLATE -sDEVICE=lq850%A%Z -sOutputFile=- -&& +" +*End + +*OpenGroup: General/General + +*OpenUI *PageSize/Page Size: PickOne +*FoomaticRIPOption PageSize: enum CmdLine A +*OrderDependency: 100 AnySetup *PageSize +*DefaultPageSize: A4 +*PageSize Letter/US Letter: "%% FoomaticRIPOptionSetting: PageSize=Letter" +*FoomaticRIPOptionSetting PageSize=Letter: " -dDEVICEWIDTHPOINTS=612 -&& +dDEVICEHEIGHTPOINTS=792" +*End +*PageSize A4/A4: "%% FoomaticRIPOptionSetting: PageSize=A4" +*FoomaticRIPOptionSetting PageSize=A4: " -dDEVICEWIDTHPOINTS=595 -dDEV&& +ICEHEIGHTPOINTS=842" +*End +*PageSize 3x5/3x5: "%% FoomaticRIPOptionSetting: PageSize=3x5" +*FoomaticRIPOptionSetting PageSize=3x5: " -dDEVICEWIDTHPOINTS=216 -dDE&& +VICEHEIGHTPOINTS=360" +*End +*PageSize 4x6/4x6: "%% FoomaticRIPOptionSetting: PageSize=4x6" +*FoomaticRIPOptionSetting PageSize=4x6: " -dDEVICEWIDTHPOINTS=288 -dDE&& +VICEHEIGHTPOINTS=432" +*End +*PageSize 5x7/5x7: "%% FoomaticRIPOptionSetting: PageSize=5x7" +*FoomaticRIPOptionSetting PageSize=5x7: " -dDEVICEWIDTHPOINTS=360 -dDE&& +VICEHEIGHTPOINTS=504" +*End +*PageSize 5x8/5x8: "%% FoomaticRIPOptionSetting: PageSize=5x8" +*FoomaticRIPOptionSetting PageSize=5x8: " -dDEVICEWIDTHPOINTS=360 -dDE&& +VICEHEIGHTPOINTS=576" +*End +*PageSize 6x8/6x8: "%% FoomaticRIPOptionSetting: PageSize=6x8" +*FoomaticRIPOptionSetting PageSize=6x8: " -dDEVICEWIDTHPOINTS=432 -dDE&& +VICEHEIGHTPOINTS=576" +*End +*PageSize 8x10/8x10: "%% FoomaticRIPOptionSetting: PageSize=8x10" +*FoomaticRIPOptionSetting PageSize=8x10: " -dDEVICEWIDTHPOINTS=576 -dD&& +EVICEHEIGHTPOINTS=720" +*End +*PageSize 8x12/8x12: "%% FoomaticRIPOptionSetting: PageSize=8x12" +*FoomaticRIPOptionSetting PageSize=8x12: " -dDEVICEWIDTHPOINTS=576 -dD&& +EVICEHEIGHTPOINTS=864" +*End +*PageSize 11x14/11x14: "%% FoomaticRIPOptionSetting: PageSize=11x14" +*FoomaticRIPOptionSetting PageSize=11x14: " -dDEVICEWIDTHPOINTS=792 -d&& +DEVICEHEIGHTPOINTS=1008" +*End +*PageSize 11x14.Transverse/14x11: "%% FoomaticRIPOptionSetting: PageSize=11x14.Transverse" +*FoomaticRIPOptionSetting PageSize=11x14.Transverse: " -dDEVICEWIDTHPO&& +INTS=1008 -dDEVICEHEIGHTPOINTS=792" +*End +*PageSize 16x20/16x20: "%% FoomaticRIPOptionSetting: PageSize=16x20" +*FoomaticRIPOptionSetting PageSize=16x20: " -dDEVICEWIDTHPOINTS=1152 -&& +dDEVICEHEIGHTPOINTS=1440" +*End +*PageSize 16x24/16x24: "%% FoomaticRIPOptionSetting: PageSize=16x24" +*FoomaticRIPOptionSetting PageSize=16x24: " -dDEVICEWIDTHPOINTS=1152 -&& +dDEVICEHEIGHTPOINTS=1728" +*End +*PageSize 210x305mm/210x305mm (8.3x12): "%% FoomaticRIPOptionSetting: PageSize=210x305mm" +*FoomaticRIPOptionSetting PageSize=210x305mm: " -dDEVICEWIDTHPOINTS=59&& +5 -dDEVICEHEIGHTPOINTS=864" +*End +*PageSize 378x279mm.Transverse/US Standard Fanfold (14.875x11): "%% FoomaticRIPOptionSetting: PageSize=378x279mm.Transverse" +*FoomaticRIPOptionSetting PageSize=378x279mm.Transverse: " -dDEVICEWID&& +THPOINTS=1071 -dDEVICEHEIGHTPOINTS=792" +*End +*PageSize A3/A3: "%% FoomaticRIPOptionSetting: PageSize=A3" +*FoomaticRIPOptionSetting PageSize=A3: " -dDEVICEWIDTHPOINTS=842 -dDEV&& +ICEHEIGHTPOINTS=1191" +*End +*PageSize FanFoldGerman/German Standard Fanfold (8.5x12): "%% FoomaticRIPOptionSetting: PageSize=FanFoldGerman" +*FoomaticRIPOptionSetting PageSize=FanFoldGerman: " -dDEVICEWIDTHPOINT&& +S=612 -dDEVICEHEIGHTPOINTS=864" +*End +*PageSize Legal/US Legal: "%% FoomaticRIPOptionSetting: PageSize=Legal" +*FoomaticRIPOptionSetting PageSize=Legal: " -dDEVICEWIDTHPOINTS=612 -d&& +DEVICEHEIGHTPOINTS=1008" +*End +*PageSize SuperB/Super B (13x19): "%% FoomaticRIPOptionSetting: PageSize=SuperB" +*FoomaticRIPOptionSetting PageSize=SuperB: " -dDEVICEWIDTHPOINTS=936 -&& +dDEVICEHEIGHTPOINTS=1368" +*End +*CloseUI: *PageSize + +*OpenUI *PageRegion: PickOne +*OrderDependency: 100 AnySetup *PageRegion +*DefaultPageRegion: A4 +*PageRegion Letter/US Letter: "%% FoomaticRIPOptionSetting: PageSize=Letter" +*PageRegion A4/A4: "%% FoomaticRIPOptionSetting: PageSize=A4" +*PageRegion 3x5/3x5: "%% FoomaticRIPOptionSetting: PageSize=3x5" +*PageRegion 4x6/4x6: "%% FoomaticRIPOptionSetting: PageSize=4x6" +*PageRegion 5x7/5x7: "%% FoomaticRIPOptionSetting: PageSize=5x7" +*PageRegion 5x8/5x8: "%% FoomaticRIPOptionSetting: PageSize=5x8" +*PageRegion 6x8/6x8: "%% FoomaticRIPOptionSetting: PageSize=6x8" +*PageRegion 8x10/8x10: "%% FoomaticRIPOptionSetting: PageSize=8x10" +*PageRegion 8x12/8x12: "%% FoomaticRIPOptionSetting: PageSize=8x12" +*PageRegion 11x14/11x14: "%% FoomaticRIPOptionSetting: PageSize=11x14" +*PageRegion 11x14.Transverse/14x11: "%% FoomaticRIPOptionSetting: PageSize=11x14.Transverse" +*PageRegion 16x20/16x20: "%% FoomaticRIPOptionSetting: PageSize=16x20" +*PageRegion 16x24/16x24: "%% FoomaticRIPOptionSetting: PageSize=16x24" +*PageRegion 210x305mm/210x305mm (8.3x12): "%% FoomaticRIPOptionSetting: PageSize=210x305mm" +*PageRegion 378x279mm.Transverse/US Standard Fanfold (14.875x11): "%% FoomaticRIPOptionSetting: PageSize=378x279mm.Transverse" +*PageRegion A3/A3: "%% FoomaticRIPOptionSetting: PageSize=A3" +*PageRegion FanFoldGerman/German Standard Fanfold (8.5x12): "%% FoomaticRIPOptionSetting: PageSize=FanFoldGerman" +*PageRegion Legal/US Legal: "%% FoomaticRIPOptionSetting: PageSize=Legal" +*PageRegion SuperB/Super B (13x19): "%% FoomaticRIPOptionSetting: PageSize=SuperB" +*CloseUI: *PageRegion + +*DefaultImageableArea: A4 +*ImageableArea Letter/US Letter: "18 36 594 756" +*ImageableArea A4/A4: "18 36 577 806" +*ImageableArea 3x5/3x5: "18 36 198 324" +*ImageableArea 4x6/4x6: "18 36 270 396" +*ImageableArea 5x7/5x7: "18 36 342 468" +*ImageableArea 5x8/5x8: "18 36 342 540" +*ImageableArea 6x8/6x8: "18 36 414 540" +*ImageableArea 8x10/8x10: "18 36 558 684" +*ImageableArea 8x12/8x12: "18 36 558 828" +*ImageableArea 11x14/11x14: "18 36 774 972" +*ImageableArea 11x14.Transverse/14x11: "18 36 990 756" +*ImageableArea 16x20/16x20: "18 36 1134 1404" +*ImageableArea 16x24/16x24: "18 36 1134 1692" +*ImageableArea 210x305mm/210x305mm (8.3x12): "18 36 577 828" +*ImageableArea 378x279mm.Transverse/US Standard Fanfold (14.875x11): "18 36 1053 756" +*ImageableArea A3/A3: "18 36 824 1155" +*ImageableArea FanFoldGerman/German Standard Fanfold (8.5x12): "18 36 594 828" +*ImageableArea Legal/US Legal: "18 36 594 972" +*ImageableArea SuperB/Super B (13x19): "18 36 918 1332" + +*DefaultPaperDimension: A4 +*PaperDimension Letter/US Letter: "612 792" +*PaperDimension A4/A4: "595 842" +*PaperDimension 3x5/3x5: "216 360" +*PaperDimension 4x6/4x6: "288 432" +*PaperDimension 5x7/5x7: "360 504" +*PaperDimension 5x8/5x8: "360 576" +*PaperDimension 6x8/6x8: "432 576" +*PaperDimension 8x10/8x10: "576 720" +*PaperDimension 8x12/8x12: "576 864" +*PaperDimension 11x14/11x14: "792 1008" +*PaperDimension 11x14.Transverse/14x11: "1008 792" +*PaperDimension 16x20/16x20: "1152 1440" +*PaperDimension 16x24/16x24: "1152 1728" +*PaperDimension 210x305mm/210x305mm (8.3x12): "595 864" +*PaperDimension 378x279mm.Transverse/US Standard Fanfold (14.875x11): "1071 792" +*PaperDimension A3/A3: "842 1191" +*PaperDimension FanFoldGerman/German Standard Fanfold (8.5x12): "612 864" +*PaperDimension Legal/US Legal: "612 1008" +*PaperDimension SuperB/Super B (13x19): "936 1368" + +*CloseGroup: General + + +*% Generic boilerplate PPD stuff as standard PostScript fonts and so on + +*DefaultFont: Courier +*Font AvantGarde-Book: Standard "(001.006S)" Standard ROM +*Font AvantGarde-BookOblique: Standard "(001.006S)" Standard ROM +*Font AvantGarde-Demi: Standard "(001.007S)" Standard ROM +*Font AvantGarde-DemiOblique: Standard "(001.007S)" Standard ROM +*Font Bookman-Demi: Standard "(001.004S)" Standard ROM +*Font Bookman-DemiItalic: Standard "(001.004S)" Standard ROM +*Font Bookman-Light: Standard "(001.004S)" Standard ROM +*Font Bookman-LightItalic: Standard "(001.004S)" Standard ROM +*Font Courier: Standard "(002.004S)" Standard ROM +*Font Courier-Bold: Standard "(002.004S)" Standard ROM +*Font Courier-BoldOblique: Standard "(002.004S)" Standard ROM +*Font Courier-Oblique: Standard "(002.004S)" Standard ROM +*Font Helvetica: Standard "(001.006S)" Standard ROM +*Font Helvetica-Bold: Standard "(001.007S)" Standard ROM +*Font Helvetica-BoldOblique: Standard "(001.007S)" Standard ROM +*Font Helvetica-Narrow: Standard "(001.006S)" Standard ROM +*Font Helvetica-Narrow-Bold: Standard "(001.007S)" Standard ROM +*Font Helvetica-Narrow-BoldOblique: Standard "(001.007S)" Standard ROM +*Font Helvetica-Narrow-Oblique: Standard "(001.006S)" Standard ROM +*Font Helvetica-Oblique: Standard "(001.006S)" Standard ROM +*Font NewCenturySchlbk-Bold: Standard "(001.009S)" Standard ROM +*Font NewCenturySchlbk-BoldItalic: Standard "(001.007S)" Standard ROM +*Font NewCenturySchlbk-Italic: Standard "(001.006S)" Standard ROM +*Font NewCenturySchlbk-Roman: Standard "(001.007S)" Standard ROM +*Font Palatino-Bold: Standard "(001.005S)" Standard ROM +*Font Palatino-BoldItalic: Standard "(001.005S)" Standard ROM +*Font Palatino-Italic: Standard "(001.005S)" Standard ROM +*Font Palatino-Roman: Standard "(001.005S)" Standard ROM +*Font Symbol: Special "(001.007S)" Special ROM +*Font Times-Bold: Standard "(001.007S)" Standard ROM +*Font Times-BoldItalic: Standard "(001.009S)" Standard ROM +*Font Times-Italic: Standard "(001.007S)" Standard ROM +*Font Times-Roman: Standard "(001.007S)" Standard ROM +*Font ZapfChancery-MediumItalic: Standard "(001.007S)" Standard ROM +*Font ZapfDingbats: Special "(001.004S)" Standard ROM + diff --git a/packer/ansible/roles/cups/tasks/main.yml b/packer/ansible/roles/cups/tasks/main.yml new file mode 100644 index 0000000..56326d5 --- /dev/null +++ b/packer/ansible/roles/cups/tasks/main.yml @@ -0,0 +1,18 @@ +--- +- block: + - name: install cups + apt: + name: cups + + - name: copy ppd file + copy: + src: files/kopierviech.ppd + dest: /etc/cups/ppd/kopierviech.ppd + + - name: configure cups + template: + src: printers.conf.j2 + dest: /etc/cups/printers.conf + + tags: + - cups diff --git a/packer/ansible/roles/cups/templates/printers.conf.j2 b/packer/ansible/roles/cups/templates/printers.conf.j2 new file mode 100644 index 0000000..73bc981 --- /dev/null +++ b/packer/ansible/roles/cups/templates/printers.conf.j2 @@ -0,0 +1,28 @@ +# Printer configuration file for CUPS v2.2.1 +# Written by cupsd +# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING + +UUID urn:uuid:1dbeb741-74bb-3bc8-6db1-46f96cb2e82f +Info kopierviech +Location Kyocera Mita KM-1650 KM-1650 +MakeModel Epson LQ-850 Foomatic/lq850 (recommended) +{#DeviceURI ipp://kopierviech.lab.fablab-nea.de#} +DeviceURI dnssd://kopierviech._pdl-datastream._tcp.local/ +State Idle +StateTime 1541805049 +ConfigTime 1541805149 +Type 8433668 +Accepting Yes +Shared No +JobSheets none none +QuotaPeriod 0 +PageLimit 0 +KLimit 0 +OpPolicy default +ErrorPolicy retry-job +Attribute marker-colors none,none +Attribute marker-levels -1,-1 +Attribute marker-names Toner Container,Waste Toner Box +Attribute marker-types toner,waste-toner +Attribute marker-change-time 1541806630 + From e0c020f5319548b269022305df16432be9889950 Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 3 Apr 2019 22:05:06 +0200 Subject: [PATCH 07/14] Fix entry etc already used --- packer/debian-buster.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packer/debian-buster.json b/packer/debian-buster.json index 645efee..5ce861f 100644 --- a/packer/debian-buster.json +++ b/packer/debian-buster.json @@ -102,7 +102,7 @@ "echo '/etc/hostname' >> /tmp/ignore_files", "echo '/etc/hosts' >> /tmp/ignore_files", "echo '/var/lib/docker' >> /tmp/ignore_files", - "mkdir -p /tmp/extra/tmp /tmp/extra/proc /tmp/extra/sys /tmp/extra/etc" + "mkdir -p /tmp/extra/tmp /tmp/extra/proc /tmp/extra/sys" ] }, { From 69b7cace48d3e972fa7e1d6b32675b53dfe4a992 Mon Sep 17 00:00:00 2001 From: jalr Date: Thu, 23 May 2019 19:59:51 +0200 Subject: [PATCH 08/14] spawn a shell on pause --- packer/initramfs/labsync | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packer/initramfs/labsync b/packer/initramfs/labsync index e202689..d001a54 100755 --- a/packer/initramfs/labsync +++ b/packer/initramfs/labsync @@ -217,7 +217,7 @@ PARTTABLE "") ;; pause) - read x + sh -i ;; *) sleep $labsync_wait From 0097e0a85b7c9fb74b446de8b04bff9740445466 Mon Sep 17 00:00:00 2001 From: jalr Date: Thu, 23 May 2019 20:00:13 +0200 Subject: [PATCH 09/14] Use python3; Update ansible --- builder/Dockerfile | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index 02627a5..89bcbc4 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -6,7 +6,7 @@ RUN apk add --no-cache \ mktorrent \ openssh-client \ openssl \ - python2 \ + python3 \ rsync \ squashfs-tools \ && apk add --no-cache --virtual .build-deps \ @@ -15,10 +15,9 @@ RUN apk add --no-cache \ make \ musl-dev \ openssl-dev \ - py2-pip \ - python-dev \ - && pip install --upgrade pip \ - && pip install ansible==2.7.0 \ + python3-dev \ + && pip3 install --upgrade pip \ + && pip3 install ansible==2.8.0 \ && apk del .build-deps ARG PACKER_VERSION From 686147685fd674432706f83485e52b885a8eac8d Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 29 May 2019 21:47:03 +0200 Subject: [PATCH 10/14] Exclude apt lists and packages --- packer/debian-buster.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packer/debian-buster.json b/packer/debian-buster.json index 5ce861f..1b64277 100644 --- a/packer/debian-buster.json +++ b/packer/debian-buster.json @@ -102,6 +102,8 @@ "echo '/etc/hostname' >> /tmp/ignore_files", "echo '/etc/hosts' >> /tmp/ignore_files", "echo '/var/lib/docker' >> /tmp/ignore_files", + "echo '/var/cache/apt/archives' >> /tmp/ignore_files", + "echo '/var/lib/apt' >> /tmp/ignore_files", "mkdir -p /tmp/extra/tmp /tmp/extra/proc /tmp/extra/sys" ] }, From 0c4fc7bfc8c7210f81cd61114108729b08726eb6 Mon Sep 17 00:00:00 2001 From: jalr Date: Wed, 29 May 2019 21:47:52 +0200 Subject: [PATCH 11/14] Force replacement of mke2fs --- packer/initramfs/labsync-prereqs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packer/initramfs/labsync-prereqs b/packer/initramfs/labsync-prereqs index 120cd77..8345c6d 100755 --- a/packer/initramfs/labsync-prereqs +++ b/packer/initramfs/labsync-prereqs @@ -6,10 +6,11 @@ case $1 in # GETS EXECUTED WHEN BUILDING INITRAMFS ## . /usr/share/initramfs-tools/hook-functions - copy_exec /sbin/mke2fs + rm -f "$DESTDIR/sbin/mke2fs" copy_exec /sbin/e2fsck - copy_exec /usr/bin/aria2c + copy_exec /sbin/mke2fs copy_exec /sbin/sfdisk + copy_exec /usr/bin/aria2c copy_file cert /etc/ssl/certs/ca-certificates.crt exit 0 ;; From 208b96d8b65de93370f2324792e9991e2d9ac191 Mon Sep 17 00:00:00 2001 From: jalr Date: Thu, 13 Jun 2019 21:24:51 +0200 Subject: [PATCH 12/14] Replace aria2c with wget for downloading the torrent file --- packer/initramfs/labsync | 2 +- packer/initramfs/labsync-prereqs | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packer/initramfs/labsync b/packer/initramfs/labsync index d001a54..2f707d0 100755 --- a/packer/initramfs/labsync +++ b/packer/initramfs/labsync @@ -98,7 +98,7 @@ labsync_mount_root() { vg_name="vglab" if [ -z "$labsync_localboot" ]; then labsync_info "Downloading torrent file from ${labsync_torrent}" - while ! aria2c -t 10 --follow-torrent=false --dir /tmp -o torrent "${labsync_torrent}"; do sleep 1; done + while ! wget -O /tmp/torrent "${labsync_torrent}"; do sleep 1; done aria2c -S /tmp/torrent > /tmp/torrent_info squashfs_file="$(sed -n '/idx|path\/length/,${s/\s*1|\(.*\)$/\1/p}' /tmp/torrent_info)" image_size_bytes="$(sed -n 's/Total Length: .*(\([0-9,]*\)).*$/\1/p' /tmp/torrent_info | tr -d ',')" diff --git a/packer/initramfs/labsync-prereqs b/packer/initramfs/labsync-prereqs index 8345c6d..f02a0ee 100755 --- a/packer/initramfs/labsync-prereqs +++ b/packer/initramfs/labsync-prereqs @@ -7,6 +7,8 @@ case $1 in ## . /usr/share/initramfs-tools/hook-functions rm -f "$DESTDIR/sbin/mke2fs" + mkdir -p "$DESTDIR/lib/x86_64-linux-gnu" + cp /lib/x86_64-linux-gnu/libnss_dns* "$DESTDIR/lib/x86_64-linux-gnu" copy_exec /sbin/e2fsck copy_exec /sbin/mke2fs copy_exec /sbin/sfdisk From 29bb770672b5220d9f363c7dd32aa045d59775f7 Mon Sep 17 00:00:00 2001 From: jalr Date: Fri, 21 Jun 2019 17:12:32 +0200 Subject: [PATCH 13/14] Revert "Replace aria2c with wget" This reverts commit 208b96d8b65de93370f2324792e9991e2d9ac191. --- packer/initramfs/labsync | 2 +- packer/initramfs/labsync-prereqs | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/packer/initramfs/labsync b/packer/initramfs/labsync index 2f707d0..d001a54 100755 --- a/packer/initramfs/labsync +++ b/packer/initramfs/labsync @@ -98,7 +98,7 @@ labsync_mount_root() { vg_name="vglab" if [ -z "$labsync_localboot" ]; then labsync_info "Downloading torrent file from ${labsync_torrent}" - while ! wget -O /tmp/torrent "${labsync_torrent}"; do sleep 1; done + while ! aria2c -t 10 --follow-torrent=false --dir /tmp -o torrent "${labsync_torrent}"; do sleep 1; done aria2c -S /tmp/torrent > /tmp/torrent_info squashfs_file="$(sed -n '/idx|path\/length/,${s/\s*1|\(.*\)$/\1/p}' /tmp/torrent_info)" image_size_bytes="$(sed -n 's/Total Length: .*(\([0-9,]*\)).*$/\1/p' /tmp/torrent_info | tr -d ',')" diff --git a/packer/initramfs/labsync-prereqs b/packer/initramfs/labsync-prereqs index f02a0ee..8345c6d 100755 --- a/packer/initramfs/labsync-prereqs +++ b/packer/initramfs/labsync-prereqs @@ -7,8 +7,6 @@ case $1 in ## . /usr/share/initramfs-tools/hook-functions rm -f "$DESTDIR/sbin/mke2fs" - mkdir -p "$DESTDIR/lib/x86_64-linux-gnu" - cp /lib/x86_64-linux-gnu/libnss_dns* "$DESTDIR/lib/x86_64-linux-gnu" copy_exec /sbin/e2fsck copy_exec /sbin/mke2fs copy_exec /sbin/sfdisk From 01186e458af80f3e3ce86e1dc83cbabccd7a5d87 Mon Sep 17 00:00:00 2001 From: jalr Date: Fri, 21 Jun 2019 17:16:36 +0200 Subject: [PATCH 14/14] Add haveged to initramfs --- packer/debian-buster.json | 2 +- packer/initramfs/labsync | 2 ++ packer/initramfs/labsync-prereqs | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/packer/debian-buster.json b/packer/debian-buster.json index 1b64277..7e60f8c 100644 --- a/packer/debian-buster.json +++ b/packer/debian-buster.json @@ -73,7 +73,7 @@ "echo overlay >> /etc/initramfs-tools/modules", "echo 'RESUME=none' > /etc/initramfs-tools/conf.d/resume", "mkdir /usr/local/boot", - "apt-get -f -y install aria2 linux-image-amd64 lvm2", + "apt-get -f -y install aria2 linux-image-amd64 lvm2 haveged", "cp $(find /boot/ -name 'initrd.img-*' | sort -V | tail -n 1) '/tmp/images/{{user `initramfs_file`}}'", "cp $(find /boot/ -name 'vmlinuz-*' | sort -V | tail -n 1) '/tmp/images/{{user `linux_file`}}'" ] diff --git a/packer/initramfs/labsync b/packer/initramfs/labsync index d001a54..2b92337 100755 --- a/packer/initramfs/labsync +++ b/packer/initramfs/labsync @@ -92,6 +92,8 @@ labsync_configure_dns() { labsync_mount_root() { + haveged + export PATH="/usr/local/bin:$PATH" [ "$labsync_debug" = 1 ] && set -x sed -i 's/use_lvmetad = 1/use_lvmetad = 0/' /etc/lvm/lvm.conf diff --git a/packer/initramfs/labsync-prereqs b/packer/initramfs/labsync-prereqs index 8345c6d..bcd57c0 100755 --- a/packer/initramfs/labsync-prereqs +++ b/packer/initramfs/labsync-prereqs @@ -11,6 +11,7 @@ case $1 in copy_exec /sbin/mke2fs copy_exec /sbin/sfdisk copy_exec /usr/bin/aria2c + copy_exec /usr/sbin/haveged copy_file cert /etc/ssl/certs/ca-certificates.crt exit 0 ;;