Merge branch 'dev' into vhs
This commit is contained in:
		
							
								
								
									
										54
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,54 @@ | ||||
| FZF != command -v sk || command -v fzy || command -v fzf || \ | ||||
| 	{ echo install a fuzzy finder && exit 1 ;} | ||||
|  | ||||
| help: ## Print the help message | ||||
| 	@awk 'BEGIN {FS = ":.*?## "} /^[0-9a-zA-Z._-]+:.*?## / {printf "\033[36m%s\033[0m : %s\n", $$1, $$2}' $(MAKEFILE_LIST) | \ | ||||
| 		sort | \ | ||||
| 		column -s ':' -t | ||||
|  | ||||
| articles != find * -type f -name "*.md" | ||||
|  | ||||
| db.rec: $(articles) | ||||
| 	printf '%s\n' '%rec: guide' > $@ | ||||
| 	printf '%s\n' '%type: wordcount int' >> $@ | ||||
| 	printf '%s\n\n' '%sort: title' >> $@ | ||||
| 	for x in $^ ; do \ | ||||
| 		sed -n '2,/^---$$/ {/^---$$/d; p}' "$$x" |\ | ||||
| 		sed -e 's/\[ //'  -e 's/ \]//' |\ | ||||
| 		tr -d '"' ;\ | ||||
| 		printf "file: %s\n\n" "$$x" ;\ | ||||
| 	done >> $@ | ||||
| 	for entry in $^; do \ | ||||
| 		recset $@ -e "file = '$${entry}'" -f wordcount --set-add="$$(wc -w < $${entry})" ;\ | ||||
| 	done | ||||
| 	recsel $@ -e "requires != ''" -CR title,requires |\ | ||||
| 	while read title requires; do \ | ||||
| 		IFS=', ' && for provider in $$requires; do \ | ||||
| 			recset $@ -e "title = '$${provider}'" -f provides -a "$${title}" ;\ | ||||
| 		done ;\ | ||||
| 	done | ||||
| 	recfix --sort $@ | ||||
|  | ||||
| default += db.rec | ||||
|  | ||||
| .git/info/exclude: $(default) | ||||
| 	echo $^ | tr ' ' '\n' > $@ | ||||
|  | ||||
| default += .git/info/exclude | ||||
|  | ||||
| .PHONY: database | ||||
| database: $(default) ## Make a recfiles database | ||||
|  | ||||
| .PHONY: article | ||||
| article: ## Write an article | ||||
| 	@path=$$(find . -type d -printf '%P\n' | $(FZF)); \ | ||||
| 	read -p "Title: " title; \ | ||||
| 	printf '%s\n' '---' >> $$path/$$title.md ; \ | ||||
| 	printf 'title: "%s"\n' "$$title" >> $$path/$$title.md ; \ | ||||
| 	printf 'tags: [ "%s" ]\n' "$$path" | sed 's#\/#", "#g' >> $$path/$$title.md ; \ | ||||
| 	printf '%s\n\n' '---' >> $$path/$$title.md ;\ | ||||
| 	$(EDITOR) +5 $$path/$$title.md | ||||
|  | ||||
| .PHONY: clean | ||||
| clean: ## Remove all generated files | ||||
| 	$(RM) $(default) | ||||
							
								
								
									
										94
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										94
									
								
								README.md
									
									
									
									
									
								
							| @@ -1,77 +1,67 @@ | ||||
| --- | ||||
| title: "Knowledge Base" | ||||
| title: "Linux Knowledge Base" | ||||
| --- | ||||
|  | ||||
| # Linux Knowledgebase | ||||
| The Linux Knowledge-Base provides quick-start guides for working with terminal programs. | ||||
|  | ||||
| This is a list of quickstart guides for Linux programs, designed to get the user up and running as fast as possible. | ||||
| # Setup | ||||
|  | ||||
| Install `make`, `recutils`, and any fuzzy-finder (i.e. `sk`, `fzy`, or `fzf`). | ||||
|  | ||||
| Usage: `make` | ||||
|  | ||||
| # Style | ||||
|  | ||||
| ## Praxis Only | ||||
| ## No History, No Context | ||||
|  | ||||
| We leave theory alone as much as possible. | ||||
| The documentation should be of the form 'if you want *X*, type *Y*'. | ||||
| - Nobody cares about how the project started. | ||||
| - Nobody wants to read what `ffmpeg` is, because anyone who wants to use it already knows what it is. | ||||
|  | ||||
| We don't need to explain what a program does - anyone looking up 'how to X', already knows what they want to do. | ||||
| We don't even need to explain which program to use - if someone wants to combine an mp4 and webm video into a single video file, they only care about that result, not about learning `ffmpeg`. | ||||
| ## Be Opinionated | ||||
|  | ||||
| Any interest in these tools only comes after we can use them. | ||||
| - Guides should not ask the reader to select options half-way through. | ||||
| - Options for different filesystems, databases, et c., should be written as separate guides. | ||||
|  | ||||
| ## Chronological | ||||
| ## Repetition Beats Reference | ||||
|  | ||||
| Entries should read like scripts - everything in the right order, with small notes on what this does. | ||||
| If a database requires three commands to set up, it's better to repeat those three commands for every program that requires a database than to just link to another file which discusses databases. | ||||
|  | ||||
| The chronology should never branch. | ||||
| If `gitea` can use three different types of database, the documentation should simply pick one and continue instructions from there. | ||||
| Repetition works better than a reference - if a database requires three commands to set up, it's better to repeat those three commands for every program that requires a database than to just link to another file which discusses databases. | ||||
| ## Show Arguments as Variables | ||||
|  | ||||
| --- | ||||
| Look at this line: | ||||
|  | ||||
| ### Closing | ||||
|  | ||||
| Introductory documents should show anything required to cleanly uninstall a program, without leaving bulky configuration files behind. | ||||
|  | ||||
| ## Three Input Types | ||||
|  | ||||
| There are three types of examples: | ||||
|  | ||||
| Fixed input: | ||||
|  | ||||
| ```bash | ||||
| ls | ||||
| ```sh | ||||
| grep ls --color=always  $HISTFILE | less -R | ||||
| ``` | ||||
|  | ||||
| Anything with arbitrary input should be shown as a variable. | ||||
| What else can go in place of `always`? | ||||
| Can you say `--color=red`? | ||||
| Can you put anything? | ||||
| The answer is not obvious. | ||||
|  | ||||
| ```bash | ||||
| ls $FILE | ||||
| What about this line: | ||||
|  | ||||
| ```sh | ||||
| git branch new | ||||
| git checkout new | ||||
| ``` | ||||
|  | ||||
| Non-commands (e.g. output) should be shown as quoted text: | ||||
| Do you always use `new`? | ||||
| Can you use another word here? | ||||
| The answer is not obvious. | ||||
|  | ||||
| > LK           img | ||||
| > Mail         kn | ||||
| > Projects     music | ||||
|  | ||||
| --- | ||||
|  | ||||
| # Example | ||||
|  | ||||
| ``` | ||||
| How to see which websites you're actively accessing: | ||||
|  | ||||
| ` ` `bash | ||||
| ss -tr dst :$PORT | ||||
| ` ` `    | ||||
|  | ||||
| > State  Recv-Q  Send-Q   Local Address:Port     Peer Address:Port   Process   | ||||
| > ESTAB  0       0         192.168.0.14:42476  149.154.167.91:https            | ||||
| > ESTAB  0       0         192.168.0.14:43644   104.17.90.199:https            | ||||
| It's better to make all arbitrary values variables. | ||||
|  | ||||
| ```sh | ||||
| git branch $branch_name | ||||
| git checkout $branch_name | ||||
| PAGER='less -R' | ||||
| grep ls --color=always $HISTFILE | $PAGER | ||||
| ``` | ||||
|  | ||||
| # What's wrong with everything else? | ||||
| Now we can see what can be changed. | ||||
|  | ||||
| # What's Wrong with Everything Else? | ||||
|  | ||||
| ## Man pages | ||||
|  | ||||
| @@ -79,12 +69,14 @@ ss -tr dst :$PORT | ||||
| - Often presumes you know everything except that one program. | ||||
| - Often written in the 80's, and it shows. | ||||
| - Zero respect for your time. | ||||
| - Often references `info` pages (yuck). | ||||
|  | ||||
| ## curl cheat.sh/ | ||||
| ## `curl cheat.sh` | ||||
|  | ||||
| - Doesn't have the programs I like. | ||||
| - Too short to get you started on many programs. | ||||
| - Poor understanding of priority (`git stash` is covered before `git commit`). | ||||
| - Repetitive | ||||
|  | ||||
| # Current State | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "at" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
| Install with: | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Basics" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
|  | ||||
| You need about a dozen commands to move around Linux. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "clock" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
|  | ||||
| Show system time: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "conditionals" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
| # If statements | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "cron" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
| # Cronie | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "bash games" | ||||
| tags: [ "Documentation", "Games" ] | ||||
| tags: [ "Games" ] | ||||
| --- | ||||
|  | ||||
| Games are a great way to learn bash. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "kernel" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
| ## Living Space | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "kill" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
|  | ||||
| If you want to kill a program in a graphical environment, open a terminal and type: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "locale" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
|  | ||||
| Your locale tells the computer your location, preferred time-and-date format, standard language, papersize, et c. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "locating" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
| # Type | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "processes" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
| # Proccesses | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "time" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
| # systemd | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "users" | ||||
| tags: [ "Documentation", "Basics" ] | ||||
| tags: [ "Basics" ] | ||||
| --- | ||||
| # Basic Information | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "profanity" | ||||
| tags: [ "Documentation", "Chat", "OTR" ] | ||||
| tags: [ "Chat", "OTR" ] | ||||
| --- | ||||
| # otr | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "profanity" | ||||
| tags: [ "Documentation", "Chat", "omemo" ] | ||||
| tags: [ "Chat", "omemo" ] | ||||
| --- | ||||
| # Setup (Commands) | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "wgetpaste" | ||||
| tags: [ "Documentation", "Chat" ] | ||||
| tags: [ "Chat" ] | ||||
| --- | ||||
|  | ||||
| See available pastebins: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Archives" | ||||
| tags: [ "Documentation", "tar", "backups" ] | ||||
| tags: [ "tar", "backups" ] | ||||
| --- | ||||
| # `tar` | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "unison" | ||||
| tags: [ "Documentation", "Backups" ] | ||||
| tags: [ "Backups" ] | ||||
| --- | ||||
|  | ||||
| Install unison on both machines, and make sure both have the same version of unison, with the same version of the ocaml compiler (the smallest difference will cause problems). | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Base 16" | ||||
| tags: [ "Documentation", "Data" ] | ||||
| tags: [ "Data" ] | ||||
| --- | ||||
|  | ||||
| ```bash | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "exiftool" | ||||
| tags: [ "Documentation", "Metadata" ] | ||||
| tags: [ "Metadata" ] | ||||
| --- | ||||
|  | ||||
| Find metadata. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "git" | ||||
| tags: [ "Documentation", "data" ] | ||||
| tags: [ "data" ] | ||||
| --- | ||||
| # Starting | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "git-lfs" | ||||
| tags: [ "Documentation", "data" ] | ||||
| tags: [ "data" ] | ||||
| --- | ||||
|  | ||||
| Install, and add with | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "git hooks" | ||||
| tags: [ "Documentation", "data", "git" ] | ||||
| tags: [ "data", "git" ] | ||||
| --- | ||||
|  | ||||
| Check out the sample hooks: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "git" | ||||
| tags: [ "Documentation", "data", "git", "subtree" ] | ||||
| tags: [ "data", "git", "subtree" ] | ||||
| --- | ||||
|  | ||||
| ## Pulling a Subtree from an existing git | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "gpg" | ||||
| tags: [ "Documentation", "data", "GPG" ] | ||||
| tags: [ "data", "GPG" ] | ||||
| --- | ||||
|  | ||||
| - [Setup](gpg/basics.md) | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "GPG Basics" | ||||
| tags: [ "Documentation", "data", "GPG" ] | ||||
| tags: [ "data", "GPG" ] | ||||
| --- | ||||
| # Making keys | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "gpg" | ||||
| tags: [ "Documentation", "vim", "data", "GPG" ] | ||||
| tags: [ "vim", "data", "GPG" ] | ||||
| --- | ||||
|  | ||||
| The `vim-gnupg` plugin lets vim edit gpg-encrypted files as if they were unencrypted. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "groff" | ||||
| tags: [ "Documentation", "Data" ] | ||||
| tags: [ "Data" ] | ||||
| --- | ||||
| # Basic Documents | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "khard" | ||||
| tags: [ "Documentation", "Data" ] | ||||
| tags: [ "Data" ] | ||||
| --- | ||||
| Get the basic config: | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "newsboat" | ||||
| tags: [ "Documentation", "RSS" ] | ||||
| tags: [ "RSS" ] | ||||
| --- | ||||
| Create the configuration directory before you start, and add at least 1 URL. | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "pass" | ||||
| tags: [ "Documentation", "data" ] | ||||
| tags: [ "data" ] | ||||
| --- | ||||
| [Video instructions](https://www.hooktube.com/watch?v=hlRQTj1D9LA) | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "pdf to txt" | ||||
| tags: [ "Documentation", "data", "pdf", "ocr" ] | ||||
| tags: [ "data", "pdf", "ocr" ] | ||||
| --- | ||||
| How to translate pdf book images to text (results are very poor, and will need lots of corrections). | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "PDF Metadata Erasure" | ||||
| tags: [ "Documentation", "Metadata", "Ghost Script" ] | ||||
| tags: [ "Metadata", "Ghost Script" ] | ||||
| --- | ||||
|  | ||||
| Make a text file called 'pdfmark.txt'. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Board Games" | ||||
| tags: [ "data", "recfiles" ] | ||||
| tags: [ "data", "recfiles", "games" ] | ||||
| --- | ||||
|  | ||||
| You can play with a board games database from boardgamegeek.com. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "sc-im" | ||||
| tags: [ "Documentation", "TUI", "data" ] | ||||
| tags: [ "TUI", "data" ] | ||||
| --- | ||||
|  | ||||
| - [Sample file](sc-im/sample.sc) | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Soft Serve through https" | ||||
| tags: [ "data", "git" ] | ||||
| tags: [ "data", "git", "lfs" ] | ||||
| --- | ||||
|  | ||||
| ## `http` Setup | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "sqlite" | ||||
| tags: [ "Documentation", "data" ] | ||||
| tags: [ "data" ] | ||||
| --- | ||||
|  | ||||
| Work with a database: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "task" | ||||
| tags: [ "Documentation", "Organization" ] | ||||
| tags: [ "Organization" ] | ||||
| --- | ||||
|  | ||||
| Set up the configuration file: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "timew" | ||||
| tags: [ "Documentation", "Data" ] | ||||
| tags: [ "Data" ] | ||||
| --- | ||||
| # Summaries | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "w3m" | ||||
| tags: [ "Documentation", "browsers" ] | ||||
| tags: [ "browsers" ] | ||||
| --- | ||||
| Open a search tab: | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Arch on a Raspberry Pi 4" | ||||
| tags: [ "Documentation", "distros", "raspberry pi", "rpi" ] | ||||
| tags: [ "distros", "raspberry pi", "rpi" ] | ||||
| --- | ||||
|  | ||||
| The [Official Instructions](https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-4) for a Raspberry pi 4 do not allow for working sound from the headphone jack, unless you use the aarch64 Installation. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "autologin" | ||||
| tags: [ "Documentation", "Distros", "Arch" ] | ||||
| tags: [ "Distros", "Arch" ] | ||||
| --- | ||||
|  | ||||
| # Automatic Login | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| --- | ||||
| title: "basic-install" | ||||
| tags: [ "Documentation", "arch" ] | ||||
| tags: [ "arch" ] | ||||
| requires: [ "partitions", "time" ] | ||||
| --- | ||||
| Keyboard layout changed. | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "fonts" | ||||
| tags: [ "Documentation", "distros" ] | ||||
| tags: [ "distros" ] | ||||
| --- | ||||
| # Basics | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "fonts" | ||||
| tags: [ "Documentation", "distros" ] | ||||
| tags: [ "distros" ] | ||||
| --- | ||||
| # Step 1: Multilib | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "pacman" | ||||
| tags: [ "Documentation", "distros" ] | ||||
| tags: [ "distros" ] | ||||
| --- | ||||
|  | ||||
| Packages are kept in /var/cache/pacman/pkg. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "apt" | ||||
| tags: [ "Documentation", "distros" ] | ||||
| tags: [ "distros" ] | ||||
| --- | ||||
| ## apt | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Aeroplane Mode in Void" | ||||
| tags: [ "Documentation", "Void" ] | ||||
| tags: [ "Void" ] | ||||
| --- | ||||
| Put your device in 'aeroplane' mode (e.g. where no trace of signal leaves it) by turning off Wi-Fi and blue-tooth. | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Void Autologin" | ||||
| tags: [ "Documentation", "Void" ] | ||||
| tags: [ "Void" ] | ||||
| --- | ||||
|  | ||||
| Make the autologin service: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "extrace" | ||||
| tags: [ "Documentation", "Void" ] | ||||
| tags: [ "Void" ] | ||||
| --- | ||||
| Monitor all processes: | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "sv" | ||||
| tags: [ "Documentation", "Void" ] | ||||
| tags: [ "Void" ] | ||||
| --- | ||||
| # List Services | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Void Linux Basics" | ||||
| tags: [ "Documentation", "Void" ] | ||||
| tags: [ "Void" ] | ||||
| --- | ||||
| # Updates | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "xbps" | ||||
| tags: [ "Documentation", "Void" ] | ||||
| tags: [ "Void" ] | ||||
| --- | ||||
| ## Search | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "brightness" | ||||
| tags: [ "Documentation", "hardware" ] | ||||
| tags: [ "hardware" ] | ||||
| --- | ||||
| # Brightness | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "keyboard" | ||||
| tags: [ "Documentation", "keyboard", "vim" ] | ||||
| tags: [ "keyboard", "vim" ] | ||||
| --- | ||||
|  | ||||
| # System-Wide Capslock and Escape Swap | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "monitor" | ||||
| tags: [ "Documentation", "hardware" ] | ||||
| tags: [ "hardware" ] | ||||
| --- | ||||
| See screen size | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "printers" | ||||
| tags: [ "Documentation", "hardware" ] | ||||
| tags: [ "hardware" ] | ||||
| --- | ||||
| # Cups: The Common Unix Printing System | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| --- | ||||
| title: "fail2ban" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| requires: [ "ssh" ] | ||||
| --- | ||||
| # SSH Daemon Jail | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Easy Network Graph" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
| Set up a file like this, called `troubleshooting.txt`. | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "iptables" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
| # Intro | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "nmap" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
|  | ||||
| Example: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "pi-hole-server" | ||||
| tags: [ "Documentation", "Distros" ] | ||||
| tags: [ "Distros" ] | ||||
| --- | ||||
| # Installation | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "rclone" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
| The manpage's 'Synopsis' provides a fast reference. | ||||
| ``` | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Download videos" | ||||
| tags: [ "Documentation", "Scraping" ] | ||||
| tags: [ "Scraping" ] | ||||
| --- | ||||
| Install `yt-dlp`. | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Agate on Arch Linux" | ||||
| tags: [ "Documentation", "Networking", "Arch", "Gemini" ] | ||||
| tags: [ "Networking", "Arch", "Gemini" ] | ||||
| --- | ||||
|  | ||||
| Docs are [here](https://github.com/mbrubeck/agate). | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| --- | ||||
| title: "sshfs" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| requires: [ "ssh" ] | ||||
| --- | ||||
| # Mount  | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| --- | ||||
| title: "ssh tricks" | ||||
| tags: [ "Documentation", "Networking", "ssh", "tricks" ] | ||||
| title: "ssh-tricks" | ||||
| tags: [ "Networking", "ssh", "tricks" ] | ||||
| requires: [ "ssh" ] | ||||
| --- | ||||
|  | ||||
| Mount a remote filesystem locally with fuse-sshfs: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "tor" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
|  | ||||
| # Get a hostname | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "transmission" | ||||
| tags: [ "Documentation", "Networking", "Torrenting" ] | ||||
| tags: [ "Networking", "Torrenting" ] | ||||
| --- | ||||
| # Torrench | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "troubleshooting" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
|  | ||||
| # Do you have an IP? | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "nginx" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
| Install nginx: | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "wifi" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
| # Netstat Stuff | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "wireguard" | ||||
| tags: [ "Documentation", "Networking", "VPN" ] | ||||
| tags: [ "Networking", "VPN" ] | ||||
| --- | ||||
| <!-- | ||||
| from  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "wireless" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
|  | ||||
| # Check wifi's working | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "wpa_supplicant" | ||||
| tags: [ "Documentation", "Networking" ] | ||||
| tags: [ "Networking" ] | ||||
| --- | ||||
|  | ||||
| wpa_supplicant configurations are stored in /etc/wpa_supplicant/wpa_supplicant-wlan0 (or equivalent). | ||||
|   | ||||
							
								
								
									
										27
									
								
								new.sh
									
									
									
									
									
								
							
							
						
						
									
										27
									
								
								new.sh
									
									
									
									
									
								
							| @@ -1,27 +0,0 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| echo Select a category | ||||
|  | ||||
| category="$(find . -type d -printf '%P\n' | fzy)" | ||||
|  | ||||
| [ ! -d "$category" ] && mkdir "$category" | ||||
|  | ||||
| echo Select a name | ||||
|  | ||||
| read name | ||||
|  | ||||
| filePath="$category/$(echo $name | sed 's/ /_/g').md" | ||||
|  | ||||
| tagsList="$(echo \"$category | sed 's#\/#", "#g')\"" | ||||
|  | ||||
| [ -e "$filePath" ] && $EDITOR "$filePath" && exit 0 | ||||
|  | ||||
| echo "--- | ||||
| title: \"$name\" | ||||
| tags: [ $tagsList ] | ||||
| --- | ||||
|  | ||||
| " > "$filePath" | ||||
|  | ||||
| $EDITOR "$filePath" | ||||
|  | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Basic Sound" | ||||
| tags: [ "Documentation", "Sound" ] | ||||
| tags: [ "Sound" ] | ||||
| --- | ||||
| # Pulse | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "festival" | ||||
| tags: [ "Documentation", "Sound" ] | ||||
| tags: [ "Sound" ] | ||||
| --- | ||||
| # Basics | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "mpd" | ||||
| tags: [ "Documentation", "Sound" ] | ||||
| tags: [ "Sound" ] | ||||
| --- | ||||
| # Setup | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "ncmpcpp" | ||||
| tags: [ "Documentation", "Sound" ] | ||||
| tags: [ "Sound" ] | ||||
| --- | ||||
|  | ||||
| # Music Player Daemon | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "android" | ||||
| tags: [ "Documentation", "System" ] | ||||
| tags: [ "System", "phone" ] | ||||
| --- | ||||
| # mtpfs | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "awk" | ||||
| tags: [ "Documentation", "System" ] | ||||
| tags: [ "System" ] | ||||
| --- | ||||
| # Basics | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "bash tips" | ||||
| tags: [ "Documentation", "Shell", "POSIX" ] | ||||
| tags: [ "Shell", "POSIX" ] | ||||
| --- | ||||
| ## Track Live Changes | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "character-encoding" | ||||
| tags: [ "Documentation", "System" ] | ||||
| tags: [ "System" ] | ||||
| --- | ||||
| Convert a text file from one encoding type to another with: | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Default Programs" | ||||
| tags: [ "Documentation", "Defaults", "Mime Type" ] | ||||
| tags: [ "Defaults", "Mime Type" ] | ||||
| --- | ||||
|  | ||||
| Install the package `xdg-utils`, then make very liberal use of the tab button. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "$EDITOR" | ||||
| tags: [ "Documentation", "System" ] | ||||
| tags: [ "System" ] | ||||
| --- | ||||
| The System's default text editor can be defined within /etc/profile.  It's given the variable `EDITOR`. | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "fstab" | ||||
| tags: [ "Documentation", "System" ] | ||||
| tags: [ "System" ] | ||||
| --- | ||||
| # Basics | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "kernel" | ||||
| tags: [ "Documentation", "System" ] | ||||
| tags: [ "System" ] | ||||
| --- | ||||
| Check which kernet modules are loaded into memory | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "lf - The Light File Manager" | ||||
| tags: [ "Documentation", "File Browser" ] | ||||
| tags: [ "File Browser" ] | ||||
| --- | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "logs" | ||||
| tags: [ "Documentation", "System" ] | ||||
| tags: [ "System" ] | ||||
| --- | ||||
|  | ||||
| # Basic | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "mdadm" | ||||
| tags: [ "Documentation", "RAID" ] | ||||
| tags: [ "RAID" ] | ||||
| --- | ||||
| # RAID5 | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Monitoring" | ||||
| tags: [ "Documentation", "System", "CPU", "Memory" ] | ||||
| tags: [ "System", "CPU", "Memory" ] | ||||
| --- | ||||
|  | ||||
| Print the average CPU load over 1 minute, 5 minutes, and 15 minutes: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "partitions" | ||||
| tags: [ "Documentation", "System" ] | ||||
| tags: [ "System" ] | ||||
| --- | ||||
| # FDisk Basics | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "snaps" | ||||
| tags: [ "Documentation", "System", "Ubuntu", "snap" ] | ||||
| tags: [ "System", "Ubuntu", "snap" ] | ||||
| --- | ||||
| > sudo apt-get purge -y snapd | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "swap" | ||||
| tags: [ "Documentation", "basics" ] | ||||
| tags: [ "basics" ] | ||||
| --- | ||||
| # Making a Swap File | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "journal" | ||||
| tags: [ "Documentation", "systemd" ] | ||||
| tags: [ "systemd" ] | ||||
| --- | ||||
|  | ||||
| See a running log of all system messages: | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "Making Services" | ||||
| tags: [ "Documentation", "systemd" ] | ||||
| tags: [ "systemd" ] | ||||
| --- | ||||
| # Basics | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- | ||||
| title: "systemd" | ||||
| tags: [ "Documentation", "systemd" ] | ||||
| tags: [ "systemd" ] | ||||
| --- | ||||
| ```bash | ||||
| systemctl list-units | ||||
|   | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user