<feed xmlns='http://www.w3.org/2005/Atom'>
<title>luke/ansible-roles/miniflux/tasks, branch main</title>
<subtitle>Ansible roles for nth.io infrastructure
</subtitle>
<id>https://src.nth.io/luke/ansible-roles/atom?h=main</id>
<link rel='self' href='https://src.nth.io/luke/ansible-roles/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://src.nth.io/luke/ansible-roles/'/>
<updated>2026-07-31T19:31:51Z</updated>
<entry>
<title>install from the 26.04 archive instead of third-party sources</title>
<updated>2026-07-31T19:31:51Z</updated>
<author>
<name>Luke Hoersten</name>
<email>luke@hoersten.org</email>
</author>
<published>2026-07-31T19:31:51Z</published>
<link rel='alternate' type='text/html' href='https://src.nth.io/luke/ansible-roles/commit/?id=846782c44c1c65e7b755de76fd50d86fc7c9636e'/>
<id>urn:sha1:846782c44c1c65e7b755de76fd50d86fc7c9636e</id>
<content type='text'>
- rpi-base: log2ram from the archive, drop the azlux repo (which still
  pointed at debian buster)
- aws-s3-backup: apt awscli (v2) instead of pip v1; drop boto3, nothing
  used it
- scrypted, koreader-sync: docker.io and docker-compose-v2 instead of
  the docker.com repo pinned to noble; the docker-ce removal lives in
  cleanup-third-party.yaml since the packages collide on files
- miniflux: the archive package with a dbconfig preseed; drops the
  github binary download and the bundled unit
- prometheus/client: note the nginx and postgres exporters are in apt
- dendrite/build, nostr/build: unversioned golang-go instead of pinned
  golang-1.21-go and a hand symlink that shadowed the real go
</content>
</entry>
<entry>
<title>Harden role security: file permissions, service binding, no_log, strict defaults</title>
<updated>2026-04-06T02:19:55Z</updated>
<author>
<name>Luke Hoersten</name>
<email>luke@hoersten.org</email>
</author>
<published>2026-04-06T02:19:55Z</published>
<link rel='alternate' type='text/html' href='https://src.nth.io/luke/ansible-roles/commit/?id=06b69bd8def0aae07d3fb565d19193be1a8dfe20'/>
<id>urn:sha1:06b69bd8def0aae07d3fb565d19193be1a8dfe20</id>
<content type='text'>
- Add no_log: true to tasks that handle passwords/secrets
- Tighten config file permissions (0644 -&gt; 0600/0640 where appropriate)
- Bind pleroma to 127.0.0.1 instead of 0.0.0.0
- Tighten ergo unix socket mode 0777 -&gt; 0770
- Remove weak defaults; roles now fail explicitly if required vars not set
</content>
</entry>
<entry>
<title>Minor version updates and bug fixes.</title>
<updated>2022-09-05T16:14:48Z</updated>
<author>
<name>Luke Hoersten</name>
<email>luke@hoersten.org</email>
</author>
<published>2022-09-05T16:14:48Z</published>
<link rel='alternate' type='text/html' href='https://src.nth.io/luke/ansible-roles/commit/?id=7d2ffb19545a7888c23851b73dbd577cd98ef655'/>
<id>urn:sha1:7d2ffb19545a7888c23851b73dbd577cd98ef655</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Lots of updates.</title>
<updated>2021-07-25T15:30:51Z</updated>
<author>
<name>Luke Hoersten</name>
<email>luke@hoersten.org</email>
</author>
<published>2021-07-25T15:30:51Z</published>
<link rel='alternate' type='text/html' href='https://src.nth.io/luke/ansible-roles/commit/?id=1804c35d5306fc9c34c07655419fa8449c501162'/>
<id>urn:sha1:1804c35d5306fc9c34c07655419fa8449c501162</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Tons of updates.</title>
<updated>2021-07-18T22:43:46Z</updated>
<author>
<name>Luke Hoersten</name>
<email>luke@hoersten.org</email>
</author>
<published>2021-07-18T22:43:46Z</published>
<link rel='alternate' type='text/html' href='https://src.nth.io/luke/ansible-roles/commit/?id=9bb76f57d55ca5a9e502a34e504a21904d4157a1'/>
<id>urn:sha1:9bb76f57d55ca5a9e502a34e504a21904d4157a1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Added miniflux role.</title>
<updated>2020-08-08T14:49:57Z</updated>
<author>
<name>Luke Hoersten</name>
<email>luke@hoersten.org</email>
</author>
<published>2020-08-08T14:49:57Z</published>
<link rel='alternate' type='text/html' href='https://src.nth.io/luke/ansible-roles/commit/?id=b46cf2027341c5faf34b945952eaaa1a578b8910'/>
<id>urn:sha1:b46cf2027341c5faf34b945952eaaa1a578b8910</id>
<content type='text'>
</content>
</entry>
</feed>
