Tech Notes
Apache: Disable Caching
=======================
.htaccess:
FileETag None
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
Bitcoin: Compile bitcoind
=========================
git clone https://github.com/bitcoin/bitcoin.git
cd bitcoin
git tag | sort -V
git checkout v0.17.1
git status
./autogen.sh
./configure --disable-tests --disable-bench // these tests you won't run take FOREVER to compile
make check
sudo make install
Bitcoin: Limit bitcoind outbound rate (700 Kbps in this example)
================================================================
In BTC source: contrib/qos
Verify it:
:~/Downloads/bitcoin/contrib/qos$ tc qdisc show
qdisc noqueue 0: dev lo root refcnt 2
qdisc htb 1: dev enp2s0 root refcnt 2 r2q 10 default 16 direct_packets_stat 3 direct_qlen 1000
:~/Downloads/bitcoin/contrib/qos$ tc class show dev enp2s0
class htb 1:11 parent 1:1 prio rate 700Kbit ceil 700Kbit burst 1599b cburst 1599b
class htb 1:10 parent 1:1 prio rate 1Gbit ceil 1Gbit burst 1375b cburst 1375b
class htb 1:1 root rate 1Gbit ceil 1Gbit burst 1375b cburst 1375b
For Ubuntu-anything, since it uses NetworkManager instead of /etc/network/interfaces,
put the script in /etc/NetworkManager/dispatcher.d, and add to it:
# Only run this script on interface UP events
interface=$1
event=$2
if [ $event != "up" ]
then
return 0
fi
Bitcon: Mining Parameters
=========================
[Pool, Antminer U3]
sudo cgminer -o stratum+tcp://stratum.slushpool.com:3333 -u joz.U3 -p a --au3-freq 225 --au3-volt 800
[Pool, Antminer U3]
sudo bfgminer -S antminer:all --set antminer:chip=BM1382 --set antminer:voltage=x775 --set antminer:clock=x0882 --set antminer:timing=0.0162 -o stratum+tcp://stratum.slushpool.co m:3333 -u joz.U3 -p a --no-local-bitcoin -L bfg.log
[Real Solo, Antminer U3]
sudo cgminer --au3-freq 225 --au3-volt 800 -o http://127.0.0.1:8332 -u joz -p ****** --btc-address 1JozTWyxK6x6dcxM1ei2ifAMboi6EGYvDd --btc-sig "Joz loves Strizzle v.much" 2>cg.log
[Real Solo, Antminer U3]
sudo bfgminer -S antminer:all --set antminer:chip=BM1382 --set antminer:voltage=x775 --set antminer:clock=x0882 --set antminer:timing=0.0162 -o http://127.0.0.1:8332 -u joz -p ****** --generate-to 1JozTWyxK6x6dcxM1ei2ifAMboi6EGYvDd --coinbase-sig "Joz loves Strizzle v.much" -L bfg.log
[Real Solo, NewPac + Antminer U3]
sudo cgminer -o http://127.0.0.1:8332 -u joz -p ****** --suggest-diff 32 --btc-address 1JozTWyxK6x6dcxM1ei2ifAMboi6EGYvDd --btc-sig "Joz loves Strizzle v.much" --gekko-newpac-freq 200 --api-listen 2>>cg.log
[Real Solo, Compac-F + NewPac]
sudo cgminer -o http://127.0.0.1:8332 -u joz -p ****** --suggest-diff 442 --btc-address 1JozTWyxK6x6dcxM1ei2ifAMboi6EGYvDd --btc-sig "Joz loves Strizzle v.much" --gekko-start-freq 200 --gekko-newpac-freq 200 --gekko-compacf-freq 345 --api-listen 2>>cg.log
Bitcoin: Segwit Discount
========================
Segwit Fee discount is based on utxo address (sending FROM)
Bitcoin: lncli commands
=======================
lncli openchannel -- sat_per_byte
lncli closechannel --sat_per_byte
lncli walletbalance
lncli sendpayment --pay_req=
lncli addinvoice
qrencode -o 'data'
lncli sendpayment --keysend -d -a --data 7629168=$(echo -n "" | xxd -pu -c 10000)
(7629168 = the three ASCII characters of the word 'tip' represented as an integer)
CGI
===
In order to get a script to execute without error, you have to tell it to direct
output to the browser rather than to STDOUT.
In Perl, for example, this is done by setting the content type to text/html
(only needs to be done once at the top of the file):
print "Content-type: text/html\n\n"; # HTTP HEADER
cgminer: JSON failed to decode GBT errors when solo mining
==========================================================
This is due to unused COINBASE_FLAGS being removed as of Bitcoin Core v0.20.0
Edit cgminer.c:
- if (!previousblockhash || !target || !version || !curtime || !bits || !coinbase_aux || !flags) {
+ if (!previousblockhash || !target || !version || !curtime || !bits) {
/* Followed by flags */
+ if (flags) {
len = strlen(flags) / 2;
pool->scriptsig_base[ofs++] = len;
hex2bin(pool->scriptsig_base + ofs, flags, len);
ofs += len;
+ }
Chrome AdBlock: Hide twitter recommended people to follow
=========================================================
twitter.com##div.wtf-module
Chrome: Restore search engine keyword
=====================================
When typing keyword and something else auto-completes, select that something else, and do shift+del
Chrome: Disable Chrome's Print Dialog
=====================================
add "--disable-print-preview" to the shortcut
CSS: Centering Images
=====================
style="margin:0px auto;display:block;"
DOSBox
======
- The pixelshader you like (for Turbo C) is CRT.D3D
- List of 8:5 Resolutions:
320 x 200
640 x 400
768 x 480
1024 x 640
1152 x 720
1280 x 800
1440 x 900
1680 x 1050
1920 x 1200
2048 x 1280
2304 x 1440
2560 x 1600
2880 x 1800
3840 x 2400
5120 x 3200
7680 x 4800
EditPlus: Default Font
======================
Courier New, Regular, 9
Ethereum Wallet
===============
Since it's almost impossible to sync entire full blockchain now, sync it light,
passing the following flags to the node software (geth):
"Ethereum Wallet.exe" --node-datadir d:\Blockchains\Ethereum --node-syncmode light --node-cache 512
exiftool
========
Strip it all: exiftool -all=
Strip just GPS: exiftool -gps:all=
Exif GPS Coordinates
====================
Geotagged coordinates may look like:
GPSLatitudeRef N
GPSLatitude 34 2.80 0
GPSLongitudeRef W
GPSLongitudeRefude 118 15.11 0
-- This is in "Degrees and decimal minutes" (DMM) format. Incorporating GPSLatitudeRef and GPSLongitudeudeRef into the coordinates (N&E being + and S&W being -), yields these true DDM coordinates:
34 2.80, -118 15.11
...which can be input into Google Maps.
Firefox: Stop video autoplay
============================
about:config
media.autoplay.allow-muted = false
Firefox: Mouse Wheel Scroll Speed
=================================
general.smoothScroll.mouseWheel.durationMaxMS 500
mousewheel.acceleration.factor 5
mousewheel.acceleration.start 1
mousewheel.min_line_scroll_amount 1
Firefox: Enable GPU Acceleration & WebRender (GPU-based 2D rendering engine)
============================================================================
layers.acceleration.force-enabled = true
gfx.webrender.all = true
FLAC: Decompress entire directory
=================================
for %f in (*.flac) do flac –d "%f"
Ï
Git: Remove Sensitive Data from Repository
==========================================
>> git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch PATH-TO-YOUR-FILE-WITH-SENSITIVE-DATA' --prune-empty --tag-name-filter cat -- --all
Optionally:
>> echo "YOUR-FILE-WITH-SENSITIVE-DATA" >> .gitignore
>> git add .gitignore
>> git commit -m "Add YOUR-FILE-WITH-SENSITIVE-DATA to .gitignore"
>> git push origin --force --all
To remove them from tagged releases:
>> git push origin --force --tags
Git: Backdate (Historical) Commit
=================================
GIT_COMMITTER_DATE='2022-10-25 20:20:00' git commit -m 'Commit Message'
" " " " " git tag -a 1.0 -m "v1.0"
Google Sheets: Add leading text to a formula result
===================================================
=IF((C5-B5)>0,"+$"&C5-B5,C5-B5)
GPG Verify Signature
====================
1. Import the public key
gpg --keyserver pool.sks-keyservers.net --recv-keys (i.e., 0x54DDD393)
2. Verify the sig file
gpg --verify "VeraCrypt Setup 1.19.exe.sig"
Hiren's Boot CD on a Flash Drive
================================
Flash the ISO with UNetbootin, then in the HBCD folder rename isolinux.cfg to syslinux.cfg and copy it to the root, overwriting the original syslinux.cfg file.
HxCFloppyEmulator: Convert floppy .raw to .img (or other)
=========================================================
Load it in HxCFloppyEmulator and then Export it to your desired format
iTunes Library on Different Partition (Windows)
===============================================
You gotta hard link C:\Users\\Music\iTunes to D:\Backup\iTunes:
mklink /j iTunes D:\Backup\iTunes
...and don't forget the iPhone backups location:
mklink /j C:\Users\\AppData\Roaming\Apple Computer\MobileSync
"D:\Backup\iPhone Backups"
iTunes Download High-Res Album Art from Apple
=============================================
1. Search for it on the Apple Music website.
2. View the image
3. Change end of URL to desired res (ex: 1000x1000bb)
-- For higher quality do 1000x1000-999
-- You can go even higher res like 10000x10000-999 to get art that is way
bigger than your audio file!
LAME: Quality
=============
LAME: use VBR with -V 2 (--preset fast standard). V 3 through 5 are actually cool with me quality-wise, but anything above (below) V 2 includes the Y switch, which can deteriorate high frequencies (>=16Khz).
Switch Preset Target Range Y Switch
------ ---------------------- ------ --------- --------
-b 320 --preset insane 320 320 CBR
-V 0 --preset fast extreme 245 220...260
-V 1 225 190...250
-V 2 --preset fast standard 190 170...210
-V 3 175 150...195 Y
-V 4 --preset fast medium 165 140...185 Y
-V 5 130 120...150 Y
-V 6 115 100...130 Y
-V 7 100 80...120 Y
-V 8 85 70...105 Y
-V 9 65 45...85 Y
320 kbps CBR MP3s are a total waste of space because the only reason for mp3/aac/etc in the first place is saving space while maintaining great quality. The quality benefit of 320 kbps MP3s over 192 kbps VBR is almost 0, while the space requirement is 67% higher.
For iTunes MP3 Encoder
----------------------
It uses the Fraunhofer MP3 encoder, which has different VBR settings. To create the equivalent of a LAME 192 VBR MP3, the settings in iTunes MP# Encodder are:
Stereo Bit Rate: 160 kbps
[x] Use Variable Bit Rate Encoding (VBR)
Quality: Highest
Sample Rate: Auto
Channels: Auto
Stereo Mode: Joint Stereo
[ ] Smart Encoding Adjustments
[ ] Filter Frequencies Below 10 Hz
FLAC to MP3 a folder in Linux
-----------------------------
This also copies over some ID3 tags:
for a in ./*.flac; do < /dev/null ffmpeg -i "$a" -qscale:a 2 "${a[@]/%flac/mp3}"; done
Minecraft [Mac]: "Unable to start Minecraft, if you are running from a dmg, please drag to Applications and try again"
======================================================================================================================
chgrp -R staff Minecraft.app
chmod -R g+w Minecraft.app
Opera: bold active tab on bottom
================================
C:\Program Files\Opera\skin\standard_skin.zip\skin.ini
[Pagebar Button Skin.bottom.selected]
..add..
Text Bold = 1
MSSQL: Get all tables
=============================
select * from INFORMATION_SCHEMA.TABLES
MSSQL: Search for a column
==========================
select COLUMN_NAME, TABLE_NAME from INFORMATION_SCHEMA.COLUMNS where column_name like '%MyColumn%'
MSSQL: "Move" a table from one DB to another (on same instance)
===============================================================
TRUNCATE TABLE table2;
INSERT INTO table2
SELECT * FROM db1.dbo.table1;
...and to move only some stuff over:
INSERT table2
SELECT * FROM table1
WHERE [Conditions]
MSSQL: Copy a table from one DB to another
==========================================
select * into DestDB.dbo.JnlPayments from SourceDB.dbo.JnlPayments
MS SQL Server: Cannot open user default database. login failed.
===============================================================
1. Options -> Connect to database -> master
2. Login
3. alter login [username] with default_database = master
PHP 7/FastCGI permission issues with sessions
=============================================
/etc/php-fpm-7.3.d/www.conf
listen.owner = www-data
listen.group = www-data
service php-fpm restart
Q3A: Modify entities by extracting .ent file from map
=====================================================
q3map2 -exportents q3dm16.bsp
*edit*
q3map2 -onlyents sz-q3dm13.ent
Q3A: Decompile a map
====================
q3map2 -convert -format map q3dm16.bsp
QL: Use q3map2 on QL
====================
add '-game quakelive'
QL: Convert a Q3 map to QL
==========================
q3map2 -game quake3 -convert -format quakelive cpm10.bsp
QL: Map Levelshots
==================
Make sure the jpeg is saved as non-progressive.
QL: Map Thumbnails
==================
Crop your levelshot to 1.33 AR, then resize it to 256x256, and it goes in levelshots/preview
QL: Automatically Record Demos
==============================
cg_autoAction 0/1
Steam Workshop Update
=====================
steamcmd +login joz3d +workshop_build_item /home/joz/ShinaZ/ShinaZ_Pak.vdf +quit
Snipping Tool: Change save extensions to lower-case
===================================================
Search for value string 50 00 4E 00 47, and change the extensions in that correspondig text-string area to lower case.
TiVo Desktop Plus: Fix "can't find the specified file" transfer errors
======================================================================
The TiVo service is sending expired cookies after valentine's day. Add the following line to the bottom of curl.conf*:
cookie = "sid=abc"
* The file is located in:
Windows XP = %USERPROFILE%\Local Settings\Application Data\TiVo Desktop
Windows Vista and later = %USERPROFILE%\AppData\Local\TiVo Desktop
TrueCrypt: Minimum Container Size
=================================
Minimum container size (FAT) must be +275 KB bigger than you want. (275 KB are eaten for some reason [by the file system I think] when creating it)
Vim: Shrink tab size
====================
~/.exrc
set ts=4
Wikipedia: Find userid and edit count for a user
================================================
http://en.wikipedia.org/w/api.php?action=query&list=users&ususers=Joz3d&usprop=editcount
WordPress: Remove title from home page and move content up to reclaim space
===========================================================================
In style.css (of child theme if you have one):
body.home #main {
top: -30px;
padding-top: 0;
}
.home .entry-header {
display: none;
}
Wordpress: Change font size for posts only
==========================================
In style.css (of child theme if you have one):
.post { font-size: 18px; }
Wordpress: Change font size for comments only
=============================================
In style.css (of child theme if you have one):
.comment p { font-size: 18px; }
Linux: Change Time Zone
=======================
ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
Set the ZONE entry in /etc/sysconfig/clock (e.g. "America/Los_Angeles")
Linux: Beep
===========
tput bel
Linux: Extract contents of an RPM
=================================
rpm2cpio package.rpm | cpio -dimv
Linux: tar flag to including leading slash (absolute paths)
===========================================================
P, or --absolute-names
Linux: Find the biggest directories
===================================
du (--exclude=[anydir]) | sort -n
Linux: Find the biggest files in the directory
==============================================
ls -lSrh
Linux: Menu buttons in Gnome
============================
gconf-editor -> apps -> metacity -> general -> button_layout
Linux: Mount Windows File Share
===============================
mount -t cifs -o username=,password=,file_mode=0777,dir_mode=0777,vers=2.0 //Host/Incoming /mnt/loc
Linux: Cooler than uname
========================
neofetch
Linux: Drive Diagnostics
========================
smartctl -a /dev/nvmeX SMART Info
nvme smart-log /dev/nvmeX
hdparm -Tt /dev/sdX Basic Read Speed
dd if=/dev/zero of=/tmp/speed oflag=direct bs=128k count=16k Basic Write Speed
Linux: Erase an SSD
===================
hdparm --security-set-pass lol /dev/sdX
hdparm --security-erase-enhanced lol /dev/sdX
Linux: Erase a HDD
==================
dd if=/dev/urandom of=/dev/sdc bs=1M status=progress
Linux: Image a Partition (dd)
=============================
dd if=/dev/sda2 bs=64K status=progress | gzip -c > /loc/of/backup/name.img.gz
(Restore):
gunzip -c /loc/of/backup/name.img.gz | sudo dd of=/dev/sda2 status=progress
Linux: Image a Partition (partclone - which only copies used space)
===================================================================
sudo partclone.ext4(.ntfs;.etc) -c -s /dev/src_partition | gzip -c > Image.pcl.gz
(Restore):
gzip -c -d /Backup/Image.pcl.gz | partclone.ext4 -r -o /dev/dst_partition
Linux: Mount Disk Image as a Loop Device
========================================
losetup --partscan --find --show disk.img
Linux: Recover Damaged HFS+ Partition/Files
===========================================
hfsprescue -s1 /dev/sdb2
hfsprescue -s2
hfsprescue -s3 /dev/sdb2
hfsprescue -s4
hfsprescue -s5
hfsprescue -s6
Linux: Veracrypt Data Partition + Time Machine Partition on Same Disk
=====================================================================
sudo fdisk /dev/sda (or whatever your backup disk is - THIS WILL ERASE ALL DATA ON IT)
p - print partition table
i - show partition info
g - create gpt partition table
n - new partition
First sector: 2048 (for example)
Last sector: 7333246975 (for example)
n - new partition
First sector: (default)
Last sector: (default - should be last possible sector)
t - change partition type (to fat)
w - write table to disk and exit
mkfs.fat /dev/sda2
*In Veracrypt create new volume against /dev/sda1 (for example)*
*On Mac, go to Disk Utility, select desired Time Machine partition, format as APFS*
*Open Time Machine and select the new APFS partition*
Linux: Hide Grub menu with multiple OS's
========================================
/etc/default/grub
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
AND you have to edit /etc/grub.d/30_os-prober and comment out the adjust_timeout function call
--because for some reason, you can see that adjust_timeout() forces the menu style and changes
a 0s timeout to a 10s
Now ESC will bring up Grub menu
Linux: Add a raw disk to a VirtualBox virtual machine
=====================================================
1. Add yourself to the disk group
sudo usermod -a -G disk
2. Logout/in
3. Run Virtualbox as root (?)
4. Change permission to the physical drive
sudo chmod o+rw /dev/sdx
5. Create a vmdk mapped to the raw disk
VBoxManage internalcommands createrawvmdk -filename whatever.vmdk -rawdisk /dev/sdx
6. Add the vmdk to the VM.
Linux: VirtualBox USB Passthrough iPhone
========================================
1. sudo usermod -a -G vboxusers
2. Logout/in (?)
3. Install VirtualBox Extension Pack to enable USB3 (xHCI) Controller
4. Connect your iPhone
5. Go to the VM's Settings --> USB and create a Device Filter for the iPhone
(second option down with the green plus, so you can auto-create the filter based on what's currently connected)
Linux: Creating a VM for Windows iTunes, with Data on Host
==========================================================
Host://Media/Audio as a shared folder to VM://Z:\Audio (location of iTunes Library and all files)
Host://Media/Backup/iPhone Backups as a shared folder to VM://Z:\iPhone Backups (location of iPhone backups)
Shift+Click iTunes
Select Z:\Audio\iTunes\iTunes Library.itl
Cmd
%appdata%\Roaming\Apple Computer\MobileSync (Apple Installed)
-or-
C:\Users\Name\Apple\MobileSync (Windows Store Installed)
mklink /d Backup "Z:\iPhone Backups"
Linux: Record Screen (Q3A)
==========================
ffmpeg -f alsa -ac 2 -i pulse -f x11grab -y -r 60 -s 1920x1080 -i :0.0 -vf eq=gamma=1.45 -vcodec huffyuv out.avi
Linux: Combine Vidoes
=====================
Create a file with the source vid list:
file 'vid1.mp4'
file 'vid2.mp4'
etc
ffmpeg -f concat -i combine.txt -c copy newvid.mp4
Linux: Remove Frozen Video Frames
=================================
ffmpeg -i video.mp4 -vf mpdecimate,setpts=N/FRAME_RATE/TB -an out.mp4
Linux: Find out what is locking a drive from dismount/eject
===========================================================
lsof | grep /mountpoint
Linux: Find out which app is using which port
=============================================
netstat -tulpn
Linux: Tor Config
=================
apt package: tor
Point whatever you wanna tor to SOCKS port 9050
If it doesn't support SOCKS, use torsocks (apt package)
$ torsocks
If you wanna use Nyx for tor session control/analysis (or anything else that requires a ControlPort):
$ tor --hash-password
/etc/tor/torrc
Uncomment "ControlPort 9051" line
Also uncomment "HashedControlPassword" and put password from above there.
Restart tor
Electrum over Tor
-----------------
./electrum -1 -s electrums3lojbuj.onion:50001:t -p socks5:localhost:9050
-1 means connect to only a single node (best privacy, but must trust that node).
Connecting without the -1 will connect to the specified node as the main node
connection, along with 7 other nodes for block headers, nodes which will be a
mix of onion and not.
-s specifies a node to connect to
-p flag helps when initially launching a first time install that isn't
configured, so that it doesn't connect out to clearnet by default.
Linux: Add OpenCL to FOSS amdgpu kmod on unsupported Linux release/kernel
=========================================================================
1. Download latest AMDGPU-PRO package from https://www.amd.com/en/support
2. change /etc/os-release to whatever version it bitches about
3. amdgpu-pro-install --opencl=legacy,pal --headless --no-dkms
Linux: Enable overclocking on AMD video cards
=============================================
/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="amdgpu.ppfeaturemask=0xffffffff"
update-grub
reboot
Linux: Bring monitor back when using an Nvidia card + KVM
=========================================================
apt install read-edid edid-decode
sudo get-edid -m 0 > edid.bin
# View the output of this command and verify you have the right monitor.
# You can tell via the vendor, resolutions, serial number, all that jazz.
cat edid.bin | edid-decode
sudo mv edid.bin /etc/X11/edid.bin
/usr/share/X11/xorg.conf.d/10-nvidia.conf:
Section "Device"
Identifier "Device0"
Option "CustomEdid" "HDMI-0:/etc/X11/edid.bin"
Option "IgnoreEDID" "false"
Option "UseEDID" "true"
EndSection
(Will this work in /etc/X11/xorg.conf? - StackExchange user said it didn't for them)
Linux: Service Manipulation Under systemctl
===========================================
service --status-all
systemctl disable tor.service
Linux: Convert Pics
===================
Single:
convert image.png image.jpg
covert -resize 30% source.jpg dest.jpg
heif-convert image.heic image.jpg
Batch:
mogrify -format jpg *.tga
mogrify -format jpg -quality 90 *.tga
for f in *.HEIC; do g=${f%.*}; heif-convert -q 100 "$f" "$g.jpg"; done
Linux: Search within Zip Files
==============================
for f in *.pk3; do echo "$f: "; unzip -l $f | grep -i ; done
Linux: Get Radiant to start from menu
=====================================
bash -c "cd /home/joz/Apps/GtkRadiant; ./radiant.bin"
Linux: Tarball backup system essentials
=======================================
sudo tar zcvf JozHome.tar.gz --exclude=.backup --exclude=Dropbox --exclude='Fast Data' --exclude=Media --exclude=.mozilla --exclude=Downloads/*.iso --exclude=.cache --exclude=.dropbox* --exclude=.links2 --exclude=Apps/tor-browser* --exclude=Desktop --exclude=fontconfig --exclude=Music --exclude=Public --exclude=Pictures --exclude=Templates --exclude=Videos --exclude=.config/BraveSoftware --exclude=.config/discord /home/joz /etc /usr/games/q*
Linux: Properly change Window Manager to Compiz from Xfwm4
==========================================================
(If you use the widely recommended 'compiz --replace' as autostart, first of all that's a waste, secondly it will mess up keyboard shortcut bindings)
Xfce starts the window manager specified in: /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml
or, in Xubuntu: /etc/xdg/xdg-xubuntu/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml
Replace the Client0_Command property: from 'xfwm4' to 'compiz'
Linux: XFCE fix refresh rate reset when "disconnecting"
=======================================================
/etc/udev/rules.d/10-screen.rules:
ACTION=="change", SUBSYSTEM=="drm", ENV{DISPLAY}=":0", ENV{XAUTHORITY}="/home/joz/.Xauthority", RUN+="/home/joz/Apps/120hz.sh"
/home/joz/Apps/120hz.sh:
#!/bin/sh
xrandr -r 60 # Do this rate 60 call because this actually wakes the display...
xrandr -r 120 # ...then set the actual rate we want.
sudo udevadm control --reload-rules
Test: udevadm trigger
Linux: Extract an AppImage
==========================
./your.AppImage --appimage-extract
Linux: Setup rules to do stuff when plugging devices
====================================================
/etc/udev/rules.d
(Everything require root):
Make your own whatever number-device.rules:
SUBSYSTEM=="usb", ACTION=="add", ENV{DISPLAY}=":0", ENV{HOME}="/home/user", ENV{ID_SERIAL_SHORT}=="", RUN+="/location/of/script.sh"
SUBSYSTEM=="usb", ACTION=="remove", ENV{ID_SERIAL_SHORT}=="", RUN+="/location/of/script.sh"
udevadm control --reload
...use any of the ENV variables to identify devices. You can spy on what happens when you plug/unplug
devices to see these variables by doing:
udevadm monitor --env
Linux: Make mounting work right in udev
=======================================
// By default systemd-udevd creates its own filesystem namespace,
// so the mount is not visible in the principal namespace)
// Change this by creating:
/etc/systemd/system/systemd-udevd.service
containing:
.include /usr/lib/systemd/system/systemd-udevd.service
[Service]
PrivateMounts=no
then:
sudo systemctl daemon-reload
sudo service systemd-udevd --full-restart
Linux: Mount remote fs over ssh (i.e., Web Server)
==================================================
sshfs website.com:remote/dir mountpoint
fusermount -u mountpoint
Linux: Basilisk II Install sheep_net driver to enable network access
====================================================================
cd macemu/BasiliskII/src/Unix/Linux/NetDriver
make
sudo make dev
sudo chown /dev/sheep_net
sudo make install
sudo modprobe sheep_net
Linux: modprobe: ERROR: cound not insert 'whatever_module': Exec format error
=============================================================================
Usually because the module is compiled against a different/older kernel
version. Recompile it for your current kernel.
Linux: Recognize Razer devices after kernel update
==================================================
(You have to recompile the razerkbd kernel module against the new kernel)
sudo dkms install openrazer-driver/2.5.0 (or whatever version of openrazer is installed)
sudo modprobe razerkbd
Replug razer devices
razer-cli -l
Linux: Modify file creation date
================================
touch -t YYYYMMDDhhmm.ss
-mt to change modified date
-r to reference another file's date
Linux: File manipulation loop
=============================
for file in `ls *.viv`; do touch -r $file $file.mp4; done
Mac: Reset NVRAM
================
Hold Command + Option + P + R on boot.
Information stored in NVRAM includes:
- Speaker volume
- Screen resolution
- Startup disk selection
- Any recent kernel panic information
Mac: Reset SMC (System Management Controller)
=============================================
MacBook: Shut down, plug in power, press Shift (left) + Control + Option + Power, release
all at the same time, turn on.
MacBook (removable battery): Shut down, disconnect power, remove battery, hold power button for 5 seconds, release, reconnect battery, reconnect power,
turn on.
Non-MacBook: Shut down, disconnect power, wait 15 seconds, reconnect power, wait 5 seconds,
turn on.
SMC controls:
- Fans
- Lights
- Power
- Video
- System Performance (if system is running slow even though CPU is free)
Mac: Apple Hardware Test (10.7+)/Apple Diagnostics
==================================================
Hold 'd' on boot.
Mac: Boot into single user mode (terminal)
==========================================
Hold Command + S on boot.
Mac: Enable read/write FS in single user mode
=============================================
mount -o update /
Mac: Boot verbosely
===================
Hold Command + V on boot.
Mac: Black screen after booting (with cursor and notifications)
===============================================================
(Login Window plist file got corrupted)
fsck -fy
mount -o update /
cd /Library/Preferences
rm com.apple.loginwindow.plist
reboot
Mac: Boot without checking system for OS compatibility
======================================================
Add the -no_compat_check kernel flag to
/Macintosh HD/Library/Preferences/SystemConfiguration/com.apple.Boot.plist:
Kernel Flags
-no_compat_check
Mac: Reclaim input devices after accidentally re-enabling SIP
=============================================================
Boot into Recovery Mode.
Disable SIP: csrutil status; csrutil disable
On your OS partition:
rm /System/Library/PrelinkedKernels/prelinkedkernel
touch /System/Library/Extensions to create a new prelinkedkernel
Mac: Enable NTFS writing
========================
Add the following to /etc/fstab and then umount/remount your drive.
LABEL=”VOLUME_NAME_WITHOUT_QUOTES” none ntfs rw,auto,nobrowse
Mac: SHA256
===========
shasum -a 256
Mac: Encrypt a file
===================
openssl enc -aes-256-cbc -in /Path/name.ext -out /Path/name.ext
To decrypt: same, but just add '-d'
Mac: Show dd Progress (verbose)
===============================
ctrl+t
Mac: dd with a nice progress bar since they don't have status=progress
======================================================================
brew install pv
sudo dd if=/dev/disk2 | pv -s | sudo dd of=/dev/disk3 bs=4m
Mac: Remove Spotlight Title Bar Icon
====================================
$ cd /System/Library/CoreServices/
$ sudo mv Search.bundle/ Search2.bundle/
Kill SystemUIServer
Mac: Open a file with TextEdit from Command Line
================================================
open -e file.txt
Mac: Drag a Window from Anywhere
================================
defaults write -g NSWindowShouldDragOnGesture -bool true
cmd+ctrl+click n' drag
Undo it: defaults delete -g NSWindowShouldDragOnGesture
Mac: Remove Purgeable Storage
=============================
for d in $(tmutil listlocalsnapshotdates | grep "-"); do sudo tmutil deletelocalsnapshots $d; done
Raspberry Pi: Get Edimax EW-7811U WiFi adapter to stay online
=============================================================
/etc/modprobe.d/8192cu.conf:
options 8192cu rtw_power_mgnt=0 rtw_enusbss=0
Raspberry Pi: Change Clock to 12h + American Tool-Tip
=====================================================
Clock Format: %I:%M %p
Date Tooltip: %A, %b %d
Raspberry Pi: Stop mouse from being placed on app menu button on startup
========================================================================
/home/pi/.config/lxsession/LXDE-pi/autostart
Remove the line: @point-rpi
(you could probably modify the source of point-rpi/recompile to place
the mouse cursor wherever you want on startup)
Raspberry Pi: Disable Screen Blanking
=====================================
/etc/lightdm/lightdm.conf
Add in the [SeatDefaults] section:
[SeatDefaults]
xserver-command=X -s 0 -dpms
Raspberry Pi: Backup SD Card (macOS)
====================================
diskutil list
dd if=/dev/diskX of=~/SDCardBackup.dmg
Restore:
dd if=~/SDCardBackup.dmg of=/dev/diskX
diskutil eject /dev/rdisk3
Windows NTFS
============
File Name Limit: 255
Total Path Limit: 260
Windows XP: List what programs are using what ports
===================================================
netstat -abnv
Windows XP: Extend a volume
===========================
(yes for the primary drive): cmd; diskpart; list volume; select volume #; extend size=n; exit
Windows XP: For Future Confusion Repair
=======================================
Disabled APSDaemon (or whatever) from startup. This is for wirelessly syncing iPhone.
Windows XP: Windows Explorer custom start folder
================================================
%SystemRoot%\explorer.exe /n, /e,C:\Incoming
Windows Shutdown timer
======================
shutdown -s -t [seconds]
Windows XP: Prevent an app from running
=======================================
Control Panel -> Adminstrative Tools -> Local Security Policy -> Software Restriction Policies -> Additional Rules -> New Path Rule
Windows Server 2003: Disable annoying shutdown/reboot
=====================================================
gpedit.msc; computer configuration -> adminstrative templates -> system -> shutdown event tracker -> select "disabled"; cmd; gpupdate /force
Windows 7: Add USB 3 Drivers to Installer
=========================================
1.) Create a folder on the system drive named "winpe".
2.) Inside of this folder create a folder named "usb3" and another folder named "mount".
3.) Get your USB 3 Driver (inf files, etc).
4.) Put the driver in the "winpe\usb3" folder you created.
5.) Grab the sources\boot.wim file from the Windows 7 install and put it in your "winpe" folder.
6.) Open an administrative console, navigate to your "winpe" folder, and execute these commands:
dism /mount-wim /wimfile:boot.wim /index:2 /mountdir:mount
dism /image:mount /add-driver /driver:usb3\nameofdriverhub.inf
dism /image:mount /add-driver /driver:usb3\nameofdriverxhc.inf
dism /unmount-wim /mountdir:mount /commit
-or just add all the drivers in the folder-
dism /image:mount /add-driver:"usb3" /recurse
7.) Copy/move the boot.wim file from the "winpe" folder back to the sources folder on the Windows 7 install, and you're ready to go!
Windows 7: Delete Reserved Partition during Setup
=================================================
On the first setup screen, press Shift+F10 for a command prompt.
diskpart
list disk
select disk 0
clean
create partition primary
select partition 1
active
format fs=ntfs quick
exit
Windows 7: Check if TRIM is enabled
===================================
fsutil behavior query DisableDeleteNotify
0 = on
1 = off
...to enable/disable TRIM:
fsutil behavior set DisableDeleteNotify 0/1
Windows 7: Stop Windows from Restarting Your Computer After Updates
===================================================================
Regedit: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU (WindowsUpdate, AU may not exist)
In AU create/edit the key NoAutoRebootWithLoggedOnUsers (DWORD [32-bit] Value) to be 1.
Windows 7: Windows Explorer custom start folder
===============================================
%windir%\explorer.exe /e,D:\Incoming
Windows 7: Remove Favorites from Windows Explorer
=================================================
Change registry key: HKEY_CLASSES_ROOT\CLSID\{323CA680-C24D-4099-B94D-446DD2D7249E}\ShellFolder\Attributes from a0900100 to a9400100.
Windows 7: Remove Libraries from Windows Explorer
=================================================
Change registry key: HKEY_CLASSES_ROOT\CLSID\{031E4825-7B94-4dc3-B131-E946B44C8DD5}\ShellFolder\Attributes from b080010d to b090010d.
Windows 7: Remove Command Bar in Explorer
=========================================
Need to modify Shellstyle.dll in your theme's folder.
Default Aero: %windir%\Resources\Themes\Aero\Shell\NormalColor\
Classic theme: %windir%\System32
1. Download Resource Hacker and open Shellstyle.dll in it.
2. Go to "UIFILE -> 1 -> 1033".
3. Add following code after the line