diff --git a/roles/0-init/tasks/main.yml b/roles/0-init/tasks/main.yml index 9673811a2..b0223aa1e 100644 --- a/roles/0-init/tasks/main.yml +++ b/roles/0-init/tasks/main.yml @@ -10,8 +10,8 @@ first_run: True when: not NewInstall.stat.exists -# we need to inialize the ini file and only write the location and version sections once and only -# once to preserve the install date and git hash. +# We need to inialize the ini file and only write the location and version +# sections once and only once to preserve the install date and git hash. - name: Write iiab_ini.yml for the first time include_tasks: first_run.yml when: first_run @@ -41,7 +41,8 @@ exFAT_enabled: True when: xo_model != "none" -# Discover do we have a gateway? -- if ansible detects gateway, becomes WAN candidate +# Discover: do we have a gateway? +# If Ansible detects gateway, becomes WAN candidate. - name: Finding gateway set_fact: discovered_wan_iface: "{{ ansible_default_ipv4.alias }}" @@ -79,7 +80,7 @@ path: /tmp/heart-beat.txt state: absent -# Put all computed vars here so derive properly from any prior var file +# Put all computed vars here so derive properly from any prior var file. - name: If the TZ is not set in env, set it to UTC include_tasks: tz.yml @@ -98,10 +99,10 @@ mysql_install: True mysql_enabled: True -# we decided to enable mysql unconditionally +# We decided to enable mysql unconditionally. # when: elgg_enabled or rachel_enabled or owncloud_enabled or phpmyadmin_enabled or wordpress_enabled or iiab_menu_install -# Commenting out MongoDB on a trial basis, for a more basic/lightweight Sugarizer, per https://github.com/iiab/iiab/pull/427 +# Late 2017: Had commented out MongoDB on a trial basis, for a more basic/lightweight Sugarizer, per https://github.com/iiab/iiab/pull/427 - name: Turn on mongodb if sugarizer enabled set_fact: mongodb_install: True @@ -131,15 +132,14 @@ python_path: /usr/local/lib/python2.7/dist-packages/ when: is_debuntu -# for various reasons the mysql service can not be enabled on fedora 20, -# but 'mariadb', which is its real name can -# on fedora 18 we need to use 'mysqld' +# For various reasons the mysql service cannot be enabled on Fedora 20, but +# 'mariadb', which is its real name can. On Fedora 18 we need to use 'mysqld'. -- name: Set mysqld_service to mariadb by default +- name: Set mysql_service to mariadb by default set_fact: mysql_service: mariadb -- name: Set mysqld_service to mysqld etc (Fedora 18) +- name: Set mysql_service to mysqld etc (Fedora 18) set_fact: mysql_service: mysqld no_NM_reload: True @@ -165,7 +165,7 @@ include_tasks: hostname.yml when: FQDN_changed -- name: Add version section +- name: Add 'runtime' section alongside list of services at /etc/iiab/iiab.ini ini_file: dest: "{{ iiab_config_file }}" section: runtime diff --git a/roles/calibre/tasks/debs.yml b/roles/calibre/tasks/debs.yml index 0d13d9b9d..43566b8fb 100644 --- a/roles/calibre/tasks/debs.yml +++ b/roles/calibre/tasks/debs.yml @@ -28,7 +28,8 @@ # when: is_rpi and internet_available - name: Upgrade to latest Calibre using .deb's from testing (rpi) - command: scripts/calibre-install-latest-rpi.sh # SEEMS TO ONCE AGAIN WORK since Calibre 3.26.0 (Calibre 3.24-3.25 required above prereq calibre-install-packages.sh then Debian's own calibre-install-latest.sh to be bootable in Zero W) + command: scripts/calibre-install-latest-rpi-plus.sh # HOPE IT WORKS FOR Calibre 3.27.1+ starting 2018-07-22 -- PLEASE TEST IF BOOTABLE IN Zero W? + #command: scripts/calibre-install-latest-rpi.sh # WORKED FOR Calibre 3.26.x (Calibre 3.24.x & 3.25 required above prereq calibre-install-packages.sh then Debian's own calibre-install-latest.sh to be bootable in Zero W) when: is_rpi and internet_available - name: Upgrade to Calibre testing .deb's - target Ubuntu 16.04 (not rpi and not ubuntu_18) diff --git a/roles/nextcloud/tasks/main.yml b/roles/nextcloud/tasks/main.yml index 3252efa43..136bfea1a 100644 --- a/roles/nextcloud/tasks/main.yml +++ b/roles/nextcloud/tasks/main.yml @@ -18,6 +18,7 @@ url: "{{ nextcloud_dl_url }}/{{ nextcloud_orig_src_file }}" dest: "{{ downloads_dir }}/{{ nextcloud_src_file }}" force: yes + validate_certs: False # TEMPORARY ON/AFTER 2018-07-22 AS download.nextcloud.com CERT EXPIRED: https://github.com/iiab/iiab/issues/954 timeout: "{{ download_timeout }}" when: internet_available and nextcloud_force_install async: 900 diff --git a/scripts/calibre-install-latest-rpi-plus.sh b/scripts/calibre-install-latest-rpi-plus.sh new file mode 100755 index 000000000..cf9d5114c --- /dev/null +++ b/scripts/calibre-install-latest-rpi-plus.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +# Calibre 3.27.1 .deb's were released for Raspbian 2018-07-22 but requires +# python-pyqt5 from debian testing, to overcome error: +# +# The following packages have unmet dependencies: +# calibre : Depends: python-pyqt5 (>= 5.11.2+dfsg-1) but 5.10.1+dfsg-2+rpi1 is to be installed +# +# More details @ https://github.com/iiab/iiab/issues/948 and +# https://www.mobileread.com/forums/showthread.php?p=3729117#post3729117 + +# Thanks to Jerry Vonau (https://github.com/jvonau) who made this critical +# breakthrough possible! +# +# SEE COMMENTS AT THE TOP OF scripts/calibre-install-packages.sh + +export DEBIAN_FRONTEND=noninteractive + +# Prepares to update from debian testing +apt-key adv --recv-key --keyserver keyserver.ubuntu.com 7638D0442B90D010 +echo "deb http://deb.debian.org/debian testing main" >> /etc/apt/sources.list.d/debian-testing.list +apt update +apt -y install python-pyqt5 +rm /etc/apt/sources.list.d/debian-testing.list + +# Prepares to update from raspbian testing +echo "deb http://raspbian.raspberrypi.org/raspbian/ testing main" > /etc/apt/sources.list.d/rpi-testing.list +apt update +apt -y install calibre calibre-bin +rm /etc/apt/sources.list.d/rpi-testing.list +# Clears the cache of testing +apt update diff --git a/scripts/calibre-install-latest-rpi.sh b/scripts/calibre-install-latest-rpi.sh index 092cbb00c..869a4b64f 100755 --- a/scripts/calibre-install-latest-rpi.sh +++ b/scripts/calibre-install-latest-rpi.sh @@ -6,11 +6,12 @@ # SEE COMMENTS AT THE TOP OF scripts/calibre-install-packages.sh export DEBIAN_FRONTEND=noninteractive -# Prepares to update to latest from testing +# Prepares to update to latest from raspbian testing echo "deb http://raspbian.raspberrypi.org/raspbian/ testing main" > /etc/apt/sources.list.d/rpi-testing.list apt update apt -y install calibre calibre-bin -# Removes last line, safer than: rm /etc/apt/sources.list.d/rpi-testing.list -sed -i '$ d' /etc/apt/sources.list.d/rpi-testing.list +## Removes last line, safer than: rm /etc/apt/sources.list.d/rpi-testing.list +#sed -i '$ d' /etc/apt/sources.list.d/rpi-testing.list +rm /etc/apt/sources.list.d/rpi-testing.list # Clears the cache of testing apt update diff --git a/scripts/calibre-install-latest.sh b/scripts/calibre-install-latest.sh index 75142a5c2..c8bf11ebd 100755 --- a/scripts/calibre-install-latest.sh +++ b/scripts/calibre-install-latest.sh @@ -8,12 +8,13 @@ export DEBIAN_FRONTEND=noninteractive # Drags in stock desktop dependencies without too much from testing below apt -y install dirmngr -# Prepares to update to latest from testing +# Prepares to update to latest from debian testing apt-key adv --recv-key --keyserver keyserver.ubuntu.com 7638D0442B90D010 echo "deb http://deb.debian.org/debian testing main" >> /etc/apt/sources.list.d/debian-testing.list apt update apt -y install libqt5core5a python-lxml calibre calibre-bin -# Removes last line, safer than: rm /etc/apt/sources.list.d/debian-testing.list -sed -i '$ d' /etc/apt/sources.list.d/debian-testing.list +## Removes last line, safer than: rm /etc/apt/sources.list.d/debian-testing.list +#sed -i '$ d' /etc/apt/sources.list.d/debian-testing.list +rm /etc/apt/sources.list.d/debian-testing.list # Clears the cache of testing apt update