neovim config in nix file

This commit is contained in:
2025-02-12 12:55:14 +01:00
parent 80a448c500
commit ac0c894ba2
17 changed files with 65 additions and 1350 deletions

View File

@ -1,2 +0,0 @@
#! /bin/sh

View File

@ -1,246 +0,0 @@
# This is an example Hyprland config file.
# Refer to the wiki for more information.
# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/
# Please note not all available settings / options are set here.
# For a full list, see the wiki
# You can split this configuration into multiple files
# Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf
################
### MONITORS ###
################
# See https://wiki.hyprland.org/Configuring/Monitors/
monitor=eDP-1, 1920x1080@120, 0x0, 1
monitor=HDMI-A-1, 1920x1080@60, auto, auto
exec-once = swaybg -i ~/.config/nitrogen/wallpaper.png&
exec-once = (sleep 2;activate-linux -c 1-1-1-0.7 -V 50 -H 50 -d)&
exec-once = waybar&
exec-once = alacritty&
###################
### MY PROGRAMS ###
###################
# See https://wiki.hyprland.org/Configuring/Keywords/
# Set programs that you use
$terminal = alacritty
$menu = rofi -show drun -show-icons
#############################
### ENVIRONMENT VARIABLES ###
#############################
# See https://wiki.hyprland.org/Configuring/Environment-variables/
env = HYPRCURSOR_SIZE,17
env = HYPRCURSOR_THEME,bibata-modern-classic
#####################
### LOOK AND FEEL ###
#####################
# Refer to https://wiki.hyprland.org/Configuring/Variables/
# https://wiki.hyprland.org/Configuring/Variables/#general
general {
gaps_in = 3
gaps_out = 7
border_size = 2
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
# Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = false
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false
layout = dwindle
}
# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
rounding = 10
# Change transparency of focused and unfocused windows
active_opacity = 1.0
inactive_opacity = 1.0
drop_shadow = true
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
enabled = true
size = 3
passes = 1
vibrancy = 0.1696
}
}
# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
enabled = true
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = easeInOut, 0.77, 0, 0.175, 1
bezier = easeOut, 0.24, 0.66, 0.04, 1
animation = windows, 1, 2, easeInOut
animation = windowsIn, 1, 2, easeInOut, slide
animation = windowsOut, 1, 2, easeInOut, slide
animation = fade, 1, 2, easeInOut
animation = workspaces, 1, 2, easeOut
}
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this
}
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
new_status = master
}
# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
force_default_wallpaper = 1
disable_hyprland_logo = true
}
#############
### INPUT ###
#############
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
kb_layout = fr
kb_variant = us
follow_mouse = 2
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
touchpad {
natural_scroll = false
}
}
# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
workspace_swipe = false
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
name = epic-mouse-v1
sensitivity = -0.5
}
###################
### KEYBINDINGS ###
###################
# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier
# Example binds
bind = $mainMod, Return, exec, $terminal
bind = CTRL_ALT, Q, killactive,
bind = SUPER_ALT, Q, exit,
bind = $mainMod, S, togglefloating,
bind = $mainMod, D, exec, $menu
bind = $mainMod, M, fullscreen
# Move focus
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, movefocus, d
#swap windows
bind = $mainMod SHIFT, h, swapwindow, l
bind = $mainMod SHIFT, l, swapwindow, r
bind = $mainMod SHIFT, k, swapwindow, u
bind = $mainMod SHIFT, j, swapwindow, d
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Laptop multimedia keys for volume and LCD brightness
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
# Requires playerctl
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous
# lock
bindl = , XF86Launch1, exec, hyprlock
##############################
### WINDOWS AND WORKSPACES ###
##############################
# Ignore maximize requests from apps. You'll probably like this.
windowrulev2 = suppressevent maximize, class:.*
# Fix some dragging issues with XWayland
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0

View File

@ -1,23 +0,0 @@
general{
no_fade_out = true
ignore_empty_input = false
}
background {
monitor =
path = ~/.config/nitrogen/wallpaper.png
blur_passes = 1
}
input-field {
monitor =
size=300, 50
dot_size = 0.2
dots_fade_time = 100
inner_color = rgb(139,89,100)
outer_color = rgb(139,89,100)
outline_thickness = 1
fail_transition = 300
fail_text = learn to write, idiot
}

View File

@ -1,9 +0,0 @@
[xin_0]
file=/home/tom/.config/nitrogen/thumb-1920-814854.png
mode=0
bgcolor=#000000
[xin_1]
file=/home/tom/.config/nitrogen/thumb-1920-814854.png
mode=0
bgcolor=#000000

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 MiB

View File

@ -1,35 +0,0 @@
source ~/.vimrc
let mapleader=";"
autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
\| PlugInstall --sync
\| endif
call plug#begin('~/.config/nvim/plugged')
Plug 'bling/vim-bufferline'
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-telescope/telescope.nvim'
Plug 'andweeb/presence.nvim'
Plug 'neovim/nvim-lspconfig'
Plug 'bluz71/vim-nightfly-colors'
Plug 'catppuccin/nvim', { 'as': 'catppuccin' }
Plug 'tikhomirov/vim-glsl'
call plug#end()
colorscheme catppuccin-mocha
"lsp
lua require'lspconfig'.clangd.setup{}
lua require'lspconfig'.nixd.setup{}
lua require'lspconfig'.glsl_analyzer.setup{}
set signcolumn=no
let g:user42 = 'tomoron'
let g:mail42 = 'tomoron@student.42angouleme.fr'
nnoremap <leader>ff <cmd>Telescope find_files<cr>
nnoremap <leader>fg <cmd>Telescope live_grep<cr>
nnoremap <leader>fb <cmd>Telescope buffers<cr>
nnoremap <leader>fh <cmd>Telescope help_tags<cr>

View File

@ -1,152 +0,0 @@
[module/fans]
type = custom/script
exec-if = test "$(cat /sys/class/hwmon/hwmon6/fan1_input)" -gt 0 -o "$(cat /sys/class/hwmon/hwmon6/fan2_input)" -gt 0
exec = echo " " "$(cat /sys/class/hwmon/hwmon6/fan1_input).$(cat /sys/class/hwmon/hwmon6/fan2_input) |"
interval = 1
interval-if = 1
[module/dgpu]
type = custom/script
exec-if = test "$(supergfxctl -g)" = "Hybrid"
exec = echo " on |"
format-padding=1
interval-if = 10
interval = 100
[module/memory]
type = internal/memory
interval = 1
format = <label>
format-prefix =
format-prefix-font = 2
format-padding = 1
label = " %percentage_used%%"
[module/filesystem]
type = internal/fs
mount-0 = /
interval = 30
fixed-values = true
format-mounted = <label-mounted>
format-mounted-prefix = 󰋊
format-mounted-prefix-font = 2
format-mounted-padding = 2
label-mounted = " %percentage_used%%"
label-unmounted = " %mountpoint%: not mounted"
[module/cpu]
type = internal/cpu
interval = 1
format = <label>
format-prefix = " "
format-prefix-font = 2
format-foreground = ${color.foreground}
format-padding = 1
label = " %percentage%%"
[module/temperature]
type = internal/temperature
interval = 1
thermal-zone = 0
hwmon-path = /sys/devices/virtual/thermal/thermal_zone0/temp
warn-temperature = 80
units = true
format = "<ramp> <label>"
format-padding = 1
format-warn = "<ramp> <label-warn>"
format-warn-foreground = #FF0000
format-warn-padding = 1
label = %temperature-c%
label-warn = "%temperature-c%"
ramp-0 = ""
ramp-1 = ""
ramp-2 = ""
ramp-3 = ""
ramp-4 = ""
ramp-font = 2
[module/sep]
type = custom/text
content = "|"
content-foreground = #FFFFFF
[module/space]
type = custom/text
content = " "
content-padding=1
[module/network]
type = internal/network
interface = wlp2s0
interval = 1.0
accumulate-stats = true
unknown-as-up = true
format-connected = "<ramp-signal><label-connected>"
format-connected-prefix = ""
format-connected-prefix-font = 2
format-connected-padding = 1
format-disconnected = <label-disconnected>
format-disconnected-prefix = "󱚼 "
format-disconnected-prefix-font = 2
format-disconnected-padding = 1
label-connected = "%{A1:networkmanager_dmenu &:} %essid%%{A}"
label-disconnected = "%{A1:networkmanager_dmenu &:}%{A}"
ramp-signal-0 = "󰤟 "
ramp-signal-1 = "󰤢 "
ramp-signal-2 = "󰤨 "
[module/date]
type = internal/date
interval = 1.0
time = " %H:%M:%S"
time-alt = " %a, %d %b %Y"
format = <label>
format-prefix = " "
format-prefix-font = 2
format-foreground = ${color.foreground}
format-padding = 1
label = %time%
[module/workspaces]
type = internal/xworkspaces
pin-workspaces = false
enable-click = true
enable-scroll = false
icon-0 = 1;1
icon-1 = 2;2
icon-2 = 3;3
icon-3 = 4;4
icon-4 = 5;5
icon-5 = A;A
icon-6 = B;B
icon-default = 0
format = <label-state>
format-font = 3
format-background = #0000FF
format-foreground = #FF0000
label-monitor = %name%
label-active = %icon%
label-active-background = #44ffffff
label-active-foreground = #00FF00
label-occupied = %icon%
label-occupied-background = #00FFFFFF
label-occupied-foreground = #00FF00
label-urgent = %icon%
label-urgent-background = ${color.background}
label-urgent-foreground = #CC6666
label-empty = %icon%
label-empty-background = #0000FFFF
label-empty-foreground = #FFFFFF
label-active-padding = 1.85
label-urgent-padding = 1.85
label-occupied-padding = 1.85
label-empty-padding = 1.85
[module/mpris]
type = custom/script
exec-if = playerctl metadata
exec = playerctl metadata --format '{{ playerName }}:{{ artist }} - {{title}}'
interval = 1
interval-if = 1

View File

@ -1,233 +0,0 @@
# **************************************************************************** #
# #
# ::: :::::::: #
# config-small.ini :+: :+: :+: #
# +:+ +:+ +:+ #
# By: tomoron <tomoron@student.42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/08/28 20:38:59 by tomoron #+# #+# #
# Updated: 2025/02/10 02:50:15 by tomoron ### ########.fr #
# #
# **************************************************************************** #
[global/wm]
margin-bottom = 0
margin-top = 0
[color]
background = #AA111111
foreground = #CCCCCC
foreground-alt = #FFFFFF
alpha = #00000000
shade1 = #AAFFFFFF
shade2 = #AAFF0000
[module/fans]
type = custom/script
exec-if = test "$(cat /sys/class/hwmon/hwmon6/fan1_input)" -gt 0 -o "$(cat /sys/class/hwmon/hwmon6/fan2_input)" -gt 0
exec = echo " " "$(cat /sys/class/hwmon/hwmon6/fan1_input).$(cat /sys/class/hwmon/hwmon6/fan2_input) |"
interval = 1
interval-if = 1
[module/dgpu]
type = custom/script
exec-if = test "$(supergfxctl -g)" = "Hybrid"
exec = echo " on |"
format-padding=1
interval-if = 10
interval = 100
[module/memory]
type = internal/memory
interval = 1
format = <label>
format-prefix =
format-prefix-font = 2
format-padding = 1
label = " %percentage_used%%"
[module/filesystem]
type = internal/fs
mount-0 = /
interval = 30
fixed-values = true
format-mounted = <label-mounted>
format-mounted-prefix = 󰋊
format-mounted-prefix-font = 2
format-mounted-padding = 2
label-mounted = " %percentage_used%%"
label-unmounted = " %mountpoint%: not mounted"
[module/cpu]
type = internal/cpu
interval = 1
format = <label>
format-prefix = " "
format-prefix-font = 2
format-foreground = ${color.foreground}
format-padding = 1
label = " %percentage%%"
[module/temperature]
type = internal/temperature
interval = 1
thermal-zone = 0
hwmon-path = /sys/devices/virtual/thermal/thermal_zone0/temp
warn-temperature = 80
units = true
format = "<ramp> <label>"
format-padding = 1
format-warn = "<ramp> <label-warn>"
format-warn-foreground = #FF0000
format-warn-padding = 1
label = %temperature-c%
label-warn = "%temperature-c%"
ramp-0 = ""
ramp-1 = ""
ramp-2 = ""
ramp-3 = ""
ramp-4 = ""
ramp-font = 2
[module/sep]
type = custom/text
content = "|"
content-foreground = #FFFFFF
[module/space]
type = custom/text
content = " "
content-padding=1
[module/network]
type = internal/network
interface = wlp2s0
interval = 1.0
accumulate-stats = true
unknown-as-up = true
format-connected = "<ramp-signal><label-connected>"
format-connected-prefix = ""
format-connected-prefix-font = 2
format-connected-padding = 1
format-disconnected = <label-disconnected>
format-disconnected-prefix = "󱚼 "
format-disconnected-prefix-font = 2
format-disconnected-padding = 1
label-connected = "%{A1:networkmanager_dmenu &:} %essid%%{A}"
label-disconnected = "%{A1:networkmanager_dmenu &:}%{A}"
ramp-signal-0 = "󰤟 "
ramp-signal-1 = "󰤢 "
ramp-signal-2 = "󰤨 "
[module/date]
type = internal/date
interval = 1.0
time = " %H:%M:%S"
time-alt = " %a, %d %b %Y"
format = <label>
format-prefix = " "
format-prefix-font = 2
format-foreground = ${color.foreground}
format-padding = 1
label = %time%
[module/workspaces]
type = internal/xworkspaces
pin-workspaces = false
enable-click = true
enable-scroll = false
icon-0 = 1;1
icon-1 = 2;2
icon-2 = 3;3
icon-3 = 4;4
icon-4 = 5;5
icon-5 = A;A
icon-6 = B;B
icon-default = 0
format = <label-state>
format-font = 3
format-background = #0000FF
format-foreground = #FF0000
label-monitor = %name%
label-active = %icon%
label-active-background = #44ffffff
label-active-foreground = #00FF00
label-occupied = %icon%
label-occupied-background = #00FFFFFF
label-occupied-foreground = #00FF00
label-urgent = %icon%
label-urgent-background = ${color.background}
label-urgent-foreground = #CC6666
label-empty = %icon%
label-empty-background = #0000FFFF
label-empty-foreground = #FFFFFF
label-active-padding = 1.85
label-urgent-padding = 1.85
label-occupied-padding = 1.85
label-empty-padding = 1.85
[module/mpris]
type = custom/script
exec-if = playerctl metadata
exec = playerctl metadata --format '{{ playerName }}:{{ artist }} - {{title}}'
interval = 1
interval-if = 1
include-file = ~/.config/polybar/modules.ini
include-file = ~/.config/polybar/user_modules.ini
[bar/main]
monitor = ${env:MONITOR:}
monitor-fallback =
monitor-strict = false
override-redirect = false
bottom = false
fixed-center = true
width = 100%
height = 40
offset-x = 0
offset-y = 0
background = ${color.alpha}
foreground = ${color.foreground}
radius-top = 0.0
radius-bottom = 0.0
underline-size = 2
underline-color = ${color.foreground}
border-size = 0
border-color = ${color.background}
padding = 0
module-margin-left = 0
module-margin-right = 0
font-0 = "Iosevka Nerd Font:style=Bold:pixelsize=13;4"
font-1 = "Iosevka Nerd Font:style=Bold:pixelsize=15;4"
font-2 = "Iosevka Nerd Font:style=Bold:pixelsize=15;4"
modules-left = workspaces space mpris
modules-center =
modules-right = fans dgpu memory sep filesystem sep cpu sep temperature sep polybar sep network sep date
separator =
dim-value = 1.0
tray-position = none
tray-detached = false
tray-maxsize = 16
tray-background = ${color.background}
tray-offset-x = 0
tray-offset-y = 0
tray-padding = 0
tray-scale = 1.0
enable-ipc = true
[settings]
throttle-output = 5
throttle-output-for = 10
screenchange-reload = false
compositing-background = source
compositing-foreground = over
compositing-overline = over
compositing-underline = over
compositing-border = over
pseudo-transparency = false

View File

@ -1,297 +0,0 @@
# **************************************************************************** #
# #
# ::: :::::::: #
# config.ini :+: :+: :+: #
# +:+ +:+ +:+ #
# By: tomoron <tomoron@student.42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/08/28 20:38:59 by tomoron #+# #+# #
# Updated: 2024/11/08 16:44:40 by tomoron ### ########.fr #
# #
# **************************************************************************** #
;; Global WM Settings
[global/wm]
; Adjust the _NET_WM_STRUT_PARTIAL top value
; Used for top aligned bars
margin-bottom = 0
; Adjust the _NET_WM_STRUT_PARTIAL bottom value
; Used for bottom aligned bars
margin-top = 0
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; File Inclusion
; include an external file, like module file, etc.
include-file = ~/.config/polybar/colors.ini
include-file = ~/.config/polybar/modules.ini
include-file = ~/.config/polybar/user_modules.ini
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; Bar Settings
[bar/main]
; Use either of the following command to list available outputs:
; If unspecified, the application will pick the first one it finds.
; $ polybar -m | cut -d ':' -f 1
; $ xrandr -q | grep " connected" | cut -d ' ' -f1
monitor = ${env:MONITOR:}
; Use the specified monitor as a fallback if the main one is not found.
monitor-fallback =
; Require the monitor to be in connected state
; XRandR sometimes reports my monitor as being disconnected (when in use)
monitor-strict = false
; Tell the Window Manager not to configure the window.
; Use this to detach the bar if your WM is locking its size/position.
override-redirect = false
; Put the bar at the bottom of the screen
bottom = false
; Prefer fixed center position for the `modules-center` block
; When false, the center position will be based on the size of the other blocks.
fixed-center = true
; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%),
; the percentage can optionally be extended with a pixel offset like so:
; 50%:-10, this will result in a width or height of 50% minus 10 pixels
width = 100%
height = 40
; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
; the percentage can optionally be extended with a pixel offset like so:
; 50%:-10, this will result in an offset in the x or y direction
; of 50% minus 10 pixels
offset-x = 0
offset-y = 0
; Background ARGB color (e.g. #f00, #ff992a, #ddff1023)
background = ${color.alpha}
; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023)
foreground = ${color.foreground}
; Background gradient (vertical steps)
; background-[0-9]+ = #aarrggbb
;;background-0 =
; Value used for drawing rounded corners
; Note: This shouldn't be used together with border-size because the border
; doesn't get rounded
; Individual top/bottom values can be defined using:
; radius-{top,bottom}
radius-top = 0.0
radius-bottom = 0.0
; Under-/overline pixel size and argb color
; Individual values can be defined using:
; {overline,underline}-size
; {overline,underline}-color
underline-size = 2
underline-color = ${color.foreground}
; Values applied to all borders
; Individual side values can be defined using:
; border-{left,top,right,bottom}-size
; border-{left,top,right,bottom}-color
; The top and bottom borders are added to the bar height, so the effective
; window height is:
; height + border-top-size + border-bottom-size
; Meanwhile the effective window width is defined entirely by the width key and
; the border is placed withing this area. So you effectively only have the
; following horizontal space on the bar:
; width - border-right-size - border-left-size
border-size = 0
border-color = ${color.background}
; Number of spaces to add at the beginning/end of the bar
; Individual side values can be defined using:
; padding-{left,right}
padding = 0
; Number of spaces to add before/after each module
; Individual side values can be defined using:
; module-margin-{left,right}
module-margin-left = 0
module-margin-right = 0
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
; Fonts are defined using <font-name>;<vertical-offset>
; Font names are specified using a fontconfig pattern.
; font-0 = NotoSans-Regular:size=8;2
; font-1 = MaterialIcons:size=10
; font-2 = Termsynu:size=8;-1
; font-3 = FontAwesome:size=10
; See the Fonts wiki page for more details
font-0 = "Iosevka Nerd Font:style=Bold:pixelsize=12;4"
font-1 = "Iosevka Nerd Font:style=Bold:pixelsize=13;4"
font-2 = "Iosevka Nerd Font:style=Bold:pixelsize=13;4"
; Modules are added to one of the available blocks
; modules-left = cpu ram
; modules-center = xwindow xbacklight
; modules-right = ipc clock
modules-left = workspaces space mpris
modules-center =
modules-right = fans dgpu memory sep filesystem sep cpu sep temperature sep polybar sep battery sep network sep date
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
; The separator will be inserted between the output of each module
separator =
; Opacity value between 0.0 and 1.0 used on fade in/out
dim-value = 1.0
; Value to be used to set the WM_NAME atom
; If the value is empty or undefined, the atom value
; will be created from the following template: polybar-[BAR]_[MONITOR]
; NOTE: The placeholders are not available for custom values
wm-name =
; Locale used to localize various module data (e.g. date)
; Expects a valid libc locale, for example: sv_SE.UTF-8
locale =
; Position of the system tray window
; If empty or undefined, tray support will be disabled
; NOTE: A center aligned tray will cover center aligned modules
;
; Available positions:
; left
; center
; right
; none
tray-position = none
; If true, the bar will not shift its
; contents when the tray changes
tray-detached = false
; Tray icon max size
tray-maxsize = 16
; Background color for the tray container
; ARGB color (e.g. #f00, #ff992a, #ddff1023)
; By default the tray container will use the bar
; background color.
tray-background = ${color.background}
; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
tray-offset-x = 0
tray-offset-y = 0
; Pad the sides of each tray icon
tray-padding = 0
; Scale factor for tray clients
tray-scale = 1.0
; Restack the bar window and put it above the
; selected window manager's root
;
; Fixes the issue where the bar is being drawn
; on top of fullscreen window's
;
; Currently supported WM's:
; bspwm
; i3 (requires: `override-redirect = true`)
;;wm-restack =
; Set a DPI values used when rendering text
; This only affects scalable fonts
; dpi =
; Enable support for inter-process messaging
; See the Messaging wiki page for more details.
enable-ipc = true
; Fallback click handlers that will be called if
; there's no matching module handler found.
click-left =
click-middle =
click-right =
scroll-up =
scroll-down =
double-click-left =
double-click-middle =
double-click-right =
; Requires polybar to be built with xcursor support (xcb-util-cursor)
; Possible values are:
; - default : The default pointer as before, can also be an empty string (default)
; - pointer : Typically in the form of a hand
; - ns-resize : Up and down arrows, can be used to indicate scrolling
cursor-click =
cursor-scroll =
;; WM Workspace Specific
; bspwm
;;scroll-up = bspwm-desknext
;;scroll-down = bspwm-deskprev
;;scroll-up = bspc desktop -f prev.local
;;scroll-down = bspc desktop -f next.local
;i3
;;scroll-up = i3wm-wsnext
;;scroll-down = i3wm-wsprev
;;scroll-up = i3-msg workspace next_on_output
;;scroll-down = i3-msg workspace prev_on_output
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
;; Application Settings
[settings]
; The throttle settings lets the eventloop swallow up til X events
; if they happen within Y millisecond after first event was received.
; This is done to prevent flood of update event.
;
; For example if 5 modules emit an update event at the same time, we really
; just care about the last one. But if we wait too long for events to swallow
; the bar would appear sluggish so we continue if timeout
; expires or limit is reached.
throttle-output = 5
throttle-output-for = 10
; Time in milliseconds that the input handler will wait between processing events
;throttle-input-for = 30
; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events
screenchange-reload = false
; Compositing operators
; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t
compositing-background = source
compositing-foreground = over
compositing-overline = over
compositing-underline = over
compositing-border = over
; Define fallback values used by all module formats
;format-foreground =
;format-background =
;format-underline =
;format-overline =
;format-spacing =
;format-padding =
;format-margin =
;format-offset =
; Enables pseudo-transparency for the bar
; If set to true the bar can be transparent without a compositor.
pseudo-transparency = false
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

View File

@ -1,132 +0,0 @@
# **************************************************************************** #
# #
# ::: :::::::: #
# modules.ini :+: :+: :+: #
# +:+ +:+ +:+ #
# By: tomoron <tomoron@student.42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/08/28 20:38:49 by tomoron #+# #+# #
# Updated: 2025/02/10 01:59:55 by tomoron ### ########.fr #
# #
# **************************************************************************** #
[module/pulseaudio]
type = internal/pulseaudio
master-soundcard = default
speaker-soundcard = default
headphone-soundcard = default
master-mixer = Master
interval = 5
format-volume = "<ramp-volume> <label-volume>"
format-volume-padding = 1
format-muted = "<label-muted>"
format-muted-prefix = "󰝟 "
format-muted-prefix-font = 2
format-muted-padding = 1
label-volume = %percentage%%
label-muted = " M"
label-muted-foreground = ${color.foreground}
ramp-volume-0 = ""
ramp-volume-1 = ""
ramp-volume-2 = " "
ramp-volume-font = 2
ramp-headphones-0 =
[module/battery]
type = internal/battery
; This is useful in case the battery never reports 100% charge
full-at = 100
; Use the following command to list batteries and adapters:
; $ ls -1 /sys/class/power_supply/
battery = BAT0
adapter = AC0
; If an inotify event haven't been reported in this many
; seconds, manually poll for new values.
;
; Needed as a fallback for systems that don't report events
; on sysfs/procfs.
;
; Disable polling by setting the interval to 0.
;
; Default: 5
poll-interval = 2
; see "man date" for details on how to format the time string
; NOTE: if you want to use syntax tags here you need to use %%{...}
; Default: %H:%M:%S
time-format = %H:%M
; Available tags:
; <label-charging> (default)
; <bar-capacity>
; <ramp-capacity>
; <animation-charging>
format-charging = "󰂄 <label-charging>"
format-charging-padding = 1
; Available tags:
; <label-discharging> (default)
; <bar-capacity>
; <ramp-capacity>
; <animation-discharging>
format-discharging = "<ramp-capacity> <label-discharging>"
format-discharging-padding = 1
; Available tags:
; <label-full> (default)
; <bar-capacity>
; <ramp-capacity>
format-full = <label-full>
format-full-prefix = " "
format-full-prefix-font = 2
format-full-padding = 2
; Available tokens:
; %percentage% (default)
; %time%
; %consumption% (shows current charge rate in watts)
label-charging = %percentage%% %time%
; Available tokens:
; %percentage% (default)
; %time%
; %consumption% (shows current discharge rate in watts)
label-discharging = %percentage%% %time%
; Available tokens:
; %percentage% (default)
label-full = " Full"
; Only applies if <ramp-capacity> is used
ramp-capacity-0 = " "
ramp-capacity-1 = " "
ramp-capacity-2 = " "
ramp-capacity-3 = " "
ramp-capacity-4 = " "
ramp-capacity-font = 2
; Only applies if <bar-capacity> is used
;bar-capacity-width = 10
; Only applies if <animation-charging> is used
animation-charging-0 = "󰂇 "
animation-charging-1 = "󰢝 "
animation-charging-2 = "󰂉 "
animation-charging-3 = "󰂋 "
animation-charging-4 = "󰂅 "
animation-charging-font = 2
; Framerate in milliseconds
animation-charging-framerate = 750
; Only applies if <animation-discharging> is used
;;animation-discharging-0 = ${battery.anim0}
;;animation-discharging-1 = ${battery.anim1}
; Framerate in milliseconds
;animation-discharging-framerate = 500

View File

@ -1,23 +0,0 @@
# **************************************************************************** #
# #
# ::: :::::::: #
# user_modules.ini :+: :+: :+: #
# +:+ +:+ +:+ #
# By: tomoron <tomoron@student.42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/08/28 20:38:24 by tomoron #+# #+# #
# Updated: 2024/09/03 14:40:12 by tomoron ### ########.fr #
# #
# **************************************************************************** #
[module/sep]
type = custom/text
content = "|"
content-foreground = #FFFFFF
[module/space]
type = custom/text
content = " "
content-padding=1

View File

@ -1,170 +0,0 @@
#
# wm independent hotkeys
#
# terminal emulator
super + Return
alacritty
# program launcher
super + d
/home/tom/.config/polybar/scripts/launcher.sh
super + shift + d
/home/tom/.config/polybar/scripts/launcher_bin.sh
# make sxhkd reload its configuration files:
super + Escape
pkill -USR1 -x sxhkd
#
# bspwm hotkeys
#
# quit/restart bspwm
super + alt + {q,r}
bspc {quit,wm -r}
# close and kill
control + alt + {_,shift + }q
bspc node -{c,k}
# alternate between the tiled and monocle layout
super + m
bspc desktop -l next
# send the newest marked node to the newest preselected node
super + y
bspc node newest.marked.local -n newest.!automatic.local
# swap the current node and the biggest window
super + g
bspc node -s biggest.window
#
# state/flags
#
# set the window state
super + {t,shift + t,s,f}
bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
# set the node flags
super + ctrl + {m,x,y,z}
bspc node -g {marked,locked,sticky,private}
#
# focus/swap
#
# focus the node in the given direction
super + {_,shift + }{h,j,k,l}
bspc node -{f,s} {west,south,north,east}
# focus the node for the given path jump
super + {p,b,comma,period}
bspc node -f @{parent,brother,first,second}
# focus the next/previous window in the current desktop
super + {_,shift + }c
bspc node -f {next,prev}.local.!hidden.window
# focus the next/previous desktop in the current monitor
super + bracket{left,right}
bspc desktop -f {prev,next}.local
# focus the last node/desktop
super + {grave,Tab}
bspc {node,desktop} -f last
# focus the older or newer node in the focus history
super + {o,i}
bspc wm -h off; \
bspc node {older,newer} -f; \
bspc wm -h on
# focus or send to the given desktop
super + {_,shift + }{1-9,0}
bspc {desktop -f,node -d} '^{1-9,10}'
#
# preselect
#
# preselect the direction
super + ctrl + {h,j,k,l}
bspc node -p {west,south,north,east}
# preselect the ratio
super + ctrl + {1-9}
bspc node -o 0.{1-9}
# cancel the preselection for the focused node
super + ctrl + space
bspc node -p cancel
# cancel the preselection for the focused desktop
super + ctrl + shift + space
bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
#
# move/resize
#
# expand a window by moving one of its side outward
super + alt + {h,j,k,l}
bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
# contract a window by moving one of its side inward
super + alt + shift + {h,j,k,l}
bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
# move a floating window
super + {Left,Down,Up,Right}
bspc node -v {-20 0,0 20,0 -20,20 0}
#Volume control
XF86AudioLowerVolume
pactl set-sink-volume @DEFAULT_SINK@ -5%
XF86AudioRaiseVolume
pactl set-sink-volume @DEFAULT_SINK@ +5%
XF86AudioMute
pactl set-sink-mute @DEFAULT_SINK@ toggle
XF86MonBrightnessUp
~/.local/bin/brightness up
XF86MonBrightnessDown
~/.local/bin/brightness down
XF86KbdBrightnessUp
~/.local/bin/kbd_brightness up
XF86KbdBrightnessDown
~/.local/bin/kbd_brightness down
alt + F7
brightnessctl 10-
alt + F8
brightnessctl 10+
#music control
super + shift + o
playerctl play-pause
super + shift + p
playerctl previous
super + shift + n
playerctl next
super + shift + alt + b
polybar-msg cmd hide
super + shift + b
polybar-msg cmd show

View File

@ -1,20 +0,0 @@
let g:python_recommended_style = 0
set number
set ai
autocmd BufWinLeave *.* mkview
autocmd BufWinEnter *.* silent! loadview
set noexpandtab
set tabstop=4
set shiftwidth=4
set scrolloff=10
set preserveindent
map <silent> <C-N> :bnext<CR>
map <silent> <C-P> :bprevious<CR>
nmap <silent> <c-k> :wincmd k<CR>
nmap <silent> <c-j> :wincmd j<CR>
nmap <silent> <c-h> :wincmd h<CR>
nmap <silent> <c-l> :wincmd l<CR>
set hidden
set path +=**
set wildmenu
set wildignore+=**/node_modules/**

View File

@ -6,7 +6,7 @@
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ # # By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ # # +#+#+#+#+#+ +#+ #
# Created: 2024/10/17 18:15:38 by tomoron #+# #+# # # Created: 2024/10/17 18:15:38 by tomoron #+# #+# #
# Updated: 2025/02/10 05:27:03 by tomoron ### ########.fr # # Updated: 2025/02/12 04:13:26 by tomoron ### ########.fr #
# # # #
# **************************************************************************** # # **************************************************************************** #
@ -69,6 +69,8 @@
''; '';
}; };
home.sessionPath = [ "~/.local/bin" ];
home.file = { #should be able to make most of these in nix configs home.file = { #should be able to make most of these in nix configs
".config/nitrogen/wallpaper.png".source = lib.mkDefault dotfiles/config/nitrogen/wallpaper.png; ".config/nitrogen/wallpaper.png".source = lib.mkDefault dotfiles/config/nitrogen/wallpaper.png;
".xinitrc".text = "exec bspwm"; ".xinitrc".text = "exec bspwm";

View File

@ -9,6 +9,7 @@
# programs.alacritty.settings.font.size = 8; # programs.alacritty.settings.font.size = 8;
home.packages = with pkgs; [ home.packages = with pkgs; [
stremio stremio
blender
]; ];
home.file = { home.file = {

View File

@ -8,17 +8,72 @@
}; };
config = lib.mkIf config.mods.vim.enable { config = lib.mkIf config.mods.vim.enable {
programs.neovim = {
enable = true;
defaultEditor = true;
viAlias = true;
vimAlias = true;
};
home.packages = with pkgs; [ home.packages = with pkgs; [
clang-tools clang-tools
neovim
nixd nixd
nodejs_23 nodejs_23
glsl_analyzer
]; ];
home.file = { programs.neovim.extraConfig = ''
".config/nvim/init.vim".source = ../dotfiles/config/nvim/init.vim; set number
".vimrc".source = ../dotfiles/vimrc; set ai
autocmd BufWinLeave *.* mkview
autocmd BufWinEnter *.* silent! loadview
set tabstop=4
set scrolloff=10
set preserveindent
map <silent> <C-N> :bnext<CR>
map <silent> <C-P> :bprevious<CR>
nmap <silent> <c-k> :wincmd k<CR>
nmap <silent> <c-j> :wincmd j<CR>
nmap <silent> <c-h> :wincmd h<CR>
nmap <silent> <c-l> :wincmd l<CR>
set hidden
set path +=**
set wildmenu
set wildignore+=**/node_modules/**
let mapleader=";"
autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
\| PlugInstall --sync
\| endif
call plug#begin('~/.config/nvim/plugged')
Plug 'bling/vim-bufferline'
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-telescope/telescope.nvim'
Plug 'andweeb/presence.nvim'
Plug 'neovim/nvim-lspconfig'
Plug 'bluz71/vim-nightfly-colors'
Plug 'catppuccin/nvim', { 'as': 'catppuccin' }
Plug 'tikhomirov/vim-glsl'
call plug#end()
colorscheme catppuccin-mocha
lua require'lspconfig'.clangd.setup{}
lua require'lspconfig'.nixd.setup{}
lua require'lspconfig'.glsl_analyzer.setup{}
set signcolumn=no
nnoremap <leader>ff <cmd>Telescope find_files<cr>
nnoremap <leader>fg <cmd>Telescope live_grep<cr>
nnoremap <leader>fb <cmd>Telescope buffers<cr>
nnoremap <leader>fh <cmd>Telescope help_tags<cr>
let g:user42 = 'tomoron'
let g:mail42 = 'tomoron@student.42angouleme.fr'
'';
home.file = {
#install plug.vim #install plug.vim
".local/share/nvim/site/autoload/plug.vim".source = "${builtins.fetchGit { ".local/share/nvim/site/autoload/plug.vim".source = "${builtins.fetchGit {
url = "https://github.com/junegunn/vim-plug"; url = "https://github.com/junegunn/vim-plug";

View File

@ -6,7 +6,7 @@
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ # # By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ # # +#+#+#+#+#+ +#+ #
# Created: 2025/02/09 22:01:56 by tomoron #+# #+# # # Created: 2025/02/09 22:01:56 by tomoron #+# #+# #
# Updated: 2025/02/10 17:21:20 by tomoron ### ########.fr # # Updated: 2025/02/12 12:53:12 by tomoron ### ########.fr #
# # # #
# **************************************************************************** # # **************************************************************************** #
@ -14,7 +14,6 @@
{ {
home.packages = with pkgs;[ home.packages = with pkgs;[
neovim
ripgrep ripgrep
activate-linux activate-linux