diff options
author | Christian Cleberg <hello@cleberg.net> | 2023-12-02 11:23:08 -0600 |
---|---|---|
committer | Christian Cleberg <hello@cleberg.net> | 2023-12-02 11:23:08 -0600 |
commit | caccd81c3eb7954662d20cab10cc3afeeabca615 (patch) | |
tree | 567ed10350c1ee319c178952ab6aa48265977e58 /blog/2022-12-17-st.org | |
download | cleberg.net-caccd81c3eb7954662d20cab10cc3afeeabca615.tar.gz cleberg.net-caccd81c3eb7954662d20cab10cc3afeeabca615.tar.bz2 cleberg.net-caccd81c3eb7954662d20cab10cc3afeeabca615.zip |
initial commit
Diffstat (limited to 'blog/2022-12-17-st.org')
-rw-r--r-- | blog/2022-12-17-st.org | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/blog/2022-12-17-st.org b/blog/2022-12-17-st.org new file mode 100644 index 0000000..30d46ba --- /dev/null +++ b/blog/2022-12-17-st.org @@ -0,0 +1,89 @@ ++++ +date = 2022-12-17 +title = "Simple Terminal" +description = "An easy guide on how to build st on Fedora Workstation." ++++ + +## 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 +``` |