1
0

feat: Add configuration files and build script

• Introduced configuration files for btop, eza, and lazygit, applying a "tokyonight" color scheme.
 • Added a Fedora Distrobox build setup including a Dockerfile and configuration.
 • Included a .gitignore file.
This commit is contained in:
2025-12-05 11:42:38 -03:00
parent 3927016a44
commit 5606c9b49a
8 changed files with 510 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
**.log

254
btop/btop.conf Normal file
View File

@@ -0,0 +1,254 @@
#? Config file for btop v. 1.4.4
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
color_theme = "tokyonight_night"
#* If the theme set background should be shown, set to False if you want terminal background transparency.
theme_background = True
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
truecolor = True
#* Set to true to force tty mode regardless if a real tty has been detected or not.
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
force_tty = False
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
#* Use whitespace " " as separator between different presets.
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
vim_keys = False
#* Rounded corners on boxes, is ignored if TTY mode is ON.
rounded_corners = True
#* Default symbols to use for graph creation, "braille", "block" or "tty".
#* "braille" offers the highest resolution but might not be included in all fonts.
#* "block" has half the resolution of braille but uses more common characters.
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
graph_symbol = "braille"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_cpu = "default"
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
graph_symbol_gpu = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_mem = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_net = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_proc = "default"
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
shown_boxes = "proc cpu mem"
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
update_ms = 2000
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
proc_sorting = "cpu lazy"
#* Reverse sorting order, True or False.
proc_reversed = False
#* Show processes as a tree.
proc_tree = False
#* Use the cpu graph colors in the process list.
proc_colors = True
#* Use a darkening gradient in the process list.
proc_gradient = True
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
proc_per_core = False
#* Show process memory as bytes instead of percent.
proc_mem_bytes = True
#* Show cpu graph for each process.
proc_cpu_graphs = True
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
proc_info_smaps = False
#* Show proc box on left side of screen instead of right.
proc_left = False
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = False
#* In tree-view, always accumulate child process resources in the parent process.
proc_aggregate = False
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_upper = "Auto"
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_lower = "Auto"
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
show_gpu_info = "Auto"
#* Toggles if the lower CPU graph should be inverted.
cpu_invert_lower = True
#* Set to True to completely disable the lower CPU graph.
cpu_single_graph = False
#* Show cpu box at bottom of screen instead of top.
cpu_bottom = False
#* Shows the system uptime in the CPU box.
show_uptime = True
#* Show cpu temperature.
check_temp = True
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
cpu_sensor = "Auto"
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
show_coretemp = True
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
#* Example: "4:0 5:1 6:3"
cpu_core_map = ""
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
temp_scale = "celsius"
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
base_10_sizes = False
#* Show CPU frequency.
show_cpu_freq = True
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
clock_format = "%X"
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
background_update = True
#* Custom cpu model name, empty string to disable.
custom_cpu_name = ""
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
disks_filter = ""
#* Show graphs instead of meters for memory values.
mem_graphs = True
#* Show mem box below net box instead of above.
mem_below_net = False
#* Count ZFS ARC in cached and available memory.
zfs_arc_cached = True
#* If swap memory should be shown in memory box.
show_swap = True
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
swap_disk = True
#* If mem box should be split to also show disks info.
show_disks = True
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
only_physical = True
#* Read disks list from /etc/fstab. This also disables only_physical.
use_fstab = True
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
zfs_hide_datasets = False
#* Set to true to show available disk space for privileged users.
disk_free_priv = False
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
show_io_stat = True
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
io_mode = False
#* Set to True to show combined read/write io graphs in io mode.
io_graph_combined = False
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
#* Example: "/mnt/media:100 /:20 /boot:1".
io_graph_speeds = ""
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
net_download = 100
net_upload = 100
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
net_auto = True
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
net_sync = True
#* Starts with the Network Interface specified here.
net_iface = ""
#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes.
base_10_bitrate = "Auto"
#* Show battery stats in top right if battery is present.
show_battery = True
#* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "Auto"
#* Show power stats of battery next to charge indicator.
show_battery_watts = True
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
log_level = "WARNING"
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
nvml_measure_pcie_speeds = True
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
rsmi_measure_pcie_speeds = True
#* Horizontally mirror the GPU graph.
gpu_mirror_graph = True
#* Custom gpu0 model name, empty string to disable.
custom_gpu_name0 = ""
#* Custom gpu1 model name, empty string to disable.
custom_gpu_name1 = ""
#* Custom gpu2 model name, empty string to disable.
custom_gpu_name2 = ""
#* Custom gpu3 model name, empty string to disable.
custom_gpu_name3 = ""
#* Custom gpu4 model name, empty string to disable.
custom_gpu_name4 = ""
#* Custom gpu5 model name, empty string to disable.
custom_gpu_name5 = ""

View File

@@ -0,0 +1,72 @@
# Theme: tokyonight_night
# By: Folke Lemaitre
theme[main_bg]="#1a1b26"
theme[main_fg]="#c0caf5"
# Title color for boxes
theme[title]="#c0caf5"
# Highlight color for keyboard shortcuts
theme[hi_fg]="#ff9e64"
# Selected item in processes box
theme[selected_bg]="#292e42"
theme[selected_fg]="#7dcfff"
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
theme[proc_misc]="#7dcfff"
# Cpu box outline color
theme[cpu_box]="#27a1b9"
# Memory/disks box outline color
theme[mem_box]="#27a1b9"
# Net up/down box outline color
theme[net_box]="#27a1b9"
# Processes box outline color
theme[proc_box]="#27a1b9"
# Box divider line and small boxes line color
theme[div_line]="#27a1b9"
# Temperature graph colors
theme[temp_start]="#9ece6a"
theme[temp_mid]="#e0af68"
theme[temp_end]="#f7768e"
# CPU graph colors
theme[cpu_start]="#9ece6a"
theme[cpu_mid]="#e0af68"
theme[cpu_end]="#f7768e"
# Mem/Disk free meter
theme[free_start]="#9ece6a"
theme[free_mid]="#e0af68"
theme[free_end]="#f7768e"
# Mem/Disk cached meter
theme[cached_start]="#9ece6a"
theme[cached_mid]="#e0af68"
theme[cached_end]="#f7768e"
# Mem/Disk available meter
theme[available_start]="#9ece6a"
theme[available_mid]="#e0af68"
theme[available_end]="#f7768e"
# Mem/Disk used meter
theme[used_start]="#9ece6a"
theme[used_mid]="#e0af68"
theme[used_end]="#f7768e"
# Download graph colors
theme[download_start]="#9ece6a"
theme[download_mid]="#e0af68"
theme[download_end]="#f7768e"
# Upload graph colors
theme[upload_start]="#9ece6a"
theme[upload_mid]="#e0af68"

2
distrobox/build.sh Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/sh
docker build --tag localhost/fedora-distrobox:dev -f fedora-dev.dockerfile $(pwd)

1
distrobox/distrobox.conf Executable file
View File

@@ -0,0 +1 @@
container_image_default="localhost/fedora-distrobox:dev"

52
distrobox/fedora-dev.dockerfile Executable file
View File

@@ -0,0 +1,52 @@
FROM registry.fedoraproject.org/fedora-toolbox:latest
RUN <<EOF
# Enable RPM Fusion repo
dnf install -y https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
dnf install -y https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
# Install pip
dnf install -y pip3
# Utilities packages
dnf install -y jq
# Install C/C++ Development tools
# DNF5 "groupinstall" became "group install"
dnf -y group install development-tools
dnf install -y cmake make bear ccache
dnf install -y perl g++ gcc openssl-devel curl-devel cppcheck
dnf install -y libasan libtsan libubsan libasan-static libtsan-static libubsan-static
dnf install -y clang-format clangd clang-tidy
# Allow to run i686 binaries
dnf install -y glibc.i686 libstdc++.i686 zlib-ng-compat.i686
# AWS struff
dnf install -y https://s3.amazonaws.com/session-manager-downloads/plugin/latest/linux_64bit/session-manager-plugin.rpm
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
./aws/install
rm -rf aws/ awscliv2.zip
dnf upgrade -y
dnf clean all -y
# Use host applications
ln -s /usr/bin/distrobox-host-exec /usr/bin/eza
ln -s /usr/bin/distrobox-host-exec /usr/bin/fzf
ln -s /usr/bin/distrobox-host-exec /usr/bin/zoxide
ln -s /usr/bin/distrobox-host-exec /usr/bin/bat
ln -s /usr/bin/distrobox-host-exec /usr/bin/zsh
ln -s /usr/bin/distrobox-host-exec /usr/bin/fd-find
ln -s /usr/bin/distrobox-host-exec /usr/bin/ripgrep
ln -s /usr/bin/distrobox-host-exec /usr/local/bin/docker
ln -s /usr/bin/distrobox-host-exec /usr/local/bin/docker-compose
ln -s /usr/bin/distrobox-host-exec /usr/bin/nvim
ln -s /usr/bin/distrobox-host-exec /usr/bin/lazygit
ln -s /usr/bin/distrobox-host-exec /usr/bin/tailscale
ln -s /usr/bin/distrobox-host-exec /usr/bin/xdg-open
ln -s /usr/bin/distrobox-host-exec /usr/bin/kde-open
ln -s /usr/bin/distrobox-host-exec /usr/bin/dbus-daemon
EOF

101
eza/theme.yml Normal file
View File

@@ -0,0 +1,101 @@
colourful: true
filekinds:
normal: { foreground: "#c0caf5" }
directory: { foreground: "#7aa2f7" }
symlink: { foreground: "#2ac3de" }
pipe: { foreground: "#414868" }
block_device: { foreground: "#e0af68" }
char_device: { foreground: "#e0af68" }
socket: { foreground: "#414868" }
special: { foreground: "#9d7cd8" }
executable: { foreground: "#9ece6a" }
mount_point: { foreground: "#b4f9f8" }
perms:
user_read: { foreground: "#2ac3de" }
user_write: { foreground: "#bb9af7" }
user_execute_file: { foreground: "#9ece6a" }
user_execute_other: { foreground: "#9ece6a" }
group_read: { foreground: "#2ac3de" }
group_write: { foreground: "#ff9e64" }
group_execute: { foreground: "#9ece6a" }
other_read: { foreground: "#2ac3de" }
other_write: { foreground: "#ff007c" }
other_execute: { foreground: "#9ece6a" }
special_user_file: { foreground: "#ff007c" }
special_other: { foreground: "#db4b4b" }
attribute: { foreground: "#737aa2" }
size:
major: { foreground: "#2ac3de" }
minor: { foreground: "#9d7cd8" }
number_byte: { foreground: "#a9b1d6" }
number_kilo: { foreground: "#89ddff" }
number_mega: { foreground: "#2ac3de" }
number_giga: { foreground: "#ff9e64" }
number_huge: { foreground: "#ff007c" }
unit_byte: { foreground: "#a9b1d6" }
unit_kilo: { foreground: "#89ddff" }
unit_mega: { foreground: "#2ac3de" }
unit_giga: { foreground: "#ff9e64" }
unit_huge: { foreground: "#ff007c" }
users:
user_you: { foreground: "#3d59a1" }
user_root: { foreground: "#bb9af7" }
user_other: { foreground: "#2ac3de" }
group_yours: { foreground: "#89ddff" }
group_root: { foreground: "#bb9af7" }
group_other: { foreground: "#c0caf5" }
links:
normal: { foreground: "#89ddff" }
multi_link_file: { foreground: "#2ac3de" }
git:
new: { foreground: "#9ece6a" }
modified: { foreground: "#bb9af7" }
deleted: { foreground: "#db4b4b" }
renamed: { foreground: "#2ac3de" }
typechange: { foreground: "#2ac3de" }
ignored: { foreground: "#545c7e" }
conflicted: { foreground: "#ff9e64" }
git_repo:
branch_main: { foreground: "#737aa2" }
branch_other: { foreground: "#b4f9f8" }
git_clean: { foreground: "#292e42" }
git_dirty: { foreground: "#bb9af7" }
security_context:
colon: { foreground: "#545c7e" }
user: { foreground: "#737aa2" }
role: { foreground: "#2ac3de" }
typ: { foreground: "#3d59a1" }
range: { foreground: "#9d7cd8" }
file_type:
image: { foreground: "#89ddff" }
video: { foreground: "#b4f9f8" }
music: { foreground: "#73daca" }
lossless: { foreground: "#41a6b5" }
crypto: { foreground: "#db4b4b" }
document: { foreground: "#a9b1d6" }
compressed: { foreground: "#ff9e64" }
temp: { foreground: "#737aa2" }
compiled: { foreground: "#737aa2" }
build: { foreground: "#1abc9c" }
source: { foreground: "#bb9af7" }
punctuation: { foreground: "#292e42" }
date: { foreground: "#e0af68" }
inode: { foreground: "#737aa2" }
blocks: { foreground: "#737aa2" }
header: { foreground: "#a9b1d6" }
octal: { foreground: "#ff9e64" }
flags: { foreground: "#9d7cd8" }
symlink_path: { foreground: "#89ddff" }
control_char: { foreground: "#ff9e64" }
broken_symlink: { foreground: "#ff007c" }

27
lazygit/config.yml Normal file
View File

@@ -0,0 +1,27 @@
gui:
nerdFontsVersion: "3"
theme:
activeBorderColor:
- "#ff9e64"
- "bold"
inactiveBorderColor:
- "#27a1b9"
searchingActiveBorderColor:
- "#ff9e64"
- "bold"
optionsTextColor:
- "#7aa2f7"
selectedLineBgColor:
- "#283457"
cherryPickedCommitFgColor:
- "#7aa2f7"
cherryPickedCommitBgColor:
- "#bb9af7"
markedBaseCommitFgColor:
- "#7aa2f7"
markedBaseCommitBgColor:
- "#e0af68"
unstagedChangesColor:
- "#db4b4b"
defaultFgColor:
- "#c0caf5"