GithubHelp home page GithubHelp logo

tomodachi / pi-ansible-automation Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 5.63 MB

Ansible roles (mostly) tested & optimized towards the Raspberry PI running Raspberry Pi OS (Debian)

License: GNU General Public License v3.0

Jinja 93.23% Shell 6.77%
raspberrypi raspberrypi3 raspberrypi4-64

pi-ansible-automation's Introduction

pi-ansible-automation

A set of roles (mostly) tested & optimized towards raspberry PI running Raspberry PI OS (bullseye debian arm64)

avahi-discoverable

enables avahi hostname mDNS broadcasting so you can reach host on hostname.local

kodi installs & configures kodi.

pihole

un-attended install of pihole for DNS based ad-blocking

librespot

Installs & configures reverse engineered spotify-connect compatible client by default in anonymous mode allowing anyone on your network to stream to your device

Variable name Example Mandatory
spotify_connect_name: my-hifi no

roc-streaming

Installs the roc sink modules for pulseaudio allowing streaming audio from any pulseaudio/pipewire sound server giving a apple air-share like streaming experience
for Linux users (only better) see /roles/roc-streaming/README.MD for more details.
Currently limited to raspberrypi OS 11 (debian old stable) as the roc modules are compiled
towards that target

steamlink-pi

Installs steamlink along with PS3 controller (wireless) support

unattended-upgrades

Configures scheduled upgrades & reboots

Variable name Example Mandatory
automatic_reboot_time: "04:00" yes
apt_get_update_ndays: 15 no
download_upgradeable_packages_ndays: 16 no
unattended_upgrade_ndays: : 17 no
apt_get_autoremove_ndays: 18 no

dnsmasq-tftp

Configures dnsmasq to annouce tftp server for PXE boot

Variable name Example Mandatory
tftp_server: 10.0.5.41 yes

tftpd-server

Configures tftp server for PXE boot

Variable name Example Mandatory
rootfs_path: /mnt/rootfs yes
bootfs_path: /mnt/bootfs yes

nfs-boot-pi

Configures a raspberry pi to boot diskless of a NFS share

Variable name Example Mandatory
rootfs_path: /mnt/rootfs yes
bootfs_path: /mnt/bootfs yes

dns-over-tls

DNS over TLS using Cloudflares clourflared for DNS proxying.

Variable name Example Mandatory
cloudflared_release_ver: yes
doh_dns_1: 1.1.1.1 yes
doh_dns_2: 1.0.0.1 yes

single-nic-firewall

Sets up a single nic NAT:ing Firewall with a DHCP server using VLANs & nftables for firewalling.
This required that you have a Switch with VLAN capabilities.

Since it's a single NIC you cannot get full linkspeed in duplex mode. Excpected raw throughput on different models:
PI2 model B: ~70 Mbit/s
PI3 model B: ~70 Mbit/s
PI4: ~650 Mbit/s

Variable name Example Mandatory
lan_if: eth0 yes
lan_ip: 192.168.0.254 yes
lan_broadcast: 192.157.0.255 yes
lan_broadcast: 192.157.0.255 yes
lan_net: 192.168.0.0/24 yes
lan_vlan: 10 yes
wan_vlan: 99 yes
dns_primary: 1.0.0.1 yes
dns_secondary: 1.1.1.1 yes
dhcp_range: 192.168.0.50,192.157.100 yes
dhcp_router: 192.168.0.254 yes
domain: yourhomedomain.local yes

Example of how static dhcp client would look

static_dhcp_clients:  
  xx:xx:xx:xx:xx:xx: ip1  
  xx:xx:xx:xx:xx:xx: ip2 

`

Headless powersave

Disables HDMI and on-device leds to save power

pi-ansible-automation's People

Contributors

tomodachi avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.