summaryrefslogtreecommitdiff
path: root/README.md
blob: 2b216a3bf8e02aeb83323b3a2c1aa8b0c7b473a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# slcf - Suleyman's linux configuration files
My linux xorg configuration.

SLCF only installs configuration to the home directory of the user running the install script and does not affect other users or make system-wide changes. However, it **does** overwrite the current configuration, so it’s recommended to create a new user and run the install script as that user. If you like the setup, then you can install it for your main user.

# Screenshots
![desktop screenshot](./screenshot.png)

# Installation 
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 <user> 
```

3. configure `install` script

4. run 
``` bash
./install > /dev/null
```
4. Log out, log back in, and run `startx` on the TTY.

# Dependencies 
If GUI is disabled in the install file then build dependencies are not needed. Both program and script dependencies are optional but recommended.

## Build time dependencies
- curl
- fontconfig (fc-cache command)
- gcc (or most other c compilers)
- ld
- make
- ncurses (tic command)
- pkg-config
- tar

## Build time libraries 
- libx11  
- libxft  
- libxinerama  
- libxext  
- libxrandr  
- libxcrypt 
- imlib2  

note: Some distros require installing `-devel` or `-dev` variants
(e.g. libX11-devel, libx11-dev) for headers and build files. 

## Program dependencies
- Xorg                               
- fzf 
- git                                
- lf >= r31                                 
- mpv                                
- nsxiv or sxiv                         
- nvim >= 0.10.3 or vim                           
- picom                              
- firefox
- scrot                              
- setxkbmap                          
- xorg-xinit
- xclip                              
- zathura                            
- zsh or bash

## Script dependencies 
- 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
- slock gives OOM error, to fix it just run:
    ``` bash
    sudo chown root:root $(which slock)
	sudo chmod u+s $(which slock) 
    ```
- 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`.