Thank you for your understanding.
Hence, if you are interested in existing applications to "just work" without the need for adjustments, then you may be better off avoiding Wayland.
Wayland solves no issues I have but breaks almost everything I need. Even the most basic, most simple things (like xkill
) - in this case with no obvious replacement. And usually it stays broken, because the Wayland folks mostly seem to care about Automotive, Gnome, maybe KDE - and alienating everyone else (e.g., people using just an X11 window manager or something like GNUstep) in the process.
As 2024 is winding down:
deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse | |
deb-src http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse | |
deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse | |
deb-src http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse | |
deb http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse | |
deb-src http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse | |
deb http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse |
If you know the string is small use
$stream = fopen(sprintf('data://text/plain,%s', $string), 'r');
$result = stream_get_contents($stream);
When passing plain string without base64 encoding, do not forget to pass the string through URLENCODE(), because PHP automatically urldecodes all entities inside passed string (and therefore all + get lost, all % entities will be converted to the corresponding characters).
If data is large - better use
This is a quick guide of the commands we use to sign someone's GPG key in a virtual key signing party.
Note: The steps cover only the technical aspects of signing someone's key. Before signing someone's key, you must verify their identity. This is usually done by showing government-issued ID and confirming the key's fingerprint
The commands will work for both GPG and GPG2.
I use Julian's key for the examples. His key id is 2AD3FAE3
. You should substitute with the appropriate key id when running the commands.
- List the keys currently in your keyring:
gpg --list-keys
.
This can be applied generically but usually applies to Linux nodes that have a local caching nameserver running, which means pointing to an IP in the loopback
range (127.0.0.0/8
). Ubuntu 18.04 Bionic Beaver does this by default.
sudo systemctl mask systemd-resolved
rm -f /etc/resolv.conf
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
# first get the PPA repository driver | |
sudo add-apt-repository ppa:graphics-drivers/ppa | |
# install nvidai driver | |
sudo apt install nvidia-384 nvidia-384-dev | |
# install other import packages | |
sudo apt-get install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev | |
# CUDA 9 requires gcc 6 |