Mix.install([
{:kino, "~> 0.6.2"}
])
# | |
# Compare Phoenix releases with additional custom setup to enhance comparison. | |
# | |
# Usage: | |
# elixir <this_script_name.exs> 1.7.2 | |
# (downloads 1.7.2 and compares with the closest previously downloaded version if available) | |
# | |
# elixir <this_script_name.exs> 1.7.2 1.7.7 | |
# (downloads both versions and compares) | |
# |
{ | |
description = "A nixos cloudinit base image without nixos-infect"; | |
inputs = { | |
nixpkgs.url = "github:nixos/nixpkgs"; | |
}; | |
outputs = { self, nixpkgs }: | |
let | |
system = "x86_64-linux"; |
Improvements, suggestions & fixes are welcome!
Captive portals can be a pain. Here's an opinionated and no-doubt entirely imperfect guide to setting one up for a WiFi access point on Ubuntu (tested on 20+), utilising Network Manager, DNSMasq, HA Proxy and (optionally) Let's Encrypt for a secure, locally hosted landing page.
_Note: This setup was originally designed for an offline WLAN, providing access to a small number of locally hosted domains ... think the WiFi media portal on a flight or boat. If you are looking to provide internet access behind a captive portal then this guide won't get you all the way there. That said, many routers have this capability built in, as do any number of open source router firmware solutions. So you probably don't need to roll your own. If you'd like to try anyway, Ha Proxy Stick Tables would probably come in handy. Very happy to update the guide with any p
This note describes how to connect two networks/devices/VMs over public network using Wireguard with Layer 2 support (ARP, IPv6 link-local, etc).
This can also be achieved using SSH and its "tap" tunnel, however, it does not provide the same level of latency and bandwidth as full-blown VPN such as Wireguard.
In addition, this note describes how to tunnel Wireguard over TCP connection. This may be of use if you encounter firewall in-between so, for instance, you can use TCP port 443 only.
Some hosting providers like scaleway allows to remove the IPv4 from the VPS in order to save 1€/month
but doing this will result in losing connectivity to the "IPv4 world".
Or you may have ordered a VPS that only has IPv6 connectivity and you want to access to a resource only accessible from the "IPv4 world".
Here is how to gain your access back to the "IPv4 world".
Note: You may deploy your own DNS64 & NAT64 server on a separate server by following this tutorial (untested): https://packetpushers.net/nat64-setup-using-tayga/.
Note²: You may find a explanation of what is NAT64 and DNS64 on Wikipedia.
- Choose a/multiple DNS64 public server(s) that has/have its own NAT64 public service from this list:
#!/usr/bin/env bash | |
#Install brew and qemu + cloud init metadata dependencies | |
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" | |
brew install qemu | |
brew install cdrtools | |
rm -rf /tmp/ubuntuqemuboot | |
#download Ubuntu 20.04 Cloud Image and resize to 30 Gigs | |
mkdir -p /tmp/ubuntuqemuboot/images |
These are my notes, not a generic solution. They are not meant to work anywhere outside my machines. Update version numbers to whatever are the current ones while you do this.
asdf
lives in https://github.com/asdf-vm/asdf
Follow its installation instructions, which at the moment of writing were:
Side note: The latest edge build of KeeAgent plugin offers an option for creating a WSL compatible socket. This would be very handy. I already tried to use that socket, but the socket file is currently empty and ssh
inside WSL 2 is unable to use it. This appears to be a very new, unreleased and unstable feature. I will follow the development of it and when it finally works (well, for me) I will update this HOWTO. But until then, please use the proven wsl-ssh-agent
/npiperelay.exe
approach below.
Thanks to the instructions for WSL 2 of the wsl-ssh-agent
project, KeeAgent works great in WSL 2 now:
https://github.com/rupor-github/wsl-ssh-agent#wsl-2-compatibility
The approach uses minimal and well-maintained tools.