- Create Ubuntu 22.04 Cloud Server (WAN) where Wireguard Site2Site is running
- For setting up Site2Site, see this: https://gist.github.com/albertcard/ca65de5e7c6d8cb7beb2cabab97f909b
- I use Cloudflare for my Domain Nameserver Records
- Replace the following where necessary
<publicdomain.example.com>
<LAN-hosted-website>:<port>
Discover gists
{ | |
"workbench.colorCustomizations": { | |
"terminal.foreground": "#839496", | |
"terminal.background": "#002833", | |
"terminal.ansiBlack": "#003541", | |
"terminal.ansiBlue": "#268bd2", | |
"terminal.ansiCyan": "#2aa198", | |
"terminal.ansiGreen": "#859901", | |
"terminal.ansiMagenta": "#d33682", | |
"terminal.ansiRed": "#dc322f", |
# !/bin/bash | |
# Reference: https://copr.fedorainfracloud.org/coprs/principis/howdy/ | |
# sudo required | |
if ! [ $(id -u) = 0 ]; then | |
echo "Root privilege is needed. Please rerun the script as root." >&2 | |
exit 1 | |
fi | |
SUDO_CFG="/etc/pam.d/sudo" |
#!/usr/bin/env bash | |
set -e | |
# Configure Fedora PAM to use Howdy for facial recognition | |
# Configured sudo and GDM login. | |
# SELinux is also configured to allow Howdy to access necessary resources. | |
# Notes: | |
# - This script is tested on Fedora 39. | |
# - This script is for howdy-beta version, which provides pam_howdy.so | |
# Reference: https://copr.fedorainfracloud.org/coprs/principis/howdy-beta/ |
################################################################################################################# | |
# | |
# Password-Expiration-Notifications v20220823 | |
# Highly Modified fork. https://gist.github.com/meoso/3488ef8e9c77d2beccfd921f991faa64 | |
# | |
# Originally from v1.4 @ https://gallery.technet.microsoft.com/Password-Expiry-Email-177c3e27 | |
# https://windowspoweressentials.com/2017/02/21/powershell-password-reminder-script-updated/ | |
# https://github.com/titlerequired/public | |
# Robert Pearman (WSSMB MVP) | |
# TitleRequired.com |
[ Update 2020-05-31: I won't be maintaining this page or responding to comments anymore (except for perhaps a few exceptional occasions). ]
Most of the terminal emulators auto-detect when a URL appears onscreen and allow to conveniently open them (e.g. via Ctrl+click or Cmd+click, or the right click menu).
It was, however, not possible until now for arbitrary text to point to URLs, just as on webpages.
Originall From: Posted 2015-05-29 http://ubwg.net/b/full-list-of-ffmpeg-flags-and-options | |
This is the complete list that’s outputted by ffmpeg when running ffmpeg -h full. | |
usage: ffmpeg [options] [[infile options] -i infile]… {[outfile options] outfile}… | |
Getting help: | |
-h — print basic options | |
-h long — print more options | |
-h full — print all options (including all format and codec specific options, very long) |
// Build d8 using: | |
// a) Run once | |
// git checkout 6f98fbe86a0d11e6c902e2ee50f609db046daf71 | |
// gclient sync | |
// gn gen ./out/x64.debug | |
// gn gen ./out/x64.release | |
// | |
// b) | |
// Debug Build: | |
// ninja -C ./out/x64.debug d8 |
This proposal changes the syntax for type parameters on functions, to eliminate the extra parens which are widely raised as a major problem with the draft proposal. It retains type parameters for types, and should otherwise be very similar to the draft proposal, just with a simpler syntax.
The key idea is: use generic type names just as we use concrete types now, instead of having separate type parameters. (Generic Types, GT)
GT puts all the type information in one place, instead of distributing it across two locations, greatly reducing cognitive load, and eliminates the extra parens in function calls which are confusing and a constant complaint about the draft proposal.
- Constraints are now
interface
types, so use these interface types directly as type names. - For fully generic, unconstrained types, use the keyword
type
. - Semantically, there are two categories of
interface
types: generic
These rules are adopted from the AngularJS commit conventions.