I recently wrote about using fastfetch as a part of my MOTD (Message of the Day) in this post. I like it a lot and wanted it to be available on my lab workstation as well, which runs Ubuntu 22.04. However, I do not have sudo access on this machine, which means I cannot just sudo apt install fastfetch like I did on my home computer. So, I did the next best thing (relevant xkcd?): compile it from source. The process was fairly straightforward, but I had never done it before, so I thought I might as well document it for future reference.
Step 1: Clone the GitHub repository
$ git clone https://github.com/fastfetch-cli/fastfetch.git
Cloning into 'fastfetch'...
remote: Enumerating objects: 52802, done.
remote: Counting objects: 100% (1496/1496), done.
remote: Compressing objects: 100% (654/654), done.
remote: Total 52802 (delta 1154), reused 858 (delta 842), pack-reused 51306 (from 4)
Receiving objects: 100% (52802/52802), 13.82 MiB | 19.44 MiB/s, done.
Resolving deltas: 100% (36921/36921), done.
Step 2: Install Rust dependencies
fastfetch requires a modern build toolchain, which I did not have installed. Since we have already established that I do not have sudo access, I had to use rustup to install Rust into my local home directory (~/.cargo).
Let us run the official installer script available here:
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
When prompted, select y to set rustup to be the primary Rust installation. For the next prompt, select 1 or just press Enter to proceed with the standard installation. This sets up cargo (i.e., the Rust package manager) and rustc (i.e., the Rust compiler) inside the user profile without sudo.
You can see the entire installer output below.
Click to expand installer output
1$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
2info: downloading installer
3warn: It looks like you have an existing installation of Rust at:
4warn: /usr/bin
5warn: It is recommended that rustup be the primary Rust installation.
6warn: Otherwise you may have confusion unless you are careful with your PATH.
7warn: If you are sure that you want both rustup and your already installed Rust
8warn: then please reply `y' or `yes' or set RUSTUP_INIT_SKIP_PATH_CHECK to yes
9warn: or pass `-y' to ignore all ignorable checks.
10error: cannot install while Rust is installed
11
12Continue? (y/N) y
13
14
15Welcome to Rust!
16
17This will download and install the official compiler for the Rust
18programming language, and its package manager, Cargo.
19
20Rustup metadata and toolchains will be installed into the Rustup
21home directory, located at:
22
23 /localhome/kabhishe/.rustup
24
25This can be modified with the RUSTUP_HOME environment variable.
26
27The Cargo home directory is located at:
28
29 /localhome/kabhishe/.cargo
30
31This can be modified with the CARGO_HOME environment variable.
32
33The cargo, rustc, rustup and other commands will be added to
34Cargo's bin directory, located at:
35
36 /localhome/kabhishe/.cargo/bin
37
38This path will then be added to your PATH environment variable by
39modifying the profile files located at:
40
41 /localhome/kabhishe/.profile
42 /localhome/kabhishe/.bashrc
43
44You can uninstall at any time with rustup self uninstall and
45these changes will be reverted.
46
47Current installation options:
48
49
50 default host triple: x86_64-unknown-linux-gnu
51 default toolchain: stable (default)
52 profile: default
53 modify PATH variable: yes
54
551) Proceed with standard installation (default - just press enter)
562) Customize installation
573) Cancel installation
58>
59
60info: profile set to 'default'
61info: default host triple is x86_64-unknown-linux-gnu
62info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'
63info: latest update on 2025-09-18, rust version 1.90.0 (1159e78c4 2025-09-14)
64info: downloading component 'cargo'
65info: downloading component 'clippy'
66info: downloading component 'rust-docs'
67info: downloading component 'rust-std'
68info: downloading component 'rustc'
69 78.7 MiB / 78.7 MiB (100 %) 33.4 MiB/s in 2s
70info: downloading component 'rustfmt'
71info: installing component 'cargo'
72info: installing component 'clippy'
73info: installing component 'rust-docs'
74info: installing component 'rust-std'
75 27.8 MiB / 27.8 MiB (100 %) 25.7 MiB/s in 1s
76info: installing component 'rustc'
77 78.7 MiB / 78.7 MiB (100 %) 27.6 MiB/s in 2s
78info: installing component 'rustfmt'
79info: default toolchain set to 'stable-x86_64-unknown-linux-gnu'
80
81 stable-x86_64-unknown-linux-gnu installed - rustc 1.90.0 (1159e78c4 2025-09-14)
82
83
84Rust is installed now. Great!
85
86To get started you may need to restart your current shell.
87This would reload your PATH environment variable to include
88Cargo's bin directory ($HOME/.cargo/bin).
89
90To configure your current shell, you need to source
91the corresponding env file under $HOME/.cargo.
92
93This is usually done by running one of the following (note the leading DOT):
94. "$HOME/.cargo/env" # For sh/bash/zsh/ash/dash/pdksh
95source "$HOME/.cargo/env.fish" # For fish
96source $"($nu.home-path)/.cargo/env.nu" # For nushell
After this, restart your shell to apply the changes, and then verify that rustc and cargo are installed correctly:
$ rustc -V
rustc 1.90.0 (1159e78c4 2025-09-14)
$ cargo -V
cargo 1.90.0 (840b83a10 2025-07-30)
Step 3: Build fastfetch from source
Following the instructions available here, we now build fastfetch from source.
# Navigate to the directory where we cloned the repository.
$ cd fastfetch
# Create a new directory for the build.
$ mkdir -p build
# Navigate to the build directory.
$ cd build
# Next, configure the project with `cmake`. It will automatically detect the available libraries.
$ cmake ..
Click to expand `cmake` output
$ cmake ..
-- The C compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Build for system processor: amd64
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2")
-- Build type: RelWithDebInfo
-- Threads type: pthread
-- The CXX compiler identification is GNU 11.4.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Enabling LTO
-- Target dirs: ROOT="" USR="/usr" HOME="/home" ETC="/etc"
-- Found Python: /usr/bin/python3.10 (found version "3.10.12") found components: Interpreter
-- Minifying 'help.json'
-- Generating 'fastfetch.1'
-- Enabling DirectX headers for WSL
-- Looking for wcwidth
-- Looking for wcwidth - found
-- Looking for pipe2
-- Looking for pipe2 - found
-- Library: found VULKAN
-- Library: found WAYLAND
-- Library: missing: XCB_RANDR
-- Library: found XRANDR
-- Library: found DRM
-- Library: found DRM_AMDGPU
-- Library: found GIO
-- Library: missing: DCONF
-- Library: found DBUS
-- Library: found SQLITE3
-- Library: missing: RPM
-- Library: missing: IMAGEMAGICK7
-- Library: missing: IMAGEMAGICK6
-- Library: found ZLIB
-- Library: missing: CHAFA
-- Library: found EGL
-- Library: found GLX
-- Library: found OPENCL
-- Library: found PULSE
-- Library: missing: DDCUTIL
-- Library: missing: ELF
-- Library: missing: DIRECTX_HEADERS
-- Looking for linux/videodev2.h
-- Looking for linux/videodev2.h - found
-- Looking for linux/wireless.h
-- Looking for linux/wireless.h - found
-- Looking for utmpx.h
-- Looking for utmpx.h - found
-- Looking for wordexp.h
-- Looking for wordexp.h - found
-- Looking for pthread_np.h
-- Looking for pthread_np.h - not found
-- Looking for pthread_timedjoin_np
-- Looking for pthread_timedjoin_np - found
-- Disabled package managers: WINGET
-- found glibc 2.35
-- Configuring done
-- Generating done
-- Build files have been written to: /localhome/kabhishe/Installations/fastfetch/build
And then finally, compile the binary:
cmake --build . --target fastfetch
Click to expand compilation output
$ cmake --build . --target fastfetch
[ 1%] Building C object CMakeFiles/libfastfetch.dir/src/common/commandoption.c.o
[ 1%] Building C object CMakeFiles/libfastfetch.dir/src/common/duration.c.o
[ 2%] Building C object CMakeFiles/libfastfetch.dir/src/common/font.c.o
[ 2%] Building C object CMakeFiles/libfastfetch.dir/src/common/format.c.o
[ 3%] Building C object CMakeFiles/libfastfetch.dir/src/common/frequency.c.o
[ 3%] Building C object CMakeFiles/libfastfetch.dir/src/common/init.c.o
[ 3%] Building C object CMakeFiles/libfastfetch.dir/src/common/jsonconfig.c.o
[ 4%] Building C object CMakeFiles/libfastfetch.dir/src/common/library.c.o
[ 4%] Building C object CMakeFiles/libfastfetch.dir/src/common/modules.c.o
[ 5%] Building C object CMakeFiles/libfastfetch.dir/src/common/netif/netif.c.o
[ 5%] Building C object CMakeFiles/libfastfetch.dir/src/common/networking/networking_common.c.o
[ 6%] Building C object CMakeFiles/libfastfetch.dir/src/common/option.c.o
[ 6%] Building C object CMakeFiles/libfastfetch.dir/src/common/parsing.c.o
[ 7%] Building C object CMakeFiles/libfastfetch.dir/src/common/percent.c.o
[ 7%] Building C object CMakeFiles/libfastfetch.dir/src/common/printing.c.o
[ 7%] Building C object CMakeFiles/libfastfetch.dir/src/common/properties.c.o
[ 8%] Building C object CMakeFiles/libfastfetch.dir/src/common/settings.c.o
[ 8%] Building C object CMakeFiles/libfastfetch.dir/src/common/size.c.o
[ 9%] Building C object CMakeFiles/libfastfetch.dir/src/common/temps.c.o
[ 9%] Building C object CMakeFiles/libfastfetch.dir/src/common/time.c.o
[ 10%] Building C object CMakeFiles/libfastfetch.dir/src/detection/bluetoothradio/bluetoothradio.c.o
[ 10%] Building C object CMakeFiles/libfastfetch.dir/src/detection/bootmgr/bootmgr.c.o
[ 11%] Building C object CMakeFiles/libfastfetch.dir/src/detection/chassis/chassis.c.o
[ 11%] Building C object CMakeFiles/libfastfetch.dir/src/detection/cpu/cpu.c.o
[ 11%] Building C object CMakeFiles/libfastfetch.dir/src/detection/cpuusage/cpuusage.c.o
[ 12%] Building C object CMakeFiles/libfastfetch.dir/src/detection/disk/disk.c.o
[ 12%] Building C object CMakeFiles/libfastfetch.dir/src/detection/diskio/diskio.c.o
[ 13%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/displayserver.c.o
[ 13%] Building C object CMakeFiles/libfastfetch.dir/src/detection/editor/editor.c.o
[ 14%] Building C object CMakeFiles/libfastfetch.dir/src/detection/font/font.c.o
[ 14%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gpu/gpu.c.o
[ 15%] Building C object CMakeFiles/libfastfetch.dir/src/detection/media/media.c.o
[ 15%] Building C object CMakeFiles/libfastfetch.dir/src/detection/netio/netio.c.o
[ 15%] Building C object CMakeFiles/libfastfetch.dir/src/detection/opencl/opencl.c.o
[ 16%] Building C object CMakeFiles/libfastfetch.dir/src/detection/opengl/opengl_shared.c.o
[ 16%] Building C object CMakeFiles/libfastfetch.dir/src/detection/os/os.c.o
[ 17%] Building C object CMakeFiles/libfastfetch.dir/src/detection/packages/packages.c.o
[ 17%] Building C object CMakeFiles/libfastfetch.dir/src/detection/physicalmemory/physicalmemory.c.o
[ 18%] Building C object CMakeFiles/libfastfetch.dir/src/detection/publicip/publicip.c.o
[ 18%] Building C object CMakeFiles/libfastfetch.dir/src/detection/terminaltheme/terminaltheme.c.o
[ 19%] Building C object CMakeFiles/libfastfetch.dir/src/detection/terminalfont/terminalfont.c.o
[ 19%] Building C object CMakeFiles/libfastfetch.dir/src/detection/terminalshell/terminalshell.c.o
[ 19%] Building C object CMakeFiles/libfastfetch.dir/src/detection/version/version.c.o
[ 20%] Building C object CMakeFiles/libfastfetch.dir/src/detection/vulkan/vulkan.c.o
[ 20%] Building C object CMakeFiles/libfastfetch.dir/src/detection/weather/weather.c.o
[ 21%] Building C object CMakeFiles/libfastfetch.dir/src/logo/builtin.c.o
[ 21%] Building C object CMakeFiles/libfastfetch.dir/src/logo/image/im6.c.o
[ 22%] Building C object CMakeFiles/libfastfetch.dir/src/logo/image/im7.c.o
[ 22%] Building C object CMakeFiles/libfastfetch.dir/src/logo/image/image.c.o
[ 23%] Building C object CMakeFiles/libfastfetch.dir/src/logo/logo.c.o
[ 23%] Building C object CMakeFiles/libfastfetch.dir/src/modules/battery/battery.c.o
[ 24%] Building C object CMakeFiles/libfastfetch.dir/src/modules/bios/bios.c.o
[ 24%] Building C object CMakeFiles/libfastfetch.dir/src/modules/bluetooth/bluetooth.c.o
[ 24%] Building C object CMakeFiles/libfastfetch.dir/src/modules/bluetoothradio/bluetoothradio.c.o
[ 25%] Building C object CMakeFiles/libfastfetch.dir/src/modules/board/board.c.o
[ 25%] Building C object CMakeFiles/libfastfetch.dir/src/modules/bootmgr/bootmgr.c.o
[ 26%] Building C object CMakeFiles/libfastfetch.dir/src/modules/brightness/brightness.c.o
[ 26%] Building C object CMakeFiles/libfastfetch.dir/src/modules/break/break.c.o
[ 27%] Building C object CMakeFiles/libfastfetch.dir/src/modules/btrfs/btrfs.c.o
[ 27%] Building C object CMakeFiles/libfastfetch.dir/src/modules/camera/camera.c.o
[ 28%] Building C object CMakeFiles/libfastfetch.dir/src/modules/chassis/chassis.c.o
[ 28%] Building C object CMakeFiles/libfastfetch.dir/src/modules/colors/colors.c.o
[ 28%] Building C object CMakeFiles/libfastfetch.dir/src/modules/cpu/cpu.c.o
[ 29%] Building C object CMakeFiles/libfastfetch.dir/src/modules/cpucache/cpucache.c.o
[ 29%] Building C object CMakeFiles/libfastfetch.dir/src/modules/cpuusage/cpuusage.c.o
[ 30%] Building C object CMakeFiles/libfastfetch.dir/src/modules/cursor/cursor.c.o
[ 30%] Building C object CMakeFiles/libfastfetch.dir/src/modules/custom/custom.c.o
[ 31%] Building C object CMakeFiles/libfastfetch.dir/src/modules/command/command.c.o
[ 31%] Building C object CMakeFiles/libfastfetch.dir/src/modules/datetime/datetime.c.o
[ 32%] Building C object CMakeFiles/libfastfetch.dir/src/modules/de/de.c.o
[ 32%] Building C object CMakeFiles/libfastfetch.dir/src/modules/disk/disk.c.o
[ 32%] Building C object CMakeFiles/libfastfetch.dir/src/modules/diskio/diskio.c.o
[ 33%] Building C object CMakeFiles/libfastfetch.dir/src/modules/dns/dns.c.o
[ 33%] Building C object CMakeFiles/libfastfetch.dir/src/modules/editor/editor.c.o
[ 34%] Building C object CMakeFiles/libfastfetch.dir/src/modules/font/font.c.o
[ 34%] Building C object CMakeFiles/libfastfetch.dir/src/modules/gpu/gpu.c.o
[ 35%] Building C object CMakeFiles/libfastfetch.dir/src/modules/host/host.c.o
[ 35%] Building C object CMakeFiles/libfastfetch.dir/src/modules/icons/icons.c.o
[ 36%] Building C object CMakeFiles/libfastfetch.dir/src/modules/initsystem/initsystem.c.o
[ 36%] Building C object CMakeFiles/libfastfetch.dir/src/modules/gamepad/gamepad.c.o
[ 36%] Building C object CMakeFiles/libfastfetch.dir/src/modules/kernel/kernel.c.o
[ 37%] Building C object CMakeFiles/libfastfetch.dir/src/modules/keyboard/keyboard.c.o
[ 37%] Building C object CMakeFiles/libfastfetch.dir/src/modules/lm/lm.c.o
[ 38%] Building C object CMakeFiles/libfastfetch.dir/src/modules/loadavg/loadavg.c.o
[ 38%] Building C object CMakeFiles/libfastfetch.dir/src/modules/locale/locale.c.o
[ 39%] Building C object CMakeFiles/libfastfetch.dir/src/modules/localip/localip.c.o
[ 39%] Building C object CMakeFiles/libfastfetch.dir/src/modules/memory/memory.c.o
[ 40%] Building C object CMakeFiles/libfastfetch.dir/src/modules/monitor/monitor.c.o
[ 40%] Building C object CMakeFiles/libfastfetch.dir/src/modules/netio/netio.c.o
[ 40%] Building C object CMakeFiles/libfastfetch.dir/src/modules/opencl/opencl.c.o
[ 41%] Building C object CMakeFiles/libfastfetch.dir/src/modules/opengl/opengl.c.o
[ 41%] Building C object CMakeFiles/libfastfetch.dir/src/modules/os/os.c.o
[ 42%] Building C object CMakeFiles/libfastfetch.dir/src/modules/packages/packages.c.o
[ 42%] Building C object CMakeFiles/libfastfetch.dir/src/modules/physicaldisk/physicaldisk.c.o
[ 43%] Building C object CMakeFiles/libfastfetch.dir/src/modules/physicalmemory/physicalmemory.c.o
[ 43%] Building C object CMakeFiles/libfastfetch.dir/src/modules/processes/processes.c.o
[ 44%] Building C object CMakeFiles/libfastfetch.dir/src/modules/player/player.c.o
[ 44%] Building C object CMakeFiles/libfastfetch.dir/src/modules/poweradapter/poweradapter.c.o
[ 44%] Building C object CMakeFiles/libfastfetch.dir/src/modules/publicip/publicip.c.o
[ 45%] Building C object CMakeFiles/libfastfetch.dir/src/modules/display/display.c.o
[ 45%] Building C object CMakeFiles/libfastfetch.dir/src/modules/separator/separator.c.o
[ 46%] Building C object CMakeFiles/libfastfetch.dir/src/modules/shell/shell.c.o
[ 46%] Building C object CMakeFiles/libfastfetch.dir/src/modules/sound/sound.c.o
[ 47%] Building C object CMakeFiles/libfastfetch.dir/src/modules/swap/swap.c.o
[ 47%] Building C object CMakeFiles/libfastfetch.dir/src/modules/media/media.c.o
[ 48%] Building C object CMakeFiles/libfastfetch.dir/src/modules/mouse/mouse.c.o
[ 48%] Building C object CMakeFiles/libfastfetch.dir/src/modules/terminal/terminal.c.o
[ 49%] Building C object CMakeFiles/libfastfetch.dir/src/modules/terminaltheme/terminaltheme.c.o
[ 49%] Building C object CMakeFiles/libfastfetch.dir/src/modules/terminalfont/terminalfont.c.o
[ 49%] Building C object CMakeFiles/libfastfetch.dir/src/modules/terminalsize/terminalsize.c.o
[ 50%] Building C object CMakeFiles/libfastfetch.dir/src/modules/theme/theme.c.o
[ 50%] Building C object CMakeFiles/libfastfetch.dir/src/modules/title/title.c.o
[ 51%] Building C object CMakeFiles/libfastfetch.dir/src/modules/tpm/tpm.c.o
[ 51%] Building C object CMakeFiles/libfastfetch.dir/src/modules/uptime/uptime.c.o
[ 52%] Building C object CMakeFiles/libfastfetch.dir/src/modules/users/users.c.o
[ 52%] Building C object CMakeFiles/libfastfetch.dir/src/modules/version/version.c.o
[ 53%] Building C object CMakeFiles/libfastfetch.dir/src/modules/vulkan/vulkan.c.o
[ 53%] Building C object CMakeFiles/libfastfetch.dir/src/modules/wallpaper/wallpaper.c.o
[ 53%] Building C object CMakeFiles/libfastfetch.dir/src/modules/weather/weather.c.o
[ 54%] Building C object CMakeFiles/libfastfetch.dir/src/modules/wifi/wifi.c.o
[ 54%] Building C object CMakeFiles/libfastfetch.dir/src/modules/wm/wm.c.o
[ 55%] Building C object CMakeFiles/libfastfetch.dir/src/modules/wmtheme/wmtheme.c.o
[ 55%] Building C object CMakeFiles/libfastfetch.dir/src/modules/zpool/zpool.c.o
[ 56%] Building C object CMakeFiles/libfastfetch.dir/src/options/display.c.o
[ 56%] Building C object CMakeFiles/libfastfetch.dir/src/options/logo.c.o
[ 57%] Building C object CMakeFiles/libfastfetch.dir/src/options/general.c.o
[ 57%] Building C object CMakeFiles/libfastfetch.dir/src/util/edidHelper.c.o
[ 57%] Building C object CMakeFiles/libfastfetch.dir/src/util/base64.c.o
[ 58%] Building C object CMakeFiles/libfastfetch.dir/src/util/FFlist.c.o
[ 58%] Building C object CMakeFiles/libfastfetch.dir/src/util/FFstrbuf.c.o
[ 59%] Building C object CMakeFiles/libfastfetch.dir/src/util/kmod.c.o
[ 59%] Building C object CMakeFiles/libfastfetch.dir/src/util/path.c.o
[ 60%] Building C object CMakeFiles/libfastfetch.dir/src/util/platform/FFPlatform.c.o
[ 60%] Building C object CMakeFiles/libfastfetch.dir/src/util/smbiosHelper.c.o
[ 61%] Building C object CMakeFiles/libfastfetch.dir/src/common/dbus.c.o
[ 61%] Building C object CMakeFiles/libfastfetch.dir/src/common/io/io_unix.c.o
[ 61%] Building C object CMakeFiles/libfastfetch.dir/src/common/netif/netif_linux.c.o
[ 62%] Building C object CMakeFiles/libfastfetch.dir/src/common/networking/networking_linux.c.o
[ 62%] Building C object CMakeFiles/libfastfetch.dir/src/common/processing_linux.c.o
[ 63%] Building C object CMakeFiles/libfastfetch.dir/src/detection/battery/battery_linux.c.o
[ 63%] Building C object CMakeFiles/libfastfetch.dir/src/detection/bios/bios_linux.c.o
[ 64%] Building C object CMakeFiles/libfastfetch.dir/src/detection/board/board_linux.c.o
[ 64%] Building C object CMakeFiles/libfastfetch.dir/src/detection/bootmgr/bootmgr_linux.c.o
[ 65%] Building C object CMakeFiles/libfastfetch.dir/src/detection/brightness/brightness_linux.c.o
[ 65%] Building C object CMakeFiles/libfastfetch.dir/src/detection/btrfs/btrfs_linux.c.o
[ 65%] Building C object CMakeFiles/libfastfetch.dir/src/detection/chassis/chassis_linux.c.o
[ 66%] Building C object CMakeFiles/libfastfetch.dir/src/detection/cpu/cpu_linux.c.o
[ 66%] Building C object CMakeFiles/libfastfetch.dir/src/detection/cpucache/cpucache_linux.c.o
[ 67%] Building C object CMakeFiles/libfastfetch.dir/src/detection/cpuusage/cpuusage_linux.c.o
[ 67%] Building C object CMakeFiles/libfastfetch.dir/src/detection/cursor/cursor_linux.c.o
[ 68%] Building C object CMakeFiles/libfastfetch.dir/src/detection/bluetooth/bluetooth_linux.c.o
[ 68%] Building C object CMakeFiles/libfastfetch.dir/src/detection/bluetoothradio/bluetoothradio_linux.c.o
[ 69%] Building C object CMakeFiles/libfastfetch.dir/src/detection/disk/disk_linux.c.o
[ 69%] Building C object CMakeFiles/libfastfetch.dir/src/detection/dns/dns_linux.c.o
[ 69%] Building C object CMakeFiles/libfastfetch.dir/src/detection/physicaldisk/physicaldisk_linux.c.o
[ 70%] Building C object CMakeFiles/libfastfetch.dir/src/detection/physicalmemory/physicalmemory_linux.c.o
[ 70%] Building C object CMakeFiles/libfastfetch.dir/src/detection/diskio/diskio_linux.c.o
[ 71%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/displayserver_linux.c.o
[ 71%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/common.c.o
[ 72%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/drm.c.o
[ 72%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wayland/wayland.c.o
[ 73%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wayland/global-output.c.o
[ 73%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wayland/zwlr-output.c.o
[ 74%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wayland/kde-output.c.o
[ 74%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wayland/wlr-output-management-unstable-v1-protocol.c.o
[ 74%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wayland/kde-output-device-v2-protocol.c.o
[ 75%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wayland/kde-output-order-v1-protocol.c.o
[ 75%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wayland/xdg-output-unstable-v1-protocol.c.o
[ 76%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/wmde.c.o
[ 76%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/xcb.c.o
[ 77%] Building C object CMakeFiles/libfastfetch.dir/src/detection/displayserver/linux/xlib.c.o
[ 77%] Building C object CMakeFiles/libfastfetch.dir/src/detection/font/font_linux.c.o
[ 78%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gpu/gpu_linux.c.o
[ 78%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gpu/gpu_drm.c.o
[ 78%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gpu/gpu_pci.c.o
[ 79%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gtk_qt/gtk.c.o
[ 79%] Building C object CMakeFiles/libfastfetch.dir/src/detection/host/host_linux.c.o
[ 80%] Building C object CMakeFiles/libfastfetch.dir/src/detection/host/host_mac.c.o
[ 80%] Building C object CMakeFiles/libfastfetch.dir/src/detection/icons/icons_linux.c.o
[ 81%] Building C object CMakeFiles/libfastfetch.dir/src/detection/initsystem/initsystem_linux.c.o
[ 81%] Building C object CMakeFiles/libfastfetch.dir/src/detection/keyboard/keyboard_linux.c.o
[ 82%] Building C object CMakeFiles/libfastfetch.dir/src/detection/libc/libc_linux.c.o
[ 82%] Building C object CMakeFiles/libfastfetch.dir/src/detection/lm/lm_linux.c.o
[ 82%] Building C object CMakeFiles/libfastfetch.dir/src/detection/loadavg/loadavg_linux.c.o
[ 83%] Building C object CMakeFiles/libfastfetch.dir/src/detection/locale/locale_linux.c.o
[ 83%] Building C object CMakeFiles/libfastfetch.dir/src/detection/localip/localip_linux.c.o
[ 84%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gamepad/gamepad_linux.c.o
[ 84%] Building C object CMakeFiles/libfastfetch.dir/src/detection/media/media_linux.c.o
[ 85%] Building C object CMakeFiles/libfastfetch.dir/src/detection/memory/memory_linux.c.o
[ 85%] Building C object CMakeFiles/libfastfetch.dir/src/detection/mouse/mouse_linux.c.o
[ 86%] Building C object CMakeFiles/libfastfetch.dir/src/detection/netio/netio_linux.c.o
[ 86%] Building C object CMakeFiles/libfastfetch.dir/src/detection/opengl/opengl_linux.c.o
[ 86%] Building C object CMakeFiles/libfastfetch.dir/src/detection/os/os_linux.c.o
[ 87%] Building C object CMakeFiles/libfastfetch.dir/src/detection/packages/packages_linux.c.o
[ 87%] Building C object CMakeFiles/libfastfetch.dir/src/detection/packages/packages_nix.c.o
[ 88%] Building C object CMakeFiles/libfastfetch.dir/src/detection/poweradapter/poweradapter_linux.c.o
[ 88%] Building C object CMakeFiles/libfastfetch.dir/src/detection/processes/processes_linux.c.o
[ 89%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gtk_qt/qt.c.o
[ 89%] Building C object CMakeFiles/libfastfetch.dir/src/detection/sound/sound_linux.c.o
[ 90%] Building C object CMakeFiles/libfastfetch.dir/src/detection/swap/swap_linux.c.o
[ 90%] Building C object CMakeFiles/libfastfetch.dir/src/detection/terminalfont/terminalfont_linux.c.o
[ 90%] Building C object CMakeFiles/libfastfetch.dir/src/detection/terminalshell/terminalshell_linux.c.o
[ 91%] Building C object CMakeFiles/libfastfetch.dir/src/detection/terminalsize/terminalsize_linux.c.o
[ 91%] Building C object CMakeFiles/libfastfetch.dir/src/detection/theme/theme_linux.c.o
[ 92%] Building C object CMakeFiles/libfastfetch.dir/src/detection/tpm/tpm_linux.c.o
[ 92%] Building C object CMakeFiles/libfastfetch.dir/src/detection/uptime/uptime_linux.c.o
[ 93%] Building C object CMakeFiles/libfastfetch.dir/src/detection/users/users_linux.c.o
[ 93%] Building C object CMakeFiles/libfastfetch.dir/src/detection/wallpaper/wallpaper_linux.c.o
[ 94%] Building C object CMakeFiles/libfastfetch.dir/src/detection/wifi/wifi_linux.c.o
[ 94%] Building C object CMakeFiles/libfastfetch.dir/src/detection/wm/wm_linux.c.o
[ 94%] Building C object CMakeFiles/libfastfetch.dir/src/detection/de/de_linux.c.o
[ 95%] Building C object CMakeFiles/libfastfetch.dir/src/detection/wmtheme/wmtheme_linux.c.o
[ 95%] Building C object CMakeFiles/libfastfetch.dir/src/detection/camera/camera_linux.c.o
[ 96%] Building C object CMakeFiles/libfastfetch.dir/src/detection/zpool/zpool_linux.c.o
[ 96%] Building C object CMakeFiles/libfastfetch.dir/src/util/platform/FFPlatform_unix.c.o
[ 97%] Building C object CMakeFiles/libfastfetch.dir/src/util/binary_linux.c.o
[ 97%] Building CXX object CMakeFiles/libfastfetch.dir/src/detection/gpu/gpu_wsl.cpp.o
[ 98%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gpu/gpu_nvidia.c.o
[ 98%] Building C object CMakeFiles/libfastfetch.dir/src/detection/gpu/gpu_mthreads.c.o
[100%] Building C object CMakeFiles/libfastfetch.dir/src/3rdparty/yyjson/yyjson.c.o
[100%] Built target libfastfetch
[100%] Building C object CMakeFiles/fastfetch.dir/src/fastfetch.c.o
[100%] Linking C executable fastfetch
lto-wrapper: warning: using serial compilation of 26 LTRANS jobs
[100%] Built target fastfetch
The binary should be now available:
1$ ls -lart
2total 9368
3-rw-r--r-- 1 kabhishe domain users 15988 Oct 20 17:39 fastfetch.1
4-rw-r--r-- 1 kabhishe domain users 21722 Oct 20 17:39 fastfetch_datatext.h
5-rw-r--r-- 1 kabhishe domain users 865 Oct 20 17:39 fastfetch_config.h
6-rw-r--r-- 1 kabhishe domain users 3686 Oct 20 17:39 CPackConfig.cmake
7-rw-r--r-- 1 kabhishe domain users 4144 Oct 20 17:39 CPackSourceConfig.cmake
8-rw-r--r-- 1 kabhishe domain users 56567 Oct 20 17:39 CMakeCache.txt
9-rw-r--r-- 1 kabhishe domain users 334112 Oct 20 17:39 logo_builtin.h
10-rw-r--r-- 1 kabhishe domain users 272559 Oct 20 17:39 Makefile
11-rw-r--r-- 1 kabhishe domain users 4900 Oct 20 17:39 cmake_install.cmake
12-rwxr-xr-x 1 kabhishe domain users 8843696 Oct 20 17:40 fastfetch
13drwxr-xr-x 9 kabhishe domain users 4096 Oct 20 17:40 CMakeFiles
14drwxr-xr-x 13 kabhishe domain users 4096 Oct 20 17:41 ..
15drwxr-xr-x 3 kabhishe domain users 4096 Oct 20 17:55 .
Step 4: Verify the binary
We can verify the binary by simply running it:
$ ./fastfetch
.... kabhishe@hostname
.',:clooo: .:looooo:. -------------------
.;looooooooc .oooooooooo' OS: Ubuntu 22.04.5 LTS (Jammy Jellyfish) x86_64
.;looooool:,''. :ooooooooooc Host: machine_name
;looool;. 'oooooooooo, Kernel: Linux ...-generic
;clool' .cooooooc. ,, Uptime: ...
... ...... .:oo, Packages: ...
.;clol:,. .loooo' Shell: ...
:ooooooooo, 'ooool Display (xxxxxxxx): 1920x1080 in 22", 60 Hz [External]
'ooooooooooo. loooo. Display (xxxxxxxx): 1920x1080 in 22", 60 Hz [External] *
'ooooooooool coooo. DE: GNOME 42.9
,loooooooc. .loooo. WM: Mutter (X11)
.,;;;'. ;ooooc WM Theme: Yaru-dark
... ,ooool. Theme: Yaru-dark [GTK2/3/4]
.cooooc. ..',,'. .cooo. Icons: Yaru [GTK2/3/4]
;ooooo:. ;oooooooc. :l. Font: Cantarell (11pt) [GTK2/3/4]
.coooooc,.. coooooooooo. Cursor: Adwaita (24px)
.:ooooooolc:. .ooooooooooo' Terminal: /dev/pts/6
.':loooooo; ,oooooooooc CPU: Intel(R) Core(TM) ...
..';::c' .;loooo:' GPU 1: NVIDIA Device ...
GPU 2: Intel Device ...
Memory: ...
Swap: ...
Disk (/): ...
Disk (/local-scratch): ...
Disk (/local-scratch2): ...
Local IP (xxxxxxxx): ...
Locale: en_US.UTF-8
[Optional] Step 5: Configuring neofetch
The default neofetch output can be verbose for some people, and neofetch offers several configuration options to customize the output. For example, on another workstation running Ubuntu 22.04, I wanted to display less information, and I found config 23.jsonc to be a good fit. So, I simply changed my MOTD script to use this config:
$ cat /etc/update-motd.d/11-neofetch
#!/bin/bash
# Run Fastfetch with a specific config
if command -v fastfetch >/dev/null 2>&1; then
fastfetch -c /localhome/kabhishe/Installations/fastfetch/presets/examples/23.jsonc
fi
and the output is:
..;,; .,;,. [_Kernel___> Linux ...
.,lool: .ooooo, [_Packages_> ...
;oo;: .coool. [_Local_IP_> ...
.... ''' ,l; [_RAM______> ...
:oooo, 'oo. [_SWAP_____> ...
looooc :oo' [_Disk_____> ...
'::' ,oo: [_Disk_____> ...
,., .... co, [_Disk_____> ...
lo:;. :oooo; .
':ooo; cooooc ● ● ● ● ● ● ● ●
''' ''''