diff options
Diffstat (limited to 'build/wiki/index.html')
-rw-r--r-- | build/wiki/index.html | 356 |
1 files changed, 212 insertions, 144 deletions
diff --git a/build/wiki/index.html b/build/wiki/index.html index f632e31..d524345 100644 --- a/build/wiki/index.html +++ b/build/wiki/index.html @@ -1,61 +1,69 @@ <!doctype html> -<html lang="en" id="top"> +<html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" href="data:,"> <title>Wiki</title> - <link href="https://bt.ht/atom.xml" type="application/atom+xml" rel="alternate" title="Atom feed for blog posts" /> - <style>*{box-sizing:border-box;}body{font-family:sans-serif;margin:0 auto;max-width:650px;padding:1rem;}img{max-width:100%;}pre{overflow:auto;}table{text-align:left;width:100%;}</style> + <link href="/atom.xml" type="application/atom+xml" rel="alternate" title="Atom feed for blog posts" /> + <link href="/rss.xml" type="application/rss+xml" rel="alternate" title="RSS feed for blog posts" /> +<style>*{box-sizing:border-box;}body{font-family:sans-serif;line-height:1.33;margin:0 auto;max-width:650px;padding:1rem;}img{max-width:100%;}pre{border:1px solid;overflow:auto;padding:5px;}table{text-align:left;width:100%;}.footnotes{font-size:90%;}</style> </head> <nav> - <a href="#menu">Menu ↓</a> + <a href="#menu">Menu ↓</a> </nav> <main> -<h1>Wiki</h1> -<h2>Introduction</h2> -<p>This is a living document that will expand alongside my own personal experiences and knowledge. Topics range from device settings, computer configurations, household product serial numbers / expiry dates, and so on. Hopefully this can end up being helpful to others as well.</p> -<h2>Open Suck</h2> +<h1 id="wiki">Wiki</h1> + +<h2 id="introduction">Introduction</h2> + +<p>This is a living document that will expand alongside my own personal experiences and knowledge. Topics range from device settings, computer configurations, household product serial numbers / expiry dates, and so on. Hopefully this can end up being helpful to others as well.</p> + +<h2 id="open-suck">Open Suck</h2> + <p>My personal, lightweight desktop installer for OpenBSD based on the suckless philosophy. Includes my own custom set of suckless tools (dwm, slstatus, dmenu, etc.)</p> + <ul> -<li><a href="https://git.sr.ht/~bt/open-suck">https://git.sr.ht/~bt/open-suck</a></li> +<li><a href="https://git.sr.ht/~bt/open-suck">https://git.sr.ht/~bt/open-suck</a></li> </ul> -<h2>vimrc</h2> -<pre><code>" Don't try to be vi compatible + +<h2 id="vimrc">vimrc</h2> + +<pre><code>" Don't try to be vi compatible set nocompatible -" Helps force plugins to load correctly when it is turned back on below +" Helps force plugins to load correctly when it is turned back on below filetype off -" TODO: Load plugins here (pathogen or vundle) +" TODO: Load plugins here (pathogen or vundle) -" Turn on syntax highlighting +" Turn on syntax highlighting syntax on -" For plugins to load correctly +" For plugins to load correctly filetype plugin indent on -" TODO: Pick a leader key -" let mapleader = "," +" TODO: Pick a leader key +" let mapleader = "," -" Security +" Security set modelines=0 -" Show line numbers +" Show line numbers set number -" Show file stats +" Show file stats set ruler -" Blink cursor on error instead of beeping (grr) +" Blink cursor on error instead of beeping (grr) set visualbell -" Encoding +" Encoding set encoding=utf-8 -" Whitespace +" Whitespace set wrap set textwidth=79 set formatoptions=tcqrn1 @@ -65,190 +73,232 @@ set softtabstop=2 set expandtab set noshiftround -" Cursor motion +" Cursor motion set scrolloff=3 set backspace=indent,eol,start -set matchpairs+=<:> " use % to jump between pairs -runtime! macros/matchit.vim +set matchpairs+=<:> " use % to jump between pairs +runtime! macros/matchit.vim -" Move up/down editor lines +" Move up/down editor lines nnoremap j gj nnoremap k gk -" Allow hidden buffers +" Allow hidden buffers set hidden -" Rendering +" Rendering set ttyfast -" Status bar +" Status bar set laststatus=2 -" Last line +" Last line set showmode set showcmd -" Searching -nnoremap / /\v -vnoremap / /\v +" Searching +nnoremap / /\v +vnoremap / /\v set hlsearch set incsearch set ignorecase set smartcase set showmatch -map <leader><space> :let @/=''<cr> " clear search +map <leader><space> :let @/=''<cr> " clear search -" Remap help key. -inoremap <F1> <ESC>:set invfullscreen<CR>a -nnoremap <F1> :set invfullscreen<CR> -vnoremap <F1> :set invfullscreen<CR> +" Remap help key. +inoremap <F1> <ESC>:set invfullscreen<CR>a +nnoremap <F1> :set invfullscreen<CR> +vnoremap <F1> :set invfullscreen<CR> -" Textmate holdouts +" Textmate holdouts -" Formatting -map <leader>q gqip +" Formatting +map <leader>q gqip -" Visualize tabs and newlines +" Visualize tabs and newlines set listchars=tab:▸\ ,eol:¬ -" Uncomment this to enable by default: -" set list " To enable by default -" Or use your leader key + l to toggle on/off -map <leader>l :set list!<CR> " Toggle tabs and EOL +" Uncomment this to enable by default: +" set list " To enable by default +" Or use your leader key + l to toggle on/off +map <leader>l :set list!<CR> " Toggle tabs and EOL -" Color scheme (terminal) +" Color scheme (terminal) set t_Co=256 set background=dark let g:solarized_termcolors=256 let g:solarized_termtrans=1 -" put https://raw.github.com/altercation/vim-colors-solarized/master/colors/solarized.vim -" in ~/.vim/colors/ and uncomment: -" colorscheme solarized +" put https://raw.github.com/altercation/vim-colors-solarized/master/colors/solarized.vim +" in ~/.vim/colors/ and uncomment: +" colorscheme solarized </code></pre> -<h2>.zshrc extras / aliases</h2> -<pre><code>export EDITOR="/bin/vim" -alias suck="sudo rm -rf config.h ; sudo make install" -alias fixmonitor="xrandr --auto --output eDP1 --mode 1366x768 --below DP2-2" -alias vscode="alias vscode="ENABLE_WASM=1 chrome --enable-wasm --disable-unveil"" +<h2 id=".zshrc-extras-aliases">.zshrc extras / aliases</h2> + +<pre><code>export EDITOR="/bin/vim" + +alias suck="sudo rm -rf config.h ; sudo make install" +alias fixmonitor="xrandr --auto --output eDP1 --mode 1366x768 --below DP2-2" +alias vscode="alias vscode="ENABLE_WASM=1 chrome --enable-wasm --disable-unveil"" </code></pre> -<h2>mimeapps.list</h2> -<p>Place this file under <code>/usr/share/applications/mimeapps.list</code></p> + +<h2 id="mimeapps.list">mimeapps.list</h2> + +<p>Place this file under <code>/usr/share/applications/mimeapps.list</code></p> + <pre><code>[Default Applications] -x-scheme-handler/http=org.qutebrowser.qutebrowser.desktop -x-scheme-handler/https=org.qutebrowser.qutebrowser.desktop -x-scheme-handler/ftp=org.qutebrowser.qutebrowser.desktop -x-scheme-handler/chrome=org.qutebrowser.qutebrowser.desktop -text/html=org.qutebrowser.qutebrowser.desktop -application/x-extension-htm=org.qutebrowser.qutebrowser.desktop -application/x-extension-html=org.qutebrowser.qutebrowser.desktop -application/x-extension-shtml=org.qutebrowser.qutebrowser.desktop -application/xhtml+xml=org.qutebrowser.qutebrowser.desktop -application/x-extension-xhtml=org.qutebrowser.qutebrowser.desktop -application/x-extension-xht=org.qutebrowser.qutebrowser.desktop -image/jpeg=feh -image/png=feh -image/webp=feh +x-scheme-handler/http=org.qutebrowser.qutebrowser.desktop +x-scheme-handler/https=org.qutebrowser.qutebrowser.desktop +x-scheme-handler/ftp=org.qutebrowser.qutebrowser.desktop +x-scheme-handler/chrome=org.qutebrowser.qutebrowser.desktop +text/html=org.qutebrowser.qutebrowser.desktop +application/x-extension-htm=org.qutebrowser.qutebrowser.desktop +application/x-extension-html=org.qutebrowser.qutebrowser.desktop +application/x-extension-shtml=org.qutebrowser.qutebrowser.desktop +application/xhtml+xml=org.qutebrowser.qutebrowser.desktop +application/x-extension-xhtml=org.qutebrowser.qutebrowser.desktop +application/x-extension-xht=org.qutebrowser.qutebrowser.desktop +image/jpeg=feh +image/png=feh +image/webp=feh </code></pre> -<h2>qutebrowser</h2> -<h3>Greasemonkey</h3> -<p>All of these scripts should be added under <code>~/.local/share/qutebrowser/greasemonkey/</code>. Then be sure to run the proper command within qutebrowser: <code>:greasemonkey-reload</code></p> -<h4>Auto Skip YouTube Ads</h4> -<pre><code>// ==UserScript== -// @name Auto Skip YouTube Ads -// @version 1.0.0 -// @description Speed up and skip YouTube ads automatically -// @author jso8910 -// @match *://*.youtube.com/* -// @exclude *://*.youtube.com/subscribe_embed?* -// ==/UserScript== -setInterval(() => { - const btn = document.querySelector('.videoAdUiSkipButton,.ytp-ad-skip-button') + +<h2 id="qutebrowser">qutebrowser</h2> + +<h3 id="greasemonkey">Greasemonkey</h3> + +<p>All of these scripts should be added under <code>~/.local/share/qutebrowser/greasemonkey/</code>. Then be sure to run the proper command within qutebrowser: <code>:greasemonkey-reload</code></p> + +<h4 id="auto-skip-youtube-ads">Auto Skip YouTube Ads</h4> + +<pre><code>// ==UserScript== +// @name Auto Skip YouTube Ads +// @version 1.0.0 +// @description Speed up and skip YouTube ads automatically +// @author jso8910 +// @match *://*.youtube.com/* +// @exclude *://*.youtube.com/subscribe_embed?* +// ==/UserScript== +setInterval(() => { + const btn = document.querySelector('.videoAdUiSkipButton,.ytp-ad-skip-button') if (btn) { btn.click() } - const ad = [...document.querySelectorAll('.ad-showing')][0]; + const ad = [...document.querySelectorAll('.ad-showing')][0]; if (ad) { - document.querySelector('video').playbackRate = 10; + document.querySelector('video').playbackRate = 10; } }, 50) </code></pre> -<h2><code>ffmpeg</code> to MP4</h2> + +<h2 id="to-mp4"><code>ffmpeg</code> to MP4</h2> + <pre><code>ffmpeg -i input_filename.avi -c:v copy -c:a copy -y output_filename.mp4 </code></pre> -<h2>Mount USB HDD via CLI</h2> -<pre><code>mkdir /media/usb-drive -mount /dev/sdX /media/usb-drive/ + +<h2 id="mount-usb-hdd-via-cli">Mount USB HDD via CLI</h2> + +<pre><code>mkdir /media/usb-drive +mount /dev/sdX /media/usb-drive/ </code></pre> -<h2>Run Mullvad on Alpine Linux (Wireguard)</h2> + +<h2 id="run-mullvad-on-alpine-linux-wireguard">Run Mullvad on Alpine Linux (Wireguard)</h2> + <pre><code># Install wireguard apk add wireguard-tools </code></pre> + <p>Login into Mullvad and download the proper wireguard configuration files(s). After downloaded, place in the proper directory:</p> -<pre><code>doas cp <MULLVAD_FILENAME>.conf /etc/wireguard/" + +<pre><code>doas cp <MULLVAD_FILENAME>.conf /etc/wireguard/" </code></pre> -<p>Then setup an aliases for easier up/down states:</p> -<pre><code>alias vpnup="doas wg-quick up /etc/wireguard/<MULLVAD_FILENAME>.conf" -alias vpndown="doas wg-quick down /etc/wireguard/<MULLVAD_FILENAME>.conf" + +<p>Then setup an aliases for easier up/down states:</p> + +<pre><code>alias vpnup="doas wg-quick up /etc/wireguard/<MULLVAD_FILENAME>.conf" +alias vpndown="doas wg-quick down /etc/wireguard/<MULLVAD_FILENAME>.conf" </code></pre> -<h2>Alpine Linux <code>mini_racer</code> Tweaks</h2> + +<h2 id="alpine-linux-tweaks">Alpine Linux <code>mini_racer</code> Tweaks</h2> + <p>Gem lockfile:</p> + <pre><code>PLATFORMS ruby x86_64-linux-musl mini_racer (0.6.3) - <remove child dependency> + <remove child dependency> </code></pre> + <p>then run: <code>bundle update mini_racer</code></p> -<h2>Docker</h2> + +<h2 id="docker">Docker</h2> + <p>Installing <code>ghost</code></p> + <pre><code>docker pull ghost </code></pre> + <pre><code>docker run -d \ --name ghost-name \ -e NODE_ENV=development \ -p 2368:2368 \ - -v $HOME/path/to/ghost/blog:/var/lib/ghost/content \ + -v $HOME/path/to/ghost/blog:/var/lib/ghost/content \ ghost:alpine </code></pre> -<h2>MongoDB 3.4 on Ubuntu 23.10</h2> -<pre><code>wget http://launchpadlibrarian.net/668089858/libssl1.0.0_1.0.2n-1ubuntu5.13_amd64.deb -sudo apt install ./libssl1.0.0_1.0.2n-1ubuntu5.13_amd64.deb -sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 -echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list +<h2 id="mongodb-3.4-on-ubuntu-23.10">MongoDB 3.4 on Ubuntu 23.10</h2> + +<pre><code>wget http://launchpadlibrarian.net/668089858/libssl1.0.0_1.0.2n-1ubuntu5.13_amd64.deb +sudo apt install ./libssl1.0.0_1.0.2n-1ubuntu5.13_amd64.deb +sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 + +echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list </code></pre> -<p>Now edit <code>/etc/apt/sources.list.d/mongodb-org-3.4.list</code>:</p> -<pre><code>deb [trusted=yes] http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.4... + +<p>Now edit <code>/etc/apt/sources.list.d/mongodb-org-3.4.list</code>:</p> + +<pre><code>deb [trusted=yes] http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.4... </code></pre> + <p>Then finish things up:</p> + <pre><code>sudo apt-get update --allow-unauthenticated sudo apt-get install -y mongodb-org -sudo mkdir -p /data/db -sudo chmod -R 777 /data/db +sudo mkdir -p /data/db +sudo chmod -R 777 /data/db </code></pre> -<h2>Redis 6.0.7 on Ubuntu 23.10</h2> + +<h2 id="redis-6.0.7-on-ubuntu-23.10">Redis 6.0.7 on Ubuntu 23.10</h2> + <pre><code>sudo apt-get install build-essential tcl -cd /tmp -curl -O http://download.redis.io/releases/redis-6.0.7.tar.gz +cd /tmp +curl -O http://download.redis.io/releases/redis-6.0.7.tar.gz tar xzvf redis-6.0.7.tar.gz cd redis-6.0.7 </code></pre> + <p>Install redis:</p> + <pre><code>make make test sudo make install -sudo mkdir /etc/redis -sudo cp /tmp/redis-6.0.7redis.conf /etc/redis +sudo mkdir /etc/redis +sudo cp /tmp/redis-6.0.7redis.conf /etc/redis </code></pre> -<p>Edit <code>/etc/redis/redis.conf</code> with the following changes:</p> + +<p>Edit <code>/etc/redis/redis.conf</code> with the following changes:</p> + <ul> <li><code>supervised systemd</code></li> -<li><code>dir /var/lib/redis</code></li> +<li><code>dir /var/lib/redis</code></li> </ul> -<p>Create systemd unit file for redis: <code>/etc/systemd/system/redis.service</code>:</p> + +<p>Create systemd unit file for redis: <code>/etc/systemd/system/redis.service</code>:</p> + <pre><code>[Unit] Description=Redis In-Memory Data Store After=network.target @@ -256,53 +306,71 @@ After=network.target [Service] User=redis Group=redis -ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf -ExecStop=/usr/local/bin/redis-cli shutdown +ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf +ExecStop=/usr/local/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target </code></pre> + <p>Final steps:</p> + <pre><code>sudo adduser --system --group --no-create-home redis -sudo mkdir /var/lib/redis -sudo chown redis:redis /var/lib/redis -sudo chmod 770 /var/lib/redis +sudo mkdir /var/lib/redis +sudo chown redis:redis /var/lib/redis +sudo chmod 770 /var/lib/redis </code></pre> -<h2>Ruby 2.7.2 with rbenv on Ubuntu 23.10</h2> -<p>Edit the <code>/etc/apt/sources.list</code> file:</p> -<pre><code>deb [trusted=yes] http://security.ubuntu.com/ubuntu bionic-security main + +<h2 id="ruby-2.7.2-with-rbenv-on-ubuntu-23.10">Ruby 2.7.2 with rbenv on Ubuntu 23.10</h2> + +<p>Edit the <code>/etc/apt/sources.list</code> file:</p> + +<pre><code>deb [trusted=yes] http://security.ubuntu.com/ubuntu bionic-security main </code></pre> + <p>Then run <code>sudo apt-get update</code>. After completion, install <code>libssl1.0-dev</code>:</p> + <pre><code>sudo apt-get install libssl1.0-dev </code></pre> -<h2>Fix screen tearing</h2> -<pre><code>sudo micro /etc/X11/xorg.conf.d/20-intel.conf + +<h2 id="fix-screen-tearing">Fix screen tearing</h2> + +<pre><code>sudo micro /etc/X11/xorg.conf.d/20-intel.conf </code></pre> + <p>Add the following contents to <code>20-intel.conf</code>:</p> -<pre><code>Section "OutputClass" - Identifier "Intel Graphics" - MatchDriver "i915" - Driver "intel" - Option "DRI" "3" - Option "TearFree" "1" + +<pre><code>Section "OutputClass" + Identifier "Intel Graphics" + MatchDriver "i915" + Driver "intel" + Option "DRI" "3" + Option "TearFree" "1" EndSection </code></pre> -<h2>Enabling "tap to click"</h2> -<pre><code>sudo micro /etc/X11/xorg.conf.d/30-touchpad.conf + +<h2 id="enabling-tap-to-click">Enabling “tap to click"</h2> + +<pre><code>sudo micro /etc/X11/xorg.conf.d/30-touchpad.conf </code></pre> + <p>Add the following contents to <code>30-touchpad.conf</code>:</p> -<pre><code>Section "InputClass" - Identifier "touchpad" - Driver "libinput" - MatchIsTouchpad "on" - Option "Tapping" "on" - Option "TappingButtonMap" "lmr" + +<pre><code>Section "InputClass" + Identifier "touchpad" + Driver "libinput" + MatchIsTouchpad "on" + Option "Tapping" "on" + Option "TappingButtonMap" "lmr" EndSection </code></pre> -<h2>Woocommerce</h2> + +<h2 id="woocommerce">Woocommerce</h2> + <p><strong>Reset all product menu_order to <code>0</code></strong></p> -<pre><code>UPDATE wp_posts SET menu_order = 0 WHERE post_type = 'product'; + +<pre><code>UPDATE wp_posts SET menu_order = 0 WHERE post_type = 'product'; </code></pre> <footer role="contentinfo"> <h2>Menu Navigation</h2> |