Skip to content

Commit 0fed642

Browse files
committed
Published multiple files
1 parent a11fe1b commit 0fed642

19 files changed

+259
-16
lines changed

src/site/notes/Laptop/0. Design Considerations.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
{"dg-publish":true,"permalink":"/laptop/0-design-considerations/","updated":"2025-11-09T09:52:24.669-06:00"}
2+
{"dg-publish":true,"permalink":"/laptop/0-design-considerations/","updated":"2025-11-09T09:52:24.000-06:00"}
33
---
44

55
# Discussion

src/site/notes/Laptop/1. Installation.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
{"dg-publish":true,"permalink":"/laptop/1-installation/","updated":"2025-11-10T13:59:18.960-06:00"}
2+
{"dg-publish":true,"permalink":"/laptop/1-installation/","updated":"2025-11-17T12:58:50.970-06:00"}
33
---
44

55
# Installation
@@ -13,6 +13,7 @@ The [official install directions](https://linuxmint-installation-guide.readthedo
1313
- Connected to my home WiFi
1414
- Installed the multimedia CODECs
1515
- ***NOTE:*** To install the codecs, you have to choose to put in a "secure boot" password. You will need to put this password in the first time you boot. Make sure it's easy to type and remember!
16+
- If you log in and can't use the HDMI, it's probably because the key didn't get enrolled. Open a terminal and type `sudo update-secureboot-policy --enroll-key`
1617
- Chose the internal NVME drive
1718
- Chose my time zone
1819
- Added my local user account and password
@@ -50,4 +51,4 @@ My risk analysis suggests my primary threat vectors are:
5051
-
5152

5253
Previous: [[Laptop/0. Design Considerations\|0. Design Considerations]]
53-
Next: [[Laptop/2. VPN\|2. VPN]]
54+
Next: [[Laptop/3. VPN\|3. VPN]]
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
{"dg-publish":true,"permalink":"/laptop/10-emby-client/","updated":"2025-11-15T16:18:11.000-06:00"}
3+
---
4+
5+
- Download [Emby client](https://github.com/MediaBrowser/emby-theater-electron/releases/download/3.0.21/emby-theater-deb_3.0.21_amd64.deb)
6+
- ```bash
7+
sudo apt-get update
8+
sudo apt-get install cec-utils libasound2 libatomic1 libc6 libegl1 libgcc-s1 libpulse0 libstdc++6
9+
```
10+
- I got an error about installing libasound2, but I already had sound installed so it worked anyway
11+
- ```bash
12+
sudo dpkg -i ~/Downloads/emby-theater-deb_3.0.21_amd64.deb
13+
```
14+
- Emby Theater now shows up under 'Sound and Video'
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
{"dg-publish":true,"permalink":"/laptop/2-backups/","updated":"2025-11-19T16:35:40.246-06:00"}
3+
---
4+
5+
# Discussion
6+
In my vision, I have three types of backups: (1) Image, (2) System Snapshot and (3) User Data.
7+
## Image Backups
8+
Tool: [Rescuzilla](https://rescuezilla.com). An "Image" backup is for when I have a catastrophic physical or logical failure of my boot device. For instance, if the boot SSD on my laptop gets irretrievably corrupted or I get a virus, I should be able to pull the SSD out of the laptop, put a new one in and restore the image. It won't have all of my latest data, but I won't have to spend several days re-installing my operating system or all of the tools and software I've configured.
9+
## System Snapshot
10+
> [!info]+ Partitions
11+
> So, it turns out that Timeshift wants to have a partition all to its own. I was intending to use my laptop's 2TB second SSD to house all of my backups (which I'm still doing), but I'd intended on it having one partition that held all of my backups. Turns out that won't work. I had to use the "Disks" tool to break the SSD up into two partitions, one for timeshift and one for backintime.
12+
13+
Tool: [Timeshift](https://github.com/linuxmint/timeshift). A "System Snapshot" is intended to help me recover from messing up my operating system while trying out something. For instance, I've somehow messed up my Steam install trying to get a non-Steam wine game working. I intend on taking a System Snapshot before each new "project" (such as installing the aforementioned game), so that if I make a mistake I can rapidly recover. The implied task in this workflow is an exhaustive testing of currently-working systems after I think I've completed the "project" to ensure I haven't broken something. I'm setting up Timeshift to automatically back up to the second SSD installed on my laptop, then regularly copying it to my external USB hard drive
14+
15+
- Go to the Start Menu->Administration->Timeshift and click on the icon
16+
- I'm not thrilled with the stability or Copy-on-Write (CoW) impact of BTRFS on NVME drives, so I formatted both of my SSD's with ext4. This means I'm going to be selecting RSYNC as the backup type. Then click the "Next" button
17+
- Select the second NVME drive and click "Next"
18+
- I'm choosing the "Daily" default for now, I may change it later. Click "Next"
19+
- I'm going to be using "Backintime" for user files, so leave the /root and /home directories excluded. Click "Next"
20+
- Click "Finish"
21+
- You can now click the "Create" button to manually start a snapshot.
22+
23+
## User Data
24+
Tool: [Backintime](https://github.com/bit-team/backintime). Does for user files (/home) what Timeshift does for system files. A good explanation is [here](https://forums.linuxmint.com/viewtopic.php?p=2381995#p2381995). I will be setting up Backintime to automatically back up to the second SSD installed on my laptop, then regularly copying it to my external USB hard drive. I'll set an alarm on my phone to remind me.
25+
- Go to Mint's "Software Manager" and search for "backintime-qt", then install it.
26+
-

src/site/notes/Laptop/3. VPN.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
---
2+
{"dg-publish":true,"permalink":"/laptop/3-vpn/","updated":"2025-11-16T12:57:01.845-06:00"}
3+
---
4+
5+
# Discussion
6+
I needed a way to securely access my home cloud. I saw online a lot of people using [Cloudflare Tunnels](https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/) , but it looked to me like your information is residing on their servers temporarily. Not something I was interested in. Then I saw others talking about [Tailscale](https://tailscale.com/) Another quick google search and it looked like Wireguard was probably easier for me to implement on my pfSense firewall and various clients.
7+
8+
I use the Wireguard client on my laptop and the wg-tunnel app on my [[Phone/2. VPN\|phone]] to connect to my [[Self-Hosting/0. Design Considerations\|Home Cloud]] services. I don't have a static public IP, but I *am* using Cloudflare DDNS for my domain so that I can link to the hostname.
9+
10+
- Note that most of the steps I used to install Wireguard for Mint came from this video: [https://www.youtube.com/watch?v=knIV9TzcRjo](https://www.youtube.com/watch?v=knIV9TzcRjo)
11+
- If you prefer to read instead of watching, he has a [step-by-step guide](https://zonatsolutions.com/how-to-setup-wireguard-vpn-on-linux-mint/)
12+
- [This site](https://ruan.dev/blog/2020/01/11/setup-a-wireguard-vpn-server-on-linux) was also very helpful.
13+
# Installation
14+
15+
## pfSense firewall
16+
- First create a tunnel on your pfSense firewall if you haven't already done so (assuming that pfSense is your firewall/wireguard gateway)
17+
- Add the Mint laptop as a new peer.
18+
- Note: it won't let you save the peer without the public key. What I did here was copy the pfSense public key into the Mint public key as a temporary place-holder.
19+
20+
## Linux Mint laptop
21+
- Open a terminal window
22+
- `sudo apt update`
23+
- `sudo apt install wireguard wireguard-tools`
24+
- `umask 077 && wg genkey > privatekey`
25+
- `umask 077 && wg pubkey < privatekey > publickey`
26+
- sudo nano /etc/wireguard/wg0.conf
27+
```
28+
[Interface]
29+
PrivateKey = <redacted>
30+
Address = <redacted>
31+
32+
[Peer]
33+
PublicKey = <redacted>
34+
PresharedKey = <redacted>
35+
Endpoint = <redacted>
36+
AllowedIPs = <redacted>
37+
```
38+
## pfSense Firewall
39+
Now you have to go back into the pfSense firewall and edit the peer you created for the laptop. Specifically you need to replace the placeholder public key for the laptop peer with the one you generated on the laptop. Save, and you're ready to start the Wireguard VPN on the laptop.
40+
41+
## Linux Mint laptop
42+
Then I wanted a GUI "applet" that would allow me to control the tunnel and to see its state. I went to "Preferences" then "Applets", then clicked on the "Download" tab at the top. I then typed "Wireguard" in the search bar and clicked the download button to the right of the applet.
43+
44+
Before I could enable the applet, I had to type the following in a command prompt:
45+
- `sudo setfacl -m u:$USER:rx /etc/wireguard`
46+
47+
Now go back into the "Applets" control panel, find the "Wireguard" applet in the "Manage" tab and click the plus-sign button below it. You'll now have a gray icon at the bottom of your task bar that kind of looks like a figure 8. You can start and stop the VPN with this applet, but you have to type in your password each time.
48+
49+
# Don't forget!
50+
You have created sensitive keys in your home directory, and that's a bad place to keep them. I moved them to a sub-folder of the wireguard directory for safekeeping:
51+
`sudo mkdir /etc/wireguard/keys`
52+
`sudo mv privatekey /etc/wireguard/keys/`
53+
`sudo mv publickey /etc/wireguard/keys/`
54+
55+
Previous: [[Laptop/1. Installation\|1. Installation]]
56+
Next: [[Laptop/4. Syncthing\|4. Syncthing]]
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
{"dg-publish":true,"permalink":"/laptop/4-syncthing/","updated":"2025-11-21T07:44:07.022-06:00"}
3+
---
4+
5+
# Discussion
6+
I have several systems that I want to synchronize between my phone, my laptop and a tablet. Many of those systems have their own way of synchronization, i.e. Obsidian's [Obsidian Sync](https://obsidian.md/sync). Systems like that work fine, but there are two disadvantages: First, I don't want to have to maintain multiple systems if I don't have to. Second, I want to be in control of how I back them up. I realized that if I can sync them to the Raspberry Pi, I can then back them up from there.
7+
8+
After looking a a few alternatives, [Syncthing](https://syncthing.net/) (and [syncthing-fork](https://github.com/Catfriend1/syncthing-android) for android) seemed to be the clear winner. It was a bit of a stretch to get my head around how to make it work on all my devices, but the [Getting Started page](https://docs.syncthing.net/intro/getting-started.html#getting-started) helped.
9+
10+
Please note that this page is only for the initial set-up of Syncthing on the my [[Laptop/0. Design Considerations\|Linux Mint Laptop]]. See also the initial set-ups for my [[Self-Hosting/4. Syncthing\|Raspberry Pi]] and [[Phone/4. Syncthing\|Phone]]. I cover the steps to share individual folders in their respective sections, i.e. [[Self-Hosting/5. Note-taking\|Self-Hosting/4. Note-taking]] and [[Laptop/5. Note-taking\|Laptop/4. Note-taking]].
11+
12+
# Installation
13+
- I opened "Software Manager" and searched for "Syncthing". Several items popped up, including "Syncthing" and "Syncthing Tray". The problem was that, as I looked at them, the "Tray" package (which puts an icon in the tray for management and informational purposes) is using a "Flatpack" that's over 1GB of download and 3.7GB on the disk! For just the tray. Syncthing itself was only 23MB on the disk. So, I went to the command line and looked for syncthing by typing `sudo apt search syncthing`. And sure enough, there's a package named syncthingtray, that only needs about 204MB. So I went the 'apt' method instead of the "Software Manager" method.
14+
- ```bash
15+
sudo apt install syncthing syncthingtray -y
16+
```
17+
- After everything finished installing, the Syncthing icons are under the "Internet" start menu.
18+
- Click on "Start Syncthing"
19+
- To ensure that Syncthing will start at boot, type:
20+
- ```bash
21+
systemctl --user enable syncthing.service
22+
```
23+
- Then click on "Syncthing Web UI"
24+
- The web UI comes up and asks to set a user name and password for the GUI. ~~While I'm the only person using the system, it's still a best practice to enable "[defense in depth](https://en.wikipedia.org/wiki/Defense_in_depth_(computing)", so I set it up.~~
25+
- ~~In the box on the webpage entitled "GUI Authentication", click the "Settings" button at the bottom right~~
26+
- ~~Click on the "GUI" tab~~
27+
- ~~Enter the "GUI Authentication User" and "GUI Authentication Password"~~
28+
- ~~I checked the "Use HTTPS for GUI", even though I'm not using a CA-signed certificate. I may have to go back and turn that off later, but I like multiple layers of encryption.~~
29+
- ~~Click "Save".~~
30+
- It turns out that I couldn't get Syncthing Tray to work if I had a password set on the GUI. So I spent the next hour trying to find the way to remove the username and password without breaking Syncthing. I even did a `sudo apt purge syncthing syncthingtray` but that didn't work, it didn't get rid of the configuration file. I *finally* found the file in ~/.local/state/syncthing/config.xml
31+
- In the Syncthing web GUI, find the "Actions" drop-down at the top right and select "Settings". You are going to need the **API Key** later for Syncthing Tray
32+
- Start SyncthingTray from the Start Menu -> Internet -> Syncthing Tray icon.
33+
- I tried the guided setup, but had problems because of my password. After I cleared the Syncthing GUI username and password, I had to go back into the manual settings for Syncthing Tray.
34+
- Syncthing URL: https://127.0.0.1:8384
35+
- API key: what you copied from Syncthing GUI Settings about two bullet points above.
36+
- Click "Apply" and "OK", and it looks like I'm ready to add folders!
37+
- Next step is to install Syncthing on my [[Self-Hosting/4. Syncthing\|Raspberry Pi]] and my [[Phone/4. Syncthing\|Phone]]
38+
39+
Previous: [[Laptop/3. VPN\|3. VPN]]
40+
Next: [[Laptop/5. Note-taking\|5. Note-taking]]
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
{"dg-publish":true,"permalink":"/laptop/5-note-taking/","updated":"2025-11-16T12:57:01.851-06:00"}
3+
---
4+
5+
# Discussion
6+
As detailed in [[Blog/Hosting this blog\|Hosting this blog]], despite wanting to use [Joplin](https://joplinapp.org/) for note-taking, I ended up using [Obsidian](https://obsidian.md/). Don't get me wrong, I like Obsidian very much, but I wanted to go as [FOSS](https://en.wikipedia.org/wiki/Free_and_open-source_software) as I could. However, I couldn't get the [[Blog/Hosting this blog\|blogging software]] working correctly with Joplin, so I went with Obsidian.
7+
8+
# Install
9+
To get Obsidian working on my newly Mint-ed (lol) laptop install, it was extremely easy. I had started this blog in Windows, so as part of backing up all of my laptop documents I also backed up my Obsidian vaults. After I installed Mint on my laptop I installed Obsidian by going to Mint's "Software Manager" and searching for "Obsidian". It popped right up. I clicked on the "Install" button and waited for everything to install. I started Obsidian and opened the vault, and everything just worked, including the Digital Garden plugin. I didn't even have to re-install the token!
10+
11+
The reason I have "Note-taking" after "Syncthing" is because Syncthing is how I'm going to synchronize my vaults between my laptop and my phone. In reality I did it after, because I'm documenting everything in Obsidian as I complete each task. But you will have to have [[Laptop/4. Syncthing\|4. Syncthing]] completed before making the changes below for synchronizing your vaults.
12+
13+
# Synchronizing
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
{"dg-publish":true,"permalink":"/laptop/6-nextcloud/","updated":"2025-11-07T08:45:43.000-06:00"}
3+
---
4+
5+
Coming Soon
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
{"dg-publish":true,"permalink":"/laptop/7-password-manager/","updated":"2025-11-15T13:03:31.000-06:00"}
3+
---
4+
5+
Coming soon

src/site/notes/Phone/4. Syncthing.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
{"dg-publish":true,"permalink":"/phone/4-syncthing/","updated":"2025-11-15T13:02:48.200-06:00"}
2+
{"dg-publish":true,"permalink":"/phone/4-syncthing/","updated":"2025-11-15T16:39:11.000-06:00"}
33
---
44

55
# Discussion
@@ -48,4 +48,4 @@ I'm using [Obtainium](https://github.com/ImranR98/Obtainium) (installed through
4848
Now ready to sync my [[Phone/5. Note-taking\|Obsidian Notes]]
4949

5050
Previous: [[Phone/3. Work Profile\|3. Work Profile]]
51-
Next: [[Phone/5. Note-taking\|5. Note-taking]]
51+
Next: [[Phone/5. Note-taking\|Phone/5. Note-taking]]

0 commit comments

Comments
 (0)