From 4a69fcde900f9a227906f255c728071303bf5b46 Mon Sep 17 00:00:00 2001 From: Suleyman Farajli Date: Sat, 28 Jun 2025 00:31:01 +0400 Subject: refactor(makefile): full, check and fullcheck targets removed --- Makefile | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/Makefile b/Makefile index 78396b3..9f97c53 100644 --- a/Makefile +++ b/Makefile @@ -28,9 +28,7 @@ DIRECTORIES = $(BINDIR) $(CONFDIR) $(FONTDIR) COPY = cp -r LINK = ln -sf -all: config $(DIRECTORIES) scripts - -full: all desktop +all: config $(DIRECTORIES) scripts desktop desktop: $(INSTALL_TARGETS) @@ -106,12 +104,6 @@ font1-install font2-install: $(COPY) $$(basename $< .tar.gz) $(FONTDIR) fc-cache -check: - @./dep.sh - -fullcheck: - @./dep.sh --optional - dist: clean mkdir -p slcf/ cp -R config distros scripts dep.sh Makefile README slcf/ @@ -121,6 +113,6 @@ dist: clean clean: rm -rf slcf/ slcf.tar.gz $(ARCHIVE) $(FONTS) $(SOFTWARE) -.PHONY: all arch-linux check clean config desktop directory dist \ - fonts full fullcheck git scripts server sync \ +.PHONY: all arch-linux clean config desktop directory dist \ + fonts git scripts server sync \ $(INSTALL_TARGETS) -- cgit v1.2.3 From 7e02dd2a01f81054e41b4cc9b4cd70fc02bd6a1e Mon Sep 17 00:00:00 2001 From: Suleyman Farajli Date: Sat, 28 Jun 2025 01:04:07 +0400 Subject: refactor: dep.sh removed --- dep.sh | 107 ----------------------------------------------------------------- 1 file changed, 107 deletions(-) delete mode 100755 dep.sh diff --git a/dep.sh b/dep.sh deleted file mode 100755 index 2e51e18..0000000 --- a/dep.sh +++ /dev/null @@ -1,107 +0,0 @@ -#!/bin/sh - -# Check if programs are installed on the system. -# Format for entries `program,alternative_program:output_message`, -# `alternative_program` and `message` are optional. -check() { - fail=0 - [ "${1}" = "-l" ] && { ISLIB=1; shift;} || ISLIB=0 - for entry in "${@}"; do - missing=0 - program_part=${entry%%:*} - program=${program_part%%,*} - alt_program=${program_part#*,} - msg=${entry#*:} - - [ "${msg}" = "${entry}" ] && msg="${program} is missing" - - if [ "${ISLIB}" -eq 1 ]; then - pkg-config --exists "${program}" || missing=1 - elif ! command -v "${program}" > /dev/null 2>&1 && - ! command -v "${alt_program}" > /dev/null 2>&1; then - missing=1 - fi - - [ "${missing}" -eq 1 ] && { echo "$msg" >&2; fail=1; } - done - return "${fail}" -} - -retval=0 - -# Optional Dependencies, skip QEMU and lualatex check -[ "${1}" = "--optional" ] && check \ - cmus \ - latex,pdflatex:"latex is missing" \ - neomutt,mutt \ - pamus \ - pandoc \ - shellcheck \ - ssh \ - trans:"translate shell is missing" \ - abook \ - acpi \ - cmus \ - dash \ - docker \ - ffmpeg \ - less \ - pass \ - python3 \ - rsync \ - sudo \ - tldr:"a tldr implementation is missing" \ - unclutter:"unclutter-xfixes is missing" \ - yt-dlp - -# Programs -check \ - Xorg \ - dunst \ - fzf \ - git \ - lf \ - mpv \ - notify-send:"libnotify is missing" \ - nsxiv,sxiv \ - nvim,vim \ - picom \ - qutebrowser \ - scrot \ - setxkbmap \ - startx:"xorg-xinit is missing" \ - xclip \ - zathura \ - zsh,bash - -# Script dependencies -check \ - brightnessctl \ - pulseaudio \ - xgamma \ - xinput \ - xset \ - xwallpaper - -# Build dependencies -check \ - cc:"c compiler is missing" \ - curl \ - fc-cache:"fontconfig is missing" \ - ld:"linker is missing" \ - make \ - tic:"ncurses is missing" \ - tar || retval=1 - -# Libraries -if check pkg-config; then - check -l \ - x11:"libX11 is missing" \ - xft:"libXft is missing " \ - xinerama:"libXinerama is missing" || retval=1 -else - echo "Warning: Skipping library check since 'pkg-config' is missing" >&2 - retval=1 -fi - -exit "${retval}" -- cgit v1.2.3 From c2b225417f506f69b7a3fc6200693afea724e48f Mon Sep 17 00:00:00 2001 From: Suleyman Farajli Date: Sat, 28 Jun 2025 01:04:26 +0400 Subject: docs: README.md updated --- README | 18 ---------------- README.md | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+), 18 deletions(-) delete mode 100644 README create mode 100644 README.md diff --git a/README b/README deleted file mode 100644 index c56825d..0000000 --- a/README +++ /dev/null @@ -1,18 +0,0 @@ -slcf - Suleyman's linux configuration files -=========================================== -My personal dotfiles. - -Installing slcf ---------------- -slcf only installs dotfiles to the home directory of the user running the Makefile -and doesn't affect other users. Therefore, it's recommended to create a new user -and run make as that user. If you like the setup then you can install it for your main user. - -Check the dependencies -> make depcheck - -Install config and scripts -> make config scripts - -Install everything -> make full diff --git a/README.md b/README.md new file mode 100644 index 0000000..f395bce --- /dev/null +++ b/README.md @@ -0,0 +1,71 @@ +# slcf - Suleyman's linux configuration files +My linux xorg configuration. + +slcf only installs configuration to the home directory of the user running the Makefile +and doesn't affect other users or make system-wide changes but it does overwrites the current configuration, +so, it's recommended to create a new user and run make as that user. +If you like the setup then you can install it for your main user. + +# Instlallation +1. Make sure to use Zsh or Bash as your interactive shell, have an internet connection, and install at least the build-time dependencies. + +2. Create a new user (set shell either to Zsh or Bash): +``` +useradd -m -s /bin/zsh +``` + +2. run +``` bash +make +``` +3. Log out, log back in, and run `startx` on the TTY. + +# Dependencies +## Build time dependencies +- curl +- fontconfig (fc-cache command) +- gcc +- ld +- make +- ncurses (tic command) +- pkg-config +- tar + +## Build time libraries +- libx11 +- libxft +- libxinerama + +## Program dependencies (optional but recommended) +- Xorg +- dunst +- fzf +- git +- lf +- mpv +- libnotify (notify-send command) +- nsxiv or sxiv +- nvim or vim +- picom +- qutebrowser or firefox +- scrot +- setxkbmap +- xorg-xinit +- xclip +- zathura +- zsh or bash + +## Script dependencies (optional but recommended) +- brightnessctl +- pulseaudio +- xgamma +- xinput +- xset +- xwallpaper + +# Notes +- Refer to [my dwm build man page](https://git.farajli.net/dwm.git/tree/dwm.1) for keybinds. + +# Troubleshooting +- brightnessctl can require privileged user to function, to solve it refer to [brightnessctl page](https://github.com/Hummer12007/brightnessctl#Permissions). +- pulseaudio sometimes doesn't start automatically to start it manually run `pulseaudio --start`. -- cgit v1.2.3 From 989bd3381746fc428c6d0e93be8d36bc54ab2799 Mon Sep 17 00:00:00 2001 From: Suleyman Farajli Date: Sat, 28 Jun 2025 01:07:13 +0400 Subject: docs(readme): typo --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index f395bce..0054767 100644 --- a/README.md +++ b/README.md @@ -14,11 +14,11 @@ If you like the setup then you can install it for your main user. useradd -m -s /bin/zsh ``` -2. run +3. run ``` bash make ``` -3. Log out, log back in, and run `startx` on the TTY. +4. Log out, log back in, and run `startx` on the TTY. # Dependencies ## Build time dependencies -- cgit v1.2.3 From 5621fb85dbccc48e98a2768d62ba2db593462f7e Mon Sep 17 00:00:00 2001 From: Suleyman Farajli Date: Sat, 28 Jun 2025 01:08:23 +0400 Subject: docs(readme): remove firefox from dependencies --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0054767..02a36db 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ make - nsxiv or sxiv - nvim or vim - picom -- qutebrowser or firefox +- qutebrowser - scrot - setxkbmap - xorg-xinit -- cgit v1.2.3 From d01aa72037643860458263fb8556943768bd268b Mon Sep 17 00:00:00 2001 From: Suleyman Farajli Date: Sat, 28 Jun 2025 01:37:15 +0400 Subject: doc(readme): add minimal version support for lf and nvim --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 02a36db..349db0b 100644 --- a/README.md +++ b/README.md @@ -41,11 +41,11 @@ make - dunst - fzf - git -- lf +- lf >= r31 - mpv - libnotify (notify-send command) - nsxiv or sxiv -- nvim or vim +- nvim >= 0.10.3 or vim - picom - qutebrowser - scrot -- cgit v1.2.3