rc

Change i3 workspaces and switch back to Firefox for installing

Author
Maarten 'Vngngdn' Vangeneugden
Date
Feb. 19, 2017, 4:26 p.m.
Hash
3531a270d1df31db42950726896aa2f9c76d51e5
Parent
5717b7fef5d1eeb8cdc9b4083ef15795c0a4d4ea
Modified files
.vimrc
i3/config
install.sh

.vimrc

1 addition and 1 deletion.

View changes Hide changes
1
1
" Some details on the contents:
2
2
" This file is my personal Vim configuration file. It contains my plugins, is
3
3
" divided to subject, and fattened with lovely comments.
4
4
" Please be advised that some (obvious) settings are left out, because I
5
5
" actually only use NeoVim. Again, this is my PERSONAL file, not a 'general
6
6
" public Vi(m) compatible' file.
7
7
8
8
" VUNDLE {{{
9
9
" Vundle is used to manage plugins for Vim. It needs additional setup, so it
10
10
" gets priority in my .vimrc.
11
11
12
12
filetype off                  " required
13
13
14
14
" set the runtime path to include Vundle and initialize
15
15
set rtp+=~/.config/nvim/bundle/Vundle.vim
16
16
call vundle#begin()
17
17
18
18
" let Vundle manage Vundle, required
19
19
Plugin 'VundleVim/Vundle.vim'
20
20
21
21
" YCM is a plugin that allows Vim semantic type checking and more programming mumbo jumbo. It is godlike and it must always be there for me.
22
22
Plugin 'Valloric/YouCompleteMe'
23
23
24
24
" Neomake replaces Syntastic from now on. It's an asynchronous linter, so yeah,
25
25
" pretty cool and must-have.
26
26
Plugin 'neomake/neomake'
27
27
28
28
" Airline provides a neat and feature rich status bar. Really nice to have.
29
29
Plugin 'bling/vim-airline'
30
30
31
31
" Bufferline will show buffers in the status bar. There's enough room anyway, so I fancied having it.
32
32
Plugin 'bling/vim-bufferline'
33
33
34
34
" A fuzzy searcher. Just CTRL+P and BAM all your files are visible.
35
35
Plugin 'kien/ctrlp.vim'
36
36
37
37
" This is a plugin for Git interaction. It places added and removed line icons
38
38
" in the 'gutter' (the bar next to the line numbering). It's better than
39
39
" Fugitive, because not only does it provide something you don't have with it
40
40
" (visible change lines), Fugitive offers functionality I rarely use (Git
41
41
" commands from Vim, which I ALWAYS do in the standard TUI), and it has
42
42
" provisions for NeoVim's asynchronous abilities.
43
43
Plugin 'airblade/vim-gitgutter'
44
44
45
45
" This provides snippets for redundant code. Praise the hackers man.
46
46
Plugin 'SirVer/ultisnips'
47
47
48
48
" In addition to UltiSnips, this plugin contains a prefetched repository of snippets. Must have, because I'm not planning on writing all of those by myself.
49
49
Plugin 'honza/vim-snippets'
50
50
51
51
" Rust syntax files, including Syntastic integration:
52
52
" To be removed when these are added to (Neo)Vim 'upstream'.
53
53
Plugin 'rust-lang/rust.vim'
54
54
55
55
" All of your Plugins must be added before the following line
56
56
call vundle#end()            " required
57
57
filetype plugin indent on    " required
58
58
" }}}
59
59
60
60
" YOUCOMPLETEME {{{
61
61
" YouCompleteMe is a godlike completer for Vim. As such, it is worthy of its own section.
62
62
" However, I'll be trying out Deoplete in the future, which might render it
63
63
" obsolete. Until further notice, I'm keeping this beauty.
64
64
"
65
65
" This setting will force YCM to close the preview buffer after selecting the completion.
66
66
let g:ycm_autoclose_preview_window_after_completion=1
67
67
68
68
" Sets the symbol used to indicate a syntax error:
69
69
let g:ycm_error_symbol = '>>'
70
70
71
71
" Sets the symbol used to indicate a warning:
72
72
let g:ycm_warning_symbol = 'i'
73
73
74
74
" Fills the identifier completion database with the language's keywords (e.g., when starting a new Java file, "class" will already be in the completion engine.
75
75
let g:ycm_seed_identifiers_with_syntax = 1
76
76
77
77
" This setting tells YCM what keys to use to accept completion. I removed <Down> as default, because I'm a silly coder and still use my arrow keys to navigate my source files. Hey, years of negligence for Vim leaves its marks. To think I ever thought Notepad++ was the best editor ever, the fuck...
78
78
let g:ycm_key_list_select_completion=['<TAB>']
79
79
80
80
" Same reason; I'm a dumb fuck and arrows are still hardwired in my brain.
81
81
let g:ycm_key_list_previous_completion=['<S-TAB>']
82
82
83
83
" Configures the pointer to the ycm_extra_conf.py file.
84
84
let g:ycm_global_ycm_extra_conf = '~/.ycm_extra_conf.py'
85
85
let g:ycm_confirm_extra_conf = 0 " Disables security confirmation before loading the conf.py file.
86
86
87
87
" Configuration necessary for sematic Rust completion
88
88
let g:ycm_rust_src_path = '/usr/src/rust/src'
89
89
" }}}
90
90
"
91
91
" NEOMAKE {{{
92
92
" This setting lets Neomake run on every file write:
93
93
autocmd! BufWritePost * Neomake
94
94
" }}}
95
95
"
96
96
" GITGUTTER {{{
97
97
" Disables all keymappings of GitGutter. I don't use them anyway.
98
98
let g:gitgutter_map_keys = 0
99
99
" Sets the 'refresh time' of when to update. Standard is 4 seconds.
100
100
set updatetime=250
101
101
" Asynchronous updating is default, so no setting is needed. Check the FAQ if
102
102
" necessary for more information.
103
103
" }}}
104
104
"
105
105
" AIRLINE {{{
106
106
" Airline is a great status bar plugin. Although it can behave quirky if Powerline is not on the scene. These scripts are dedicated to handle that behavior.
107
107
108
108
" These lines will load the powerline font for use in Airline.
109
109
if !exists('g:airline_symbols')
110
110
		let g:airline_symbols={}
111
111
	endif
112
112
let g:airline_symbols.space="\ua0"
113
113
let g:airline_powerline_fonts=1
114
114
115
115
" If there is only one tab opened, the tab bar will display the different buffers.
116
116
let g:airline#extensions#tabline#enabled=1
117
117
let g:bufferline_echo = 0 " Disables automatic echoing to the bufferline.
118
118
119
119
" }}}
120
120
121
121
" ULTISNIPS {{{
122
122
" As mentioned earlier, this provides snippets to stop redundant code.
123
123
124
124
" To begin, changing default TAB, because YCM already uses TAB.
125
125
	let g:UltiSnipsExpandTrigger="<c-l>"
126
126
	let g:UltiSnipsJumpForwardTrigger="<c-j>"
127
127
	let g:UltiSnipsJumpBackwardTrigger="<c-k>"
128
128
129
129
" }}} 
130
130
"
131
131
" COLOURS & COLORS {{{
132
132
133
133
colorscheme molokai " I like molokai. I've used badwolf, but I like popping colors.
134
134
135
135
" }}}
136
136
137
137
" SPACES & TABS {{{
138
138
139
139
" To everyone: STOP USING TABS. USE SPACES. Really. The amount of
140
140
" inconsistencies in source code can be reduced by a landslide if everyone uses
141
141
" spaces. Spaces look the same on EVERY editor, IDE, printed sheet, ... Spaces
142
142
" enjoy *universal consistency across every computer*. TABs are objectively less
143
143
" useful than spaces.
144
144
145
145
" The number of visual spaces per TAB hit.
146
146
set tabstop=4
147
147
148
148
" Amount of spaces inserted when TAB is hit during editing.
149
149
set softtabstop=4
150
150
151
151
" Makes TABs spaces when TAB is hit.
152
152
set expandtab
153
153
154
154
" Setting the amount of tabs to 4. The default is 8.
155
155
set shiftwidth=4
156
156
157
157
" This breaks lines after column 80.
158
158
set textwidth=80
159
159
" }}}
160
160
161
161
" UI CONFIGURATION {{{
162
162
163
163
" The next 2 settings enable relative line numbering, but retain the absolute
164
164
" line numbering for the line currently selected by the cursor.
165
165
set number
166
166
set relativenumber
167
167
set cursorline " Highlights the line currently selected by the cursor.
168
168
filetype indent on " Detects filetype on load, and loads the appropriate syntax file.
169
169
set showmatch " Highlights matching parenthesis on hover ("[, {, ...").
170
170
" scrolloff tells Vim how much lines above/below the cursor should always be
171
171
" visible. For example, if set to 5, there will always be 5 lines below and
172
172
" above the cursor, except when reaching the EOF.
173
173
set scrolloff=5
174
174
" Next setting disables outputting the current mode to the last line. I did so,
175
175
" because I use Airline, which already prints the current mode.
176
176
set noshowmode
177
177
178
178
" Shows a graphical menu when Vim suggests autocompletions in Ex mode
179
179
set wildmenu
180
180
181
181
" }}}
182
182
183
183
" SEARCHING {{{
184
184
185
185
" Problem with hlsearch is that it does not turn off the highlighting. So searching for vowels may quickly result in everything being highlighted. This is a mapping. It will remove highlighting when entering \<SPACE>
186
186
nnoremap <leader><space> :nohlsearch<CR>
187
187
" }}}
188
188
189
189
" FOLDING {{{
190
190
" In case I forget (I'm Belgian), folding is hiding code parts that belong together, like functions. Très important. Fuck azerty.
191
191
192
192
" This enables folding as is.
193
193
set foldenable
194
194
195
195
" This setting determines how many folds have to be opened. The number indicates the folding level. So 0 = every possible folding is folded. 99 = practically everything is open. I'm using 10, since I already have a problem with more than 3 nested loops.
196
196
set foldlevelstart=10
197
197
198
198
" This setting blocks overuse of nested foldings. I don't know how this will turn out in LISP/Scheme, but I'll be damned if this setting does more harm than good.
199
199
set foldnestmax=10
200
200
201
201
" This setting is commented by default, but included in case I start to grow hate for the current way Vim handles folding (za). It basically maps that command to spacebar. I may map it to z because then I only have to type one letter and RETURN, that's 33% of my time saved! =3
202
202
"nnoremap <space> za
203
203
204
204
" }}}
205
205
206
206
" MOVEMENT {{{
207
207
208
208
" Up and down moving in Vim using j/k defaults to "physical line movement", i.e.
209
209
" if a line is too long, it's wrapped to the next line ("virtual lines"), but
210
210
" the line counter still regards it as 1 line.
211
211
" The next setting makes it so that, if j/k is pressed once, it moves over
212
212
" virtual lines, but when repeated (say "5dd"), it moves over physical lines.
213
213
" Basically, the perfect tradeoff solution when using relative line numbering.
214
214
noremap <silent> <expr> j (v:count == 0 ? 'gj' : 'j')
215
215
noremap <silent> <expr> k (v:count == 0 ? 'gk' : 'k')
216
216
" Next 4 lines disable arrow keys.
217
217
noremap <Up> <nop>
218
218
noremap <Down> <nop>
219
219
noremap <Left> <nop>
220
220
noremap <Right> <nop>
221
221
" }}}
222
222
223
223
" BACKING UP {{{
224
224
225
225
" What these lines do, is move the backup files to the /tmp folder. This will keep my directories clean and neat.
226
226
set backup
227
227
set backupdir=~/.vim-tmp,~/.tmp,~/tmp,/var/tmp,/tmp
228
228
set backupskip=/tmp/*,/private/tmp/*
229
229
set directory=~/.vim-tmp,~/.tmp,~/tmp,/var/tmp,/tmp
230
230
set writebackup
231
231
" }}}
232
232
"
233
233
" NEOVIM {{{
234
234
" While it certainly is an improvement over 'vanilla' Vim, it does some things
235
235
" that keep me from using Vim as it's supposed to be; limited to no mouse usage.
236
236
" So I disable it. I'll enable it again when I've twisted my mind far enough to
237
237
" not touch my mouse again. (Not to mention some terminals don't support mouse
238
238
" control, so it's a bad habit nonetheless if you spend all your time on
239
239
" GNU/Linux distros)
240
240
set mouse=""
241
241
" }}}
242
242
"
243
243
" MACROS {{{
244
244
" Function that allows to quickly switch between relative and absolute numbering using
245
245
" CTRL+N(umber).
246
246
function! NumberToggle()
247
247
	if(&relativenumber == 1)
248
248
		set norelativenumber  " Necessary to disable the previous behavior.
249
249
		set number
250
250
	else
251
251
		set number " Retains absolute number on the current line.
252
252
		set relativenumber
253
253
	endif
254
254
endfunc
255
255
nnoremap <C-n> :call NumberToggle()<cr>
256
256
" }}}
257
257
258
258
" ENVIRONMENT INTEGRATION {{{
259
259
260
260
" Tmux is an awesome terminal multiplexer. However, with Vim, it may act tricky
261
261
" with cursor look. Next setting changes the block cursor to a vertical bar
262
262
" cursor, which I prefer.
263
263
if exists('$TMUX')
264
264
    let &t_SI = "\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=1\x7\<Esc>\\"
265
265
    let &t_EI = "\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=0\x7\<Esc>\\"
266
266
else
267
267
    let &t_SI = "\<Esc>]50;CursorShape=1\x7"
268
268
    let &t_EI = "\<Esc>]50;CursorShape=0\x7"
269
269
endif
270
270
271
271
" Makes Vim use the system's clipboard.
272
272
set clipboard^=unnamedplus,unnamed
273
-
+
273
274
274
" }}}
275
275
" OTHER IMPORTANT STUFF {{{
276
276
277
277
" I found this gem on Reddit. If I'm editing a file that's read only, and I started Vim without sudo, then this little line will do just that for me. All I have to do is use "w!!" when saving.
278
278
" Extensive explanation can also be found at https://stackoverflow.com/questions/2600783/how-does-the-vim-write-with-sudo-trick-work#7078429
279
279
cmap w!! w !sudo tee > /dev/null %
280
280
281
281
282
282
" This setting will allow me to switch to another buffer without need to save the current buffer.
283
283
set hidden
284
284
285
285
" I use NeoVim, but I may encounter a vanilla Vim user once in a while. Next
286
286
" setting disables Vi compatibility (which NeoVim does by default).
287
287
set nocompatible  
288
288
289
289
" Same reasoning. Enables syntax processing in Vim.
290
290
syntax enable
291
291
" }}}
292
292
293
293
" Because Vim can fold vimrc files with the right syntax, These lines will tell Vim how to handle that.
294
294
set modelines=2 "This tells Vim that the last 2 lines of this file should only apply to this file.
295
295
" So as you can see, the last 2 lines get a special vim:-prefix, so Vim knows for sure this is what's important.
296
296
" To wrap a new section, look at the other sections, and copy that syntax.
297
297
" vim:foldmethod=marker
298
298
" vim:foldlevel=0
299
299

i3/config

20 additions and 20 deletions.

View changes Hide changes
1
1
#
2
2
# Copy this to ~/.config/sway/config and edit it to your liking.
3
3
#
4
4
# Read `man 5 sway` for a complete reference.
5
5
6
6
### Variables
7
7
#
8
8
# Logo key. Use Mod1 for Alt.
9
9
set $mod Mod4
10
10
# Home row direction keys, like vim
11
11
set $left h
12
12
set $down j
13
13
set $up k
14
14
set $right l
15
15
# Your preferred terminal emulator
16
16
set $term termite
17
17
# Your preferred application launcher
18
18
set $menu rofi -show run 
19
19
20
20
21
21
### Output configuration
22
22
#
23
23
# Default wallpaper (more resolutions are available in /usr/share/sway/)
24
24
#output * bg ~/.wallpapers/Abstract\ with\ lime\ green\ and\ blue\ accents.jpg fill
25
25
#
26
26
# Example configuration:
27
27
#
28
28
#   output HDMI-A-1 resolution 1920x1080 position 1920,0
29
29
#
30
30
# You can get the names of your outputs by running: swaymsg -t get_outputs
31
31
32
32
### Input configuration
33
33
#
34
34
# Example configuration:
35
35
#
36
36
#   input "2:14:SynPS/2_Synaptics_TouchPad" {
37
37
#       dwt enabled
38
38
#       tap enabled
39
39
#       natural_scroll enabled
40
40
#       middle_emulation enabled
41
41
#   }
42
42
#
43
43
# You can get the names of your inputs by running: swaymsg -t get_inputs
44
44
# The escape symbol "\" has to be removed.
45
45
# Read `man 5 sway-input` for more information about this section.
46
46
47
47
### Key bindings
48
48
#
49
49
# Basics:
50
50
#
51
51
    # start a terminal
52
52
    bindsym $mod+Return exec $term
53
53
54
54
    # kill focused window
55
55
    bindsym $mod+Shift+q kill
56
56
57
57
    # start your launcher
58
58
    bindsym $mod+d exec $menu
59
59
60
60
    # Mouse+$mod to drag floating windows
61
61
	floating_modifier $mod
62
62
63
63
    # reload the configuration file
64
64
    bindsym $mod+Shift+c reload
65
65
    # restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
66
66
    bindsym $mod+Shift+r restart
67
67
# exit i3 (logs you out of your X session)
68
68
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
69
69
#
70
70
# Moving around:
71
71
#
72
72
    # Move your focus around
73
73
    bindsym $mod+$left focus left
74
74
    bindsym $mod+$down focus down
75
75
    bindsym $mod+$up focus up
76
76
    bindsym $mod+$right focus right
77
77
    # or use $mod+[up|down|left|right]
78
78
    bindsym $mod+Left focus left
79
79
    bindsym $mod+Down focus down
80
80
    bindsym $mod+Up focus up
81
81
    bindsym $mod+Right focus right
82
82
83
83
    # _move_ the focused window with the same, but add Shift
84
84
    bindsym $mod+Shift+$left move left
85
85
    bindsym $mod+Shift+$down move down
86
86
    bindsym $mod+Shift+$up move up
87
87
    bindsym $mod+Shift+$right move right
88
88
    # ditto, with arrow keys
89
89
    bindsym $mod+Shift+Left move left
90
90
    bindsym $mod+Shift+Down move down
91
91
    bindsym $mod+Shift+Up move up
92
92
    bindsym $mod+Shift+Right move right
93
93
#
94
94
# Workspaces:
95
95
#
96
96
    # switch to workspace
97
97
    bindsym $mod+1 workspace 1: COMPN
98
-
    bindsym $mod+2 workspace 2: Philosophy
99
-
    bindsym $mod+3 workspace 3: Physics
100
-
    bindsym $mod+4 workspace 4: OOP
101
-
    bindsym $mod+5 workspace 5: Math
102
-
    bindsym $mod+6 workspace 6: Leisure
103
-
    bindsym $mod+7 workspace 7
104
-
    bindsym $mod+8 workspace 8
105
-
    bindsym $mod+9 workspace 9
106
-
    bindsym $mod+0 workspace 10
107
-
    # move focused container to workspace
+
98
    bindsym $mod+2 workspace 2
+
99
    bindsym $mod+3 workspace 3
+
100
    bindsym $mod+4 workspace 4
+
101
    bindsym $mod+5 workspace 5
+
102
    bindsym $mod+6 workspace 6: Wiskunde
+
103
    bindsym $mod+7 workspace 7: Computer Graphics
+
104
    bindsym $mod+8 workspace 8: Software Engineering
+
105
    bindsym $mod+9 workspace 9: AI / Studium Generale
+
106
    bindsym $mod+0 workspace 10: Beleidsinformatica
+
107
    # move focused container to workspace
108
108
    bindsym $mod+Shift+1 move container to workspace 1: COMPN
109
-
    bindsym $mod+Shift+2 move container to workspace 2: Philosophy
110
-
    bindsym $mod+Shift+3 move container to workspace 3: Physics
111
-
    bindsym $mod+Shift+4 move container to workspace 4: OOP
112
-
    bindsym $mod+Shift+5 move container to workspace 5: Math
113
-
    bindsym $mod+Shift+6 move container to workspace 6: Leisure
114
-
    bindsym $mod+Shift+7 move container to workspace 7
115
-
    bindsym $mod+Shift+8 move container to workspace 8
116
-
    bindsym $mod+Shift+9 move container to workspace 9
117
-
    bindsym $mod+Shift+0 move container to workspace 10
118
-
    # Note: workspaces can have any name you want, not just numbers.
+
109
    bindsym $mod+Shift+2 move container to workspace 2
+
110
    bindsym $mod+Shift+3 move container to workspace 3
+
111
    bindsym $mod+Shift+4 move container to workspace 4
+
112
    bindsym $mod+Shift+5 move container to workspace 5
+
113
    bindsym $mod+Shift+6 move container to workspace 6: Wiskunde
+
114
    bindsym $mod+Shift+7 move container to workspace 7: Computer Graphics
+
115
    bindsym $mod+Shift+8 move container to workspace 8: Software Engineering
+
116
    bindsym $mod+Shift+9 move container to workspace 9: AI / Studium Generale
+
117
    bindsym $mod+Shift+0 move container to workspace 10: Beleidsinformatica
+
118
    # Note: workspaces can have any name you want, not just numbers.
119
119
    # We just use 1-10 as the default.
120
120
#
121
121
# Layout stuff:
122
122
#
123
123
    # You can "split" the current object of your focus with
124
124
    # $mod+b or $mod+v, for horizontal and vertical splits
125
125
    # respectively.
126
126
    bindsym $mod+b split h
127
127
    bindsym $mod+v split v
128
128
129
129
    # Switch the current container between different layout styles
130
130
    bindsym $mod+s layout stacking
131
131
    bindsym $mod+w layout tabbed
132
132
    bindsym $mod+e layout toggle split
133
133
134
134
    # Make the current focus fullscreen
135
135
    bindsym $mod+f fullscreen toggle
136
136
137
137
    # Toggle the current focus between tiling and floating mode
138
138
    bindsym $mod+Shift+space floating toggle
139
139
140
140
    # Swap focus between the tiling area and the floating area
141
141
    bindsym $mod+space focus mode_toggle
142
142
143
143
    # move focus to the parent container
144
144
    bindsym $mod+a focus parent
145
145
#
146
146
# Scratchpad:
147
147
#
148
148
    # Sway has a "scratchpad", which is a bag of holding for windows.
149
149
    # You can send windows there and get them back later.
150
150
151
151
    # Move the currently focused window to the scratchpad
152
152
    bindsym $mod+Shift+minus move scratchpad
153
153
154
154
    # Show the next scratchpad window or hide the focused scratchpad window.
155
155
    # If there are multiple scratchpad windows, this command cycles through them.
156
156
    bindsym $mod+minus scratchpad show
157
157
#
158
158
# Resizing containers:
159
159
#
160
160
mode "resize" {
161
161
    # left will shrink the containers width
162
162
    # right will grow the containers width
163
163
    # up will shrink the containers height
164
164
    # down will grow the containers height
165
165
    bindsym $left resize shrink width 10 px or 10 ppt
166
166
    bindsym $down resize grow height 10 px or 10 ppt
167
167
    bindsym $up resize shrink height 10 px or 10 ppt
168
168
    bindsym $right resize grow width 10 px or 10 ppt
169
169
170
170
    # ditto, with arrow keys
171
171
    bindsym Left resize shrink width 10 px or 10 ppt
172
172
    bindsym Down resize grow height 10 px or 10 ppt
173
173
    bindsym Up resize shrink height 10 px or 10 ppt
174
174
    bindsym Right resize grow width 10 px or 10 ppt
175
175
176
176
    # return to default mode
177
177
    bindsym Return mode "default"
178
178
    bindsym Escape mode "default"
179
179
}
180
180
bindsym $mod+r mode "resize"
181
181
182
182
exec_always feh --bg-scale feh --bg-scale ~/.wallpapers/Abstract\ with\ lime\ green\ and\ blue\ accents.jpg  # Background using Feh
183
183
184
184
bar {
185
185
	status_command i3blocks
186
186
}
187
187
188
188
# Makes my FN buttons work properly.
189
189
bindsym XF86AudioRaiseVolume exec amixer -q set Master 5%+ unmute
190
190
bindsym XF86AudioLowerVolume exec amixer -q set Master 5%- unmute
191
191
bindsym XF86AudioToggle exec pactl set-sink-mute $(pacmd list-sinks |awk '/* index:/{print $3}') toggle
192
192
193
193
bindsym XF86MonBrightnessDown exec light -U 5
194
194
bindsym XF86MonBrightnessUp exec light -A 5
195
195
bindsym Print exec scrot  # Printscreen button
196
196
bindsym $mod+Print exec scrot -s  # scrot, but click for window, or drag for rectangle screenshot.

install.sh

6 additions and 2 deletions.

View changes Hide changes
1
1
# particulary Arch, because that's the best GNU/Linux distro =P
2
2
3
3
# The next command will install the software that I'm bound to use on my PC.
4
4
sudo pacman -S --noconfirm neovim base-devel rust vlc openssh
5
5
# Don't forget to install the keys for SSH!
6
6
7
7
# Installing shell data:
8
8
sudo pacman -S --noconfirm zsh zsh-completions zsh-grml-config
9
9
10
10
# Installing the Noto fonts:
11
11
sudo pacman -S --noconfirm noto-fonts noto-fonts-emoji
12
12
# Firefox:
13
13
#sudo pacman -S --noconfirm firefox
14
-
# Uncomment next line for Dutch firefox translations.
+
14
# Uncomment next line for Dutch firefox translations.
15
15
#sudo pacman -S --noconfirm firefox-i18n-nl
16
16
# I've ditched Firefox in favor of Chromium, because Chromium doesn't vomit when confronted with XWayland.
17
17
sudo pacman -S --noconfirm chromium
18
-
+
18
19
19
# Sound handling (Don't forget to unmute using alsamixer!)
20
20
sudo pacman -S --noconfirm alsa-utils pulseaudio pulseaudio-jack pulseaudio-bluetooth
21
21
22
22
# To easily make use of the AUR, I'll first install Pacaur, which needs some
23
23
# special treatment up front:
24
24
cd ~/Downloads
25
25
wget https://aur.archlinux.org/cgit/aur.git/snapshot/pacaur.tar.gz
26
26
tar -x -f pacaur.tar.gz
27
27
cd pacaur
28
28
makepkg -sri --noconfirm
29
29
cd ..
30
30
rm -r pacaur
31
31
cd ~
32
32
33
33
# Making a directory in which to store all repositories. It's basically a
34
34
# repository for repositories =3
35
35
mkdir Repositories
36
36
37
37
# Making some common aliases for some pieces of software
38
38
alias vi nvim
39
39
alias vim nvim
40
40
41
41
# Some Python dependencies that need to be installed
42
42
pip install paramiko
43
43
44
44
# Collecting software from the AUR:
45
45
pacaur -S vim-youcompleteme-git
46
46
pacaur -S clojure leiningen  # Clojure's 'project manager' thingy + Clojure
47
47
# Next line installs all required software for the desktop environment.
48
48
# Yabar-git instead of Yabar, because that has a battery block.
49
49
pacaur -S i3-gaps feh i3blocks rofi
50
50
# i3blocks optional dependencies:
51
51
pacaur -S acpi bc lm_sensors playerctl sysstat
52
52
53
53
# Now, assuming I'm using the my standard setup for Yabar, I need the JSON
54
54
# parser to correctly output my workspace name:
55
55
pacaur -S --noconfirm jq
56
56
57
57
# Uncomment when there is a driver for the Validity VFS495 138a:003f figerprint
58
58
# reader, and still working on that gorgeous laptop:
59
59
#pacaur -S --noconfirm fprintd
60
60
61
61
pacaur -S --noconfirm neomutt urlview  # Least sucky mail client
62
62
63
63
# Installing CRON job services
64
64
pacaur -S --noconfirm cronie
65
65
# TODO Add a line that makes a symbolic link to my custom Cron file
66
66
sudo systemctl enable cronie.service
67
67
+
68
pacaur -S --noconfirm irssi  # IRC client
+
69
pacaur -S --noconfirm ranger w3m  # File manager. w3m for image previews
+
70
# TODO link ranger/rc.conf and scope.sh symbolically to .config/ranger
+
71