# First we'll clone iPXE
$ git clone git://git.ipxe.org/ipxe.git
# Go into the src directory of the cloned git repo
$ cd ipxe/src
# Compile the UEFI iPXE executableI need a proper Firefox installation and not the snap version. The snap version does not work properly with Smart Cards. Although it seems to be possible to get it to work with smart cards it is extremely difficult and I don't care to try and make it work. This is not a tutorial on how to get your PIV or CAC to work. Also snaps suck. Canonical will heopfully abandon snaps in the future.
sudo snap disable firefox
sudo snap remove --purge firefox
error: cannot perform the following tasks:
- Remove data for snap "firefox" (1943) (unlinkat /var/snap/firefox/common/host-hunspell/en_ZA.dic: read-only file system)
- Any live usb bootable.
- Alpine Linux minirootfs archive, we can get it here. We can choose
alpine-minirootfs-3.20.2-x86_64.tar.gz. - Some partitions, for root system (/), efi (if you have uefi machine) and swap (optional).
- Basic commandline knowledge.
Docker Desktop requires an expensive license for commercial use: https://www.docker.com/pricing/faq/
# Install minikube
brew install minikube
# Install Docker CLI
brew install docker| # Prerequisites: | |
| # 1. Python 3.x | |
| # 2. Pillow library (PIL fork) | |
| # pip install pillow | |
| import os | |
| import sys | |
| from PIL import Image | |
| dir_path = None |
| # Script for Ubuntu: Nvidia Multi-GPU Installation and Testing (Adaptable for other distros) | |
| # Step 0: Clean Nvidia Installation | |
| # If you need to completely remove a previous Nvidia installation, use these commands. | |
| # This ensures that you start with a clean slate for a new installation. | |
| sudo apt-get --purge remove "*nvidia*" | |
| sudo apt-get --purge remove "*cuda*" "*cudnn*" "*cublas*" "*cufft*" "*cufile*" "*curand*" "*cusolver*" "*cusparse*" "*gds-tools*" "*npp*" "*nvjpeg*" "nsight*" "*nvvm*" "*libnccl*" | |
| # Verify that the removal is complete by checking if any Nvidia, CUDA, or cuDNN packages are still installed. | |
| apt list --installed | grep cuda |
A word of warning. This will be slow and buggy. Do not attempt to use this as a daily driver.
- Windows 10 or 11 (x64)
- Download QEMU
- Download ChromeOS Flex (remember to download the file; do NOT use Chromebook Recovery Utility)
This is a workaround for checking the existence of file ID in Google Drive without both the access token and API key.
When you want to check whether the file of the file ID is existing in Google Drive, generally, you might use Drive API and Drive service (DriveApp) of Google Apps Script. In this case, the scope of Drive API is required to be used. By this, the access token and the API key (in the case of publicly shared files) are required to be used. But, there might be a case that the available scopes are limited. In this post, I would like to introduce a workaround for checking the existence of file ID in Google Drive without both the access token and API key.
In this workaround, the thumbnail link like https://drive.google.com/thumbnail?id={fileId} is used. Ref In this case, when the file ID is existing, the sign-in page with the status code of `200
Some distributions create the defaut KVM (libvirtd) storage pool for images when they install KVM, others do this upon the creation of the first KVM guest. Creating the default pool from scratch is pretty straightforward. Here's how to do it with virsh.
First verify there is no existing default pool:
$ virsh pool-list --all
Name State Autostart
-----------------------------
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