aboutsummaryrefslogtreecommitdiff
path: root/content/blog/2022-12-17-st.md
diff options
context:
space:
mode:
authorChristian Cleberg <hello@cleberg.net>2024-01-08 20:11:17 -0600
committerChristian Cleberg <hello@cleberg.net>2024-01-08 20:11:17 -0600
commit25945b8fead989cca09a23983623b63ce36dcc0c (patch)
tree0dfc869ce8b028e04ce9da196af08779780915ce /content/blog/2022-12-17-st.md
parent22b526be60bf4257c2a1d58a5fad59cf6b044375 (diff)
downloadcleberg.net-25945b8fead989cca09a23983623b63ce36dcc0c.tar.gz
cleberg.net-25945b8fead989cca09a23983623b63ce36dcc0c.tar.bz2
cleberg.net-25945b8fead989cca09a23983623b63ce36dcc0c.zip
feat: total re-write from Emacs org-mode to Zola markdown
Diffstat (limited to 'content/blog/2022-12-17-st.md')
-rw-r--r--content/blog/2022-12-17-st.md94
1 files changed, 94 insertions, 0 deletions
diff --git a/content/blog/2022-12-17-st.md b/content/blog/2022-12-17-st.md
new file mode 100644
index 0000000..557d565
--- /dev/null
+++ b/content/blog/2022-12-17-st.md
@@ -0,0 +1,94 @@
++++
+date = 2022-12-17
+title = "Simple Terminal"
+description = "Instructions for building simple terminal on Fedora."
++++
+
+## st
+
+[st](https://st.suckless.org) standards for Simple Terminal, a simple
+terminal implementation for X made by the
+[suckless](https://suckless.org) team.
+
+This post walks through the dependencies needed and process to build and
+install `st` on Fedora Workstation.
+
+### Obtain Files
+
+To start, obtain the source files for `st` via
+`git clone`.
+
+```sh
+mkdir ~/suckless && cd ~/suckless
+git clone https://git.suckless.org/st && cd st
+```
+
+### Dependencies
+
+Once you have the files and are in the `st` directory, ensure
+the following packages are installed.
+
+```sh
+sudo dnf update && sudo dnf upgrade
+sudo dnf install gcc patch libX11-devel libXft-devel
+```
+
+### Building
+
+Before building, ensure that you read the README file.
+
+```sh
+cat README
+```
+
+Once you've read the instructions, open the `config.mk` file
+and ensure it matches your setup. If you're not sure, leave the default
+options within the file.
+
+Finally, you can build `st` with the following command.
+Ensure you run as root (e.g., `sudo`) or else you may not end
+up with a usable application file.
+
+```sh
+sudo make clean install
+```
+
+### Customization (Patches)
+
+Note that customizing `st` requires you to modify the source
+files or to download one of the [available
+patches](https://st.suckless.org/patches/) for suckless.org.
+
+If you've already installed `st` and want to customize or
+install a patch, start by uninstalling the current program.
+
+```sh
+cd ~/suckless/st
+sudo make uninstall
+```
+
+Next, grab the `<path>.diff` file from the page of the patch
+you chose. For example, I will be using the
+[defaultfontsize](https://st.suckless.org/patches/defaultfontsize/)
+patch in the below example.
+
+```sh
+wget https://st.suckless.org/patches/defaultfontsize/st-defaultfontsize-20210225-4ef0cbd.diff
+```
+
+Once the file is downloaded inside the `st` folder, apply the
+patch and re-install the program. You may need to install the
+`patch` command if you don't have it installed already (you
+should have installed it above).
+
+```sh
+patch -i st-defaultfontsize-20210225-4ef0cbd.diff
+sudo make clean install
+```
+
+Once installed, you can use the default font size patch to launch
+`st` with any font size you wish:
+
+```sh
+st -z 16
+```