"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2024-02-27 Tue 11:57 -->
+<!-- 2024-03-09 Sat 10:14 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Birchwood Abbey Networks</title>
philosophy, attitude.
</p>
-<pre class="example" id="orgaddf620">
+<pre class="example" id="org19dba2a">
|
=
_|||_
Dovecot-IMAPd, and hosting a VPN with OpenVPN.
</p>
</div>
-<div id="outline-container-org94f285e" class="outline-3">
-<h3 id="org94f285e"><span class="section-number-3">3.1.</span> Install Emacs</h3>
+<div id="outline-container-org044dad2" class="outline-3">
+<h3 id="org044dad2"><span class="section-number-3">3.1.</span> Install Emacs</h3>
<div class="outline-text-3" id="text-3-1">
<p>
The monks of the abbey are masters of the staff (bo) and Emacs.
<div class="org-src-container">
<q>roles_t/abbey-front/tasks/main.yml</q><pre class="src src-conf">
-- name: Install git daemon.
- become: yes
- <span class="org-variable-name">apt: pkg</span>=git-daemon-sysvinit
-
-- name: Configure git daemon.
- become: yes
- lineinfile:
- path: /etc/default/git-daemon
- regexp: <span class="org-string">"{{ item.patt }}"</span>
- line: <span class="org-string">"{{ item.line }}"</span>
- loop:
- - patt: <span class="org-string">'^GIT_DAEMON_ENABLE *='</span>
- line: <span class="org-string">'GIT_DAEMON_ENABLE=true'</span>
- - patt: <span class="org-string">'^GIT_DAEMON_OPTIONS *='</span>
- line: <span class="org-string">'GIT_DAEMON_OPTIONS="--user-path=Public/Git"'</span>
- - patt: <span class="org-string">'^GIT_DAEMON_BASE_PATH *='</span>
- line: <span class="org-string">'GIT_DAEMON_BASE_PATH="/var/www/git"'</span>
- - patt: <span class="org-string">'^GIT_DAEMON_DIRECTORY *='</span>
- line: <span class="org-string">'GIT_DAEMON_DIRECTORY=" "'</span>
- notify: Restart git daemon.
-
-- name: Create /var/www/git/.
- become: yes
- file:
- path: /var/www/git
- state: directory
- group: staff
- <span class="org-variable-name">mode: u</span>=rwx,g=srwx,o=rx
+<<git-tasks>>
</pre>
</div>
<div class="org-src-container">
<q>roles_t/abbey-front/handlers/main.yml</q><pre class="src src-conf">
-
-- name: Restart git daemon.
- become: yes
- command: systemctl restart git-daemon
+<<git-handlers>>
</pre>
</div>
docroot: /home/www
copy:
content: |
- <Directory {{ docroot }}/Abbey/>
- AllowOverride Indexes FileInfo
- Options +Indexes +FollowSymLinks
- </Directory>
-
- RedirectMatch /Photos$ /Photos/
- RedirectMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])$ \
- /Photos/$1_$2_$3/
- AliasMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])/(.+)$ \
- {{ docroot }}/Photos/$1/$2/$3/$4
- AliasMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])/$ \
- {{ docroot }}/Photos/$1/$2/$3/index.html
- AliasMatch /Photos/$ {{ docroot }}/Photos/index.html
-
- Alias /gitweb-static/ /usr/share/gitweb/static/
- <Directory <span class="org-string">"/usr/share/gitweb/static/"</span>>
- Options MultiViews
- </Directory>
- RewriteEngine on
- RewriteRule ^/gitweb(\.cgi)?(/.*)?$ \
- /cgi-bin/gitweb.cgi$2 [QSA,L,PT]
- RewriteRule ^/\~([^\/]+)/gitweb(\.cgi)?(/.*)?$ \
- /cgi-bin/gitweb.cgi$3 \
- [<span class="org-type">QSA,E=GITWEB_PROJECTROOT:/home/$1/Public/Git/,L,PT</span>]
+ <<apache-abbey>>
+ <<apache-photos>>
+ <<apache-gitweb>>
+
IncludeOptional /etc/letsencrypt/options-ssl-apache.conf
dest: /etc/apache2/sites-available/{{ domain_name }}-vhost.conf
notify: Restart Apache2.
-- name: Enable Apache2 rewrite module for Gitweb.
- become: yes
- <span class="org-variable-name">apache2_module: name</span>=rewrite
- notify: Restart Apache2.
-
-- name: Enable Apache2 cgid module for Gitweb (Ubuntu).
- become: yes
- <span class="org-variable-name">apache2_module: name</span>=cgid
- <span class="org-variable-name">when: ansible_distribution</span> == <span class="org-string">'Ubuntu'</span>
- notify: Restart Apache2.
-
-- name: Enable Apache2 cgi module for Gitweb (Debian).
- become: yes
- <span class="org-variable-name">apache2_module: name</span>=cgi
- <span class="org-variable-name">when: ansible_distribution</span> == <span class="org-string">'Debian'</span>
- notify: Restart Apache2.
-
-- name: Install libcgi-pm-perl for Gitweb.
- become: yes
- <span class="org-variable-name">apt: pkg</span>=libcgi-pm-perl
-
-- name: Link Gitweb into /cgi-bin/.
- become: yes
- file:
- state: link
- path: /usr/lib/cgi-bin/{{ item }}
- src: /usr/share/gitweb/{{ item }}
- loop: [ gitweb.cgi, index.cgi ]
-
-- name: Override Gitweb assets location.
- become: yes
- copy:
- content: |
- <span class="org-variable-name">$projectroot</span> = $ENV{<span class="org-string">'GITWEB_PROJECTROOT'</span>} || <span class="org-string">"/var/www/git"</span>;
- <span class="org-variable-name">@stylesheets</span> = (<span class="org-string">"/gitweb-static/gitweb.css"</span>);
- <span class="org-variable-name">$logo</span> = <span class="org-string">"/gitweb-static/git-logo.png"</span>;
- <span class="org-variable-name">$favicon</span> = <span class="org-string">"/favicon.ico"</span>;
- <span class="org-variable-name">$javascript</span> = <span class="org-string">"/gitweb-static/gitweb.js"</span>;
- dest: /etc/gitweb.conf
- <span class="org-variable-name">mode: u</span>=rw,g=r,o=r
+<<apache-gitweb-tasks>>
</pre>
</div>
<div class="org-src-container">
<q>roles_t/abbey-front/handlers/main.yml</q><pre class="src src-conf">
-- name: Restart Apache2.
- become: yes
- systemd:
- service: apache2
- state: restarted
+<<apache-gitweb-handlers>>
</pre>
</div>
</div>
entered as shown below).
</p>
-<pre class="example" id="orgfeb0456">
+<pre class="example" id="org8acfe85">
$ sudo apt install python3-certbot-apache
$ sudo certbot --apache -d birchwood-abbey.net
...
NTP, DNS and DHCP.
</p>
</div>
-<div id="outline-container-org71e3f52" class="outline-3">
-<h3 id="org71e3f52"><span class="section-number-3">4.1.</span> Include Abbey Variables</h3>
+<div id="outline-container-org167a44e" class="outline-3">
+<h3 id="org167a44e"><span class="section-number-3">4.1.</span> Include Abbey Variables</h3>
<div class="outline-text-3" id="text-4-1">
<p>
In this abbey specific document, most abbey particulars are not
<div class="org-src-container">
<q>roles_t/abbey-core/tasks/main.yml</q><pre class="src src-conf">
-- name: Install git daemon.
- become: yes
- <span class="org-variable-name">apt: pkg</span>=git-daemon-sysvinit
-
-- name: Configure git daemon.
- become: yes
- lineinfile:
- path: /etc/default/git-daemon
- regexp: <span class="org-string">"{{ item.patt }}"</span>
- line: <span class="org-string">"{{ item.line }}"</span>
- loop:
- - patt: <span class="org-string">'^GIT_DAEMON_ENABLE *='</span>
- line: <span class="org-string">'GIT_DAEMON_ENABLE=true'</span>
- - patt: <span class="org-string">'^GIT_DAEMON_OPTIONS *='</span>
- line: <span class="org-string">'GIT_DAEMON_OPTIONS="--user-path=Public/Git"'</span>
- - patt: <span class="org-string">'^GIT_DAEMON_BASE_PATH *='</span>
- line: <span class="org-string">'GIT_DAEMON_BASE_PATH="/var/www/git"'</span>
- - patt: <span class="org-string">'^GIT_DAEMON_DIRECTORY *='</span>
- line: <span class="org-string">'GIT_DAEMON_DIRECTORY=" "'</span>
- notify: Restart git daemon.
-
-- name: Create /var/www/git/.
- become: yes
- file:
- path: /var/www/git
- state: directory
- group: staff
- <span class="org-variable-name">mode: u</span>=rwx,g=srwx,o=rx
+<<git-tasks>>
</pre>
</div>
<div class="org-src-container">
<q>roles_t/abbey-core/handlers/main.yml</q><pre class="src src-conf">
-
-- name: Restart git daemon.
- become: yes
- command: systemctl restart git-daemon
+<<git-handlers>>
</pre>
</div>
</div>
docroot: /WWW/live
copy:
content: |
- <Directory {{ docroot }}/Abbey/>
- AllowOverride Indexes FileInfo
- Options +Indexes +FollowSymLinks
- </Directory>
-
- RedirectMatch /Photos$ /Photos/
- RedirectMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])$ \
- /Photos/$1_$2_$3/
- AliasMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])/(.+)$ \
- {{ docroot }}/Photos/$1/$2/$3/$4
- AliasMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])/$ \
- {{ docroot }}/Photos/$1/$2/$3/index.html
- AliasMatch /Photos/$ {{ docroot }}/Photos/index.html
-
- Alias /gitweb-static/ /usr/share/gitweb/static/
- <Directory <span class="org-string">"/usr/share/gitweb/static/"</span>>
- Options MultiViews
- </Directory>
- RewriteEngine on
- RewriteRule ^/gitweb(\.cgi)?(/.*)?$ \
- /cgi-bin/gitweb.cgi$2 [QSA,L,PT]
- RewriteRule ^/\~([^\/]+)/gitweb(\.cgi)?(/.*)?$ \
- /cgi-bin/gitweb.cgi$3 \
- [<span class="org-type">QSA,E=GITWEB_PROJECTROOT:/home/$1/Public/Git/,L,PT</span>]
+ <<apache-abbey>>
+ <<apache-photos>>
+ <<apache-gitweb>>
dest: /etc/apache2/sites-available/live-vhost.conf
<span class="org-variable-name">mode: u</span>=rw,g=r,o=r
notify: Restart Apache2.
docroot: /WWW/test
copy:
content: |
- <Directory {{ docroot }}/Abbey/>
- AllowOverride Indexes FileInfo
- Options +Indexes +FollowSymLinks
- </Directory>
-
- RedirectMatch /Photos$ /Photos/
- RedirectMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])$ \
- /Photos/$1_$2_$3/
- AliasMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])/(.+)$ \
- {{ docroot }}/Photos/$1/$2/$3/$4
- AliasMatch /Photos/(20[0-9][0-9])_([0-9][0-9])_([0-9][0-9])/$ \
- {{ docroot }}/Photos/$1/$2/$3/index.html
- AliasMatch /Photos/$ {{ docroot }}/Photos/index.html
-
- Alias /gitweb-static/ /usr/share/gitweb/static/
- <Directory <span class="org-string">"/usr/share/gitweb/static/"</span>>
- Options MultiViews
- </Directory>
- RewriteEngine on
- RewriteRule ^/gitweb(\.cgi)?(/.*)?$ \
- /cgi-bin/gitweb.cgi$2 [QSA,L,PT]
- RewriteRule ^/\~([^\/]+)/gitweb(\.cgi)?(/.*)?$ \
- /cgi-bin/gitweb.cgi$3 \
- [<span class="org-type">QSA,E=GITWEB_PROJECTROOT:/home/$1/Public/Git/,L,PT</span>]
+ <<apache-abbey>>
+ <<apache-photos>>
+ <<apache-gitweb>>
dest: /etc/apache2/sites-available/test-vhost.conf
<span class="org-variable-name">mode: u</span>=rw,g=r,o=r
notify: Restart Apache2.
-- name: Enable Apache2 rewrite module for Gitweb.
- become: yes
- <span class="org-variable-name">apache2_module: name</span>=rewrite
- notify: Restart Apache2.
-
-- name: Enable Apache2 cgid module for Gitweb (Ubuntu).
- become: yes
- <span class="org-variable-name">apache2_module: name</span>=cgid
- <span class="org-variable-name">when: ansible_distribution</span> == <span class="org-string">'Ubuntu'</span>
- notify: Restart Apache2.
-
-- name: Enable Apache2 cgi module for Gitweb (Debian).
- become: yes
- <span class="org-variable-name">apache2_module: name</span>=cgi
- <span class="org-variable-name">when: ansible_distribution</span> == <span class="org-string">'Debian'</span>
- notify: Restart Apache2.
-
-- name: Install libcgi-pm-perl for Gitweb.
- become: yes
- <span class="org-variable-name">apt: pkg</span>=libcgi-pm-perl
-
-- name: Link Gitweb into /cgi-bin/.
- become: yes
- file:
- state: link
- path: /usr/lib/cgi-bin/{{ item }}
- src: /usr/share/gitweb/{{ item }}
- loop: [ gitweb.cgi, index.cgi ]
-
-- name: Override Gitweb assets location.
- become: yes
- copy:
- content: |
- <span class="org-variable-name">$projectroot</span> = $ENV{<span class="org-string">'GITWEB_PROJECTROOT'</span>} || <span class="org-string">"/var/www/git"</span>;
- <span class="org-variable-name">@stylesheets</span> = (<span class="org-string">"/gitweb-static/gitweb.css"</span>);
- <span class="org-variable-name">$logo</span> = <span class="org-string">"/gitweb-static/git-logo.png"</span>;
- <span class="org-variable-name">$favicon</span> = <span class="org-string">"/favicon.ico"</span>;
- <span class="org-variable-name">$javascript</span> = <span class="org-string">"/gitweb-static/gitweb.js"</span>;
- dest: /etc/gitweb.conf
- <span class="org-variable-name">mode: u</span>=rw,g=r,o=r
+<<apache-gitweb-tasks>>
</pre>
</div>
<div class="org-src-container">
<q>roles_t/abbey-core/handlers/main.yml</q><pre class="src src-conf">
-- name: Restart Apache2.
- become: yes
- systemd:
- service: apache2
- state: restarted
+<<apache-gitweb-handlers>>
</pre>
</div>
</div>
<Directory /usr/share/doc/>
Options Indexes
</Directory>
-
- Alias /gitweb-static/ /usr/share/gitweb/static/
- <Directory <span class="org-string">"/usr/share/gitweb/static/"</span>>
- Options MultiViews
- </Directory>
- RewriteEngine on
- RewriteRule ^/gitweb(\.cgi)?(/.*)?$ \
- /cgi-bin/gitweb.cgi$2 [QSA,L,PT]
- RewriteRule ^/\~([^\/]+)/gitweb(\.cgi)?(/.*)?$ \
- /cgi-bin/gitweb.cgi$3 \
- [<span class="org-type">QSA,E=GITWEB_PROJECTROOT:/home/$1/Public/Git/,L,PT</span>]
+ <<apache-gitweb>>
dest: /etc/apache2/sites-available/www-vhost.conf
<span class="org-variable-name">mode: u</span>=rw,g=r,o=r
notify: Restart Apache2.
</div>
</div>
</div>
-<div id="outline-container-org5b2da2f" class="outline-3">
-<h3 id="org5b2da2f"><span class="section-number-3">4.8.</span> Use Cloister Apt Cache</h3>
+<div id="outline-container-orga4f8ac2" class="outline-3">
+<h3 id="orga4f8ac2"><span class="section-number-3">4.8.</span> Use Cloister Apt Cache</h3>
<div class="outline-text-3" id="text-4-8">
<p>
Core itself will benefit from using the package cache.
is not associated with a member of the small institute.
</p>
</div>
-<div id="outline-container-orga4f8ac2" class="outline-3">
-<h3 id="orga4f8ac2"><span class="section-number-3">6.1.</span> Use Cloister Apt Cache</h3>
+<div id="outline-container-org4d680ac" class="outline-3">
+<h3 id="org4d680ac"><span class="section-number-3">6.1.</span> Use Cloister Apt Cache</h3>
<div class="outline-text-3" id="text-6-1">
<p>
The Apt-Cacher:TNG program does not work well on the frontier, so is
</div>
</div>
</div>
-<div id="outline-container-org044dad2" class="outline-3">
-<h3 id="org044dad2"><span class="section-number-3">6.3.</span> Install Emacs</h3>
+<div id="outline-container-org69d7b4c" class="outline-3">
+<h3 id="org69d7b4c"><span class="section-number-3">6.3.</span> Install Emacs</h3>
<div class="outline-text-3" id="text-6-3">
<p>
The monks of the abbey are masters of the staff and Emacs.
below. A test session is shown below.
</p>
-<pre class="example" id="org8e89bd8">
+<pre class="example" id="orge3426d6">
monkey@new$ owdir
...
/26.2153B6000000/
</p>
</div>
</div>
-<div id="outline-container-org14ac2dc" class="outline-3">
-<h3 id="org14ac2dc"><span class="section-number-3">8.4.</span> Include Abbey Variables</h3>
+<div id="outline-container-orgb786582" class="outline-3">
+<h3 id="orgb786582"><span class="section-number-3">8.4.</span> Include Abbey Variables</h3>
<div class="outline-text-3" id="text-8-4">
<p>
Private variables in <q>private/vars-abbey.yml</q> are needed, and included
</p>
</div>
</div>
-<div id="outline-container-org167a44e" class="outline-3">
-<h3 id="org167a44e"><span class="section-number-3">9.3.</span> Include Abbey Variables</h3>
+<div id="outline-container-org6615595" class="outline-3">
+<h3 id="org6615595"><span class="section-number-3">9.3.</span> Include Abbey Variables</h3>
<div class="outline-text-3" id="text-9-3">
<p>
Private variables in <q>private/vars-abbey.yml</q> are needed, as in the
the OTA (over the air) broadcasts.
</p>
-<pre class="example" id="org445795b">
+<pre class="example" id="org47edab2">
$ tv_grab_zz_sdjson --configure --config-file .mythtv/Mr.Antenna.xmltv
Cache file for lineups, schedules and programs.
Cache file: [/home/mythtv/.xmltv/tv_grab_zz_sdjson.cache]
hosts:
anoat:
devaron:
+ kamino:
kessel:
weather:
hosts:
hosts:
devaron:
geonosis:
+ kamino:
</pre>
</div>
</div>
</div>
<div id="postamble" class="status">
<p class="author">Author: Matt Birkholz</p>
-<p class="date">Created: 2024-02-27 Tue 11:57</p>
+<p class="date">Created: 2024-03-09 Sat 10:14</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>