A common and reliable pattern in service unit files is thus:
NoNewPrivileges=yes
PrivateTmp=yes
PrivateDevices=yes
DevicePolicy=closed
ProtectSystem=strict
| // Just before switching jobs: | |
| // Add one of these. | |
| // Preferably into the same commit where you do a large merge. | |
| // | |
| // This started as a tweet with a joke of "C++ pro-tip: #define private public", | |
| // and then it quickly escalated into more and more evil suggestions. | |
| // I've tried to capture interesting suggestions here. | |
| // | |
| // Contributors: @r2d2rigo, @joeldevahl, @msinilo, @_Humus_, | |
| // @YuriyODonnell, @rygorous, @cmuratori, @mike_acton, @grumpygiant, |
| $INPUTVIDEO='input.mp4' | |
| $OUTPUTVIDEO='output.mp4' | |
| ffmpeg -i $INPUTVIDEO -metadata:s:v rotate="-90" -codec copy $OUTPUTVIDEO |
This is a compiled list of falsehoods programmers tend to believe about working with time.
Don't re-invent a date time library yourself. If you think you understand everything about time, you're probably doing it wrong.
sed -E -f solver.sed input where input is a file containing the maze.
For best results, resize your terminal to match the height of the maze. To disable animations, delete the lines containing p.
The solver assumes the following:
# \nSES) and end (E)| using REPL | |
| using REPL.LineEdit | |
| # basically the same as Base's `display_error`, just with different frames removed | |
| function display_error(io, err, st) | |
| ind = findfirst(frame -> frame.file == Symbol(@__FILE__) && frame.func == :repleval, st) | |
| st = st[1:(ind == nothing ? end : ind - 2)] | |
| printstyled(io, "ERROR: "; bold=true, color=Base.error_color()) | |
| showerror(IOContext(io, :limit => true), err, st) | |
| println(io) | |
| end |
| # Cracks of Firefox's adult/inadjacency list | |
| # https://gist.github.com/roycewilliams/04ed6eb9509b83ce4d85873861c7f7b4 | |
| # | |
| # Hash source is base64-encoded binary MD5: | |
| # https://dxr.mozilla.org/mozilla-central/source/browser/components/newtab/lib/FilterAdult.jsm | |
| # | |
| # Converted with: for item in $(cat hashes-base64.list); do echo $item | base64 -d | xxd -p; done | |
| # | |
| # Cracked by @tychotithonus and associates | |
| # Last few tricky ones cracked by @s3inlc |
$ sudo systemd --version
systemd 237
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid
$ sudo systemd-run --property=WorkingDirectory=/foo/bar --property=TimeoutSec=5min --on-active="10min" command args
Running timer as unit: run-1.timer
Will run service as unit: run-1.service
$ sudo systemctl list-timersYou can use these commands and rules to search for exploitation attempts against log4j RCE vulnerability CVE-2021-44228
This command searches for exploitation attempts in uncompressed files in folder /var/log and all sub folders
sudo egrep -I -i -r '\$(\{|%7B)jndi:(ldap[s]?|rmi|dns|nis|iiop|corba|nds|http):/[^\n]+' /var/logSecurity Advisories / Bulletins / vendors Responses linked to Log4Shell (CVE-2021-44228)