Skip to content

Instantly share code, notes, and snippets.

View BertMueller18's full-sized avatar

Bert Mueller BertMueller18

  • Leipzig, Germany
View GitHub Profile
@StyXman
StyXman / bootstrap.sh
Created April 13, 2026 21:25
Boostrapping Ansible with a sudoer user
#! /bin/bash
set -euo pipefail
if [ $# -lt 2 ]; then
echo "Usage: $0 USER HOST"
exit 1
fi
user=$1
@galeksandrp
galeksandrp / install_openwrt_proxmox.sh
Created April 6, 2026 15:32 — forked from jaminmc/install_openwrt_proxmox.sh
Install OpenWrt in a Container on Proxmox 8+!
#!/bin/bash
# Script to create an OpenWrt LXC container in Proxmox
# Supports stable, release candidates (with prompt if newer), and snapshots
# Robust template handling (reuse / redownload / corruption check)
# Aborts cleanly on Esc/Cancel in dialogs
# Default resource values
DEFAULT_MEMORY="256" # MB
DEFAULT_CORES="2" # CPU cores

Alpine ZFS Root

  • Ideally, follow the steps in "Build a custom virt kernel and ISO with ZFS", and use that install to avoid using unnecessary space and building an unnecessarily large kernel (RAM usage). This produces a system that installs in under 90MB.
  • Boot from Alpine ISO. Login as root (no password). //* Run setup-alpine to set up network/package repositories, hit ctrl+c when you get to the disk prompt
  • To set up network with DHCP and the first mirror, run the following, or manually use setup-intefaces -r and setup-apkrepos to set something more specifically. Optionally, use set a root password setup-sshd to set up remote console.
setup-interfaces -ra
setup-apkrepos -1c

echo 'root:9' | chpasswd
@Thalagyrt
Thalagyrt / proxmox.yml
Last active January 17, 2026 21:30
Ansible playbook to roll a Proxmox+Ceph cluster one by one, waiting for health and migrations before proceeding.
# Copyright 2025 James Riley
#
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
@ayasns
ayasns / openwrt-efi-on-proxmox.md
Last active April 21, 2026 22:02 — forked from ryuheechul/openwrt-efi-on-proxmox.md
How to "Install" an OpenWRT VM in Proxmox with UEFI

Existing references I looked at before I went on trial and error until eventually I managed to make it work:

Note

Although links above were good references to look at so I didn't have to start from scratch, following none of them actually worked for me. Hence, I'm leaving my own note after figuring things out.

My situation:

@sdellysse
sdellysse / .pbc-config.sh
Last active November 1, 2025 17:25
Proxmox Backup Client setup
export PBS_HOST="10.69.4.20"
export PBS_PORT="8007"
export PBS_USERNAME="root@pam"
export PBS_PASSWORD="totallymyrealpassword"
export PBS_DATASTORE="tank"
export PBS_NAMESPACE="backups"
export PBS_FINGERPRINT="fi:ng:er:pr:in:ts:ar:en:ts:ec:re:tb:ut:im:ch:an:gi:ng:it:an:yw:ay"
export PBS_REPOSITORY="${PBS_USERNAME}@${PBS_HOST}:${PBS_PORT}:${PBS_DATASTORE}"
@jesussuarz
jesussuarz / Get-WindowsKey.ps1
Created November 24, 2024 07:48
Guide: Using the Get-WindowsKey PowerShell Script on Windows Server 2025
function Get-WindowsKey {
$Path = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion"
$DigitalProductId = (Get-ItemProperty -Path $Path).DigitalProductId
$ProductKey = ""
$KeyOffset = 52
$Chars = "BCDFGHJKMPQRTVWXY2346789"
for ($i = 0; $i -lt 25; $i++) {
$Current = 0
for ($j = 14; $j -ge 0; $j--) {
$Current = $Current * 256 -bxor $DigitalProductId[$KeyOffset + $j]
@jorgeasaurus
jorgeasaurus / Get-PSModuleUpdates.ps1
Created August 31, 2024 17:35
Check installed PowerShell modules against latest versions in a repository. Outputs detailed update status for easy management of outdated modules.
function Get-PSModuleUpdates {
param
(
[Parameter(ValueFromPipelineByPropertyName, Mandatory)]
[string]$Name,
[Parameter(ValueFromPipelineByPropertyName, Mandatory)]
[version]$Version,
[Parameter(ValueFromPipelineByPropertyName)]
@kennethso168
kennethso168 / Usage.md
Last active August 29, 2024 05:32
Download and import cloud images to existing Proxmox VM/templates

Instructions for use

  1. Copy/download get_cloud.py to /usr/local/bin of the Proxmox node
  2. Change common variables inside the script
  3. chmod +x /usr/local/bin/get_cloud.py
  4. Copy and edit the xxx.service and xxx.timer into the folder /etc/systemd/system. Adjust the contents as appropriate (xxx can be any string, provided that the names of the SystemD unit (xxx.service) and the timer (xxx.timer) is the same. The above files are provided as an example only)
  5. systemctl daemon-reload
  6. systemctl enable xxx.timer && systemctl start xxx.timer
  7. To download and import the cloud image right away, run systemctl start xxx.service. You don't have to wait for the service to finish and can back out immediately by pressing Ctrl+C.
  8. To view the output of the service run journalctl -u xxx.service
@jborean93
jborean93 / New-ScheduledTaskSession.ps1
Last active September 4, 2025 08:50
Creates a PSSession that targets a scheduled task process
# Copyright: (c) 2024, Jordan Borean (@jborean93) <jborean93@gmail.com>
# MIT License (see LICENSE or https://opensource.org/licenses/MIT)
Function New-ScheduledTaskSession {
<#
.SYNOPSIS
Creates a PSSession for a process running as a scheduled task.
.DESCRIPTION
Creates a PSSession that can be used to run code inside a scheduled task