Skip to content

Instantly share code, notes, and snippets.

View ZeroDeth's full-sized avatar
🏠
Working from home

Sherif Abdalla ZeroDeth

🏠
Working from home
View GitHub Profile
@azhang
azhang / pxe_on_opnsense.md
Last active November 2, 2025 01:33
PXE on OPNsense

This is a walkthrough of setting up a PXE server to boot Ubuntu server live install .iso over network, all on an OPNsense device. No need for Dnsmasq or http/nfs server! Should be compatible with vanilla FreeBSD and HardenedBSD devices as well.

Guide made with OPNsense 20.7 and Ubuntu 20.04.2, with the assumption that your OPNsense device is at 192.168.1.1.

Thanks to all the other guides out there. 1 2

Notes:

A couple issues I ran into with other guides is that Ubuntu's servers return 404 for older releases. Make sure to check each link used in this guide to make sure they exist! This guide works with BIOS as we use pxelinux.0 but it can be adapted fairly easily for UEFI boot.

Overview:

# Source: https://gist.github.com/48f44d3974db698d3127f52b6e7cd0d3
###########################################################
# Automation of Everything #
# How To Combine Argo Events, Workflows, CD, and Rollouts #
# https://youtu.be/XNXJtxkUKeY #
###########################################################
# Requirements:
# - k8s v1.19+ cluster with nginx Ingress
# Source: https://gist.github.com/a63a6970c46a2b08beb283a5b1f03b7c
####################
# Create a Cluster #
####################
# Install AWS IAM Authenticator: https://github.com/awsdocs/amazon-eks-user-guide/blob/master/doc_source/install-aws-iam-authenticator.md
# Only if you did not yet clone that repository
git clone \
# Instructions for fresh install
$ sh <(curl -L https://nixos.org/nix/install) --darwin-use-unencrypted-nix-store-volume --daemon
# reboot
$ source /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
$ echo 'export NIX_PATH=darwin-config=$HOME/.nixpkgs/darwin-configuration.nix:$HOME/.nix-defexpr/channels${NIX_PATH:+:}$NIX_PATH' | tee -a ~/.zshrc
$ echo 'source $HOME/.nix-profile/etc/profile.d/hm-session-vars.sh' | tee -a ~/.zshrc
$ nix-channel --add https://nixos.org/channels/nixpkgs-unstable
$ nix-channel --add https://github.com/LnL7/nix-darwin/archive/master.tar.gz darwin
$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
@triangletodd
triangletodd / README.md
Last active December 30, 2025 22:34
k3s in LXC on Proxmox

On the host

Ensure these modules are loaded

cat /proc/sys/net/bridge/bridge-nf-call-iptables

Disable swap

sysctl vm.swappiness=0
swapoff -a
@kaznak
kaznak / configuration.nix
Last active December 14, 2023 08:01
NixOS configuration for AWS EC2 instance
{ modulesPath, pkgs, lib, ... }: {
imports = [
"${modulesPath}/virtualisation/amazon-image.nix"
];
ec2.hvm = true;
################################################
system.autoUpgrade = {
enable = true;
allowReboot = true;
FROM alpine:3.11 AS build
ARG CHANNEL=unstable
ARG VERSION=0.99.1-127
ARG ARCH=amd64
RUN mkdir /build
WORKDIR /build
RUN apk add --no-cache curl tar
@mitchellh
mitchellh / example.nix
Created May 10, 2020 16:29
Nix function for creating a derivation (package) that installs binaries from releases.hashicorp.com
self: super: {
consul-bin = self.callPackage ./hashicorp-generic.nix {
name = "consul";
version = "1.7.3";
sha256 = "0k03n7h5h8miqhh3n3y47894vhwdcp8m611w55f826swmq9angl1";
};
# and so on...
}
@ZeroDeth
ZeroDeth / 00-defaults.tf
Created February 21, 2020 11:08 — forked from QuingKhaos/00-defaults.tf
Terraform initialization of AWS organizational root account, prepared for multiple accounts
variable "aws_default_region" {
default = "eu-west-1"
}
variable "administrator_default_arn" {
default = "arn:aws:iam::aws:policy/AdministratorAccess"
}
variable "developer_default_arn" {
default = "arn:aws:iam::aws:policy/PowerUserAccess"
@vfarcic
vfarcic / eks.sh
Last active January 18, 2022 00:33
# Source: https://gist.github.com/be32717b225891b69da2605a3123bb33
####################
# Create a cluster #
####################
# Follow the instructions from https://github.com/weaveworks/eksctl to intall eksctl if you do not have it already
export AWS_ACCESS_KEY_ID=[...] # Replace [...] with the AWS Access Key ID