Compare commits

...

25 Commits

Author SHA1 Message Date
Jurij Podgoršek 29c4d1ebd5 Bookmarke ven od tukaj 2024-03-22 14:41:00 +01:00
Jurij Podgoršek 83f4a4c0af Geiser nalozi kasneje 2024-03-22 14:39:14 +01:00
Jurij Podgoršek 9ae8b1ec91 GUIX novosti (home, shell) 2024-03-16 17:28:50 +01:00
Jurij Podgoršek fdcf19438b Posodobitve (UX305U) 2023-10-09 21:15:13 +02:00
Jurij Podgoršek d6ab47713a Guix posodobitve, nekaj sprememb 2023-07-10 23:14:40 +02:00
Jurij Podgoršek 27de8fa65b Skripta za font 2023-03-09 02:52:19 +01:00
Jurij Podgoršek a8ca1bcb8e Manjsi popravki configa, odstranimo bookmarks, sprememba fonta 2023-03-09 00:22:28 +01:00
Jurij Podgoršek fb32908665 Foot terminal, ciscenje skript (v repu po novem), druga iosevka, BG 2023-03-09 00:22:02 +01:00
Jurij Podgoršek 9b68331031 Ciscenje 2023-03-09 00:09:42 +01:00
Jurij Podgoršek ebe13da706 i3status, popravki inu posodobitve ter seveda ciscenje 2023-03-01 17:35:03 +01:00
Jurij Podgoršek b19f730b6f Emacs config apdejt! <3 2023-02-16 19:09:11 +01:00
Jurij Podgoršek fbb5b56b5f Izboljsav'ce 2022-06-16 16:26:11 +02:00
Jurij Podgoršek b4e1714ac7 Posodobitve (sway, emacs, zsh) 2022-02-02 17:31:25 +01:00
Jurij Podgoršek ec91d04af2 Posodobitve 2021-12-15 14:58:03 +01:00
Jurij Podgoršek bf9b4eed0a Dopedenan sway, emacs 2021-09-29 21:48:08 +02:00
Jurij Podgoršek 89da9265a5 Posodobitve 2021-04-25 00:43:50 +02:00
Jurij Podgoršek ae9723001c Razni popravki, dodan emacs config, bliznjice z DPI fixi 2021-03-10 18:38:27 +01:00
Jurij Podgoršek b9ca95420b Posodobitve 2020-11-11 00:16:56 +01:00
Jurij Podgoršek 6e0922abd3 Razne posodobitve, info o vsebovanem 2020-10-27 21:06:46 +01:00
Jurij Podgoršek e022f6c867 Posodobitve konfiguracij za T460s FHD (sway!) 2020-09-01 00:54:56 +02:00
Jurij Podgoršek ac50450e5f Dodana licenca 2020-05-08 05:18:49 +02:00
Jurij Podgoršek 76d2a45dbf Posodobitve konfiguracij 2020-05-08 05:10:34 +02:00
Jurij Podgoršek f9a64b4288 Razne posodobitve 2020-04-10 19:30:40 +02:00
Jurij Podgoršek c3e00377f1 Polybar, razni popravki 2020-01-11 00:47:01 +01:00
Jurij Podgoršek 4c8661f5e3 Various updates, x1 hidpi fixes 2019-07-24 12:01:51 +02:00
59 changed files with 2994 additions and 349 deletions

View File

@ -1,10 +1,11 @@
!!! Scaling, fonts !!!
! Xft.dpi: 136
Xft.dpi: 166
!Xft.autohint: 1
!Xft.dpi: 95
Xft.dpi: 158
Xft.autohint: 0
!Xft.autohint: 1
Xft.lcdfilter: lcddefault
Xft.hintstyle: hintslight
!Xft.hintstyle: hintslight
Xft.hintstyle: hintfull
Xft.hinting: 1
Xft.antialias: 1
Xft.rgba: rgb
@ -28,8 +29,8 @@ Xft.rgba: rgb
#define S_base2 #eee8d5
#define S_base3 #fdf6e3
*background: S_base03
*foreground: S_base0
!*background: S_base03
!*foreground: S_base0
!*fading: 40
!*fadeColor: S_base03
*cursorColor: S_base1
@ -55,8 +56,7 @@ Xft.rgba: rgb
!!! Urxvt options !!!
! font
!URxvt*font: xft:Fira Mono Medium:size=10,xft:Noto Emoji:size=10
URxvt*font: xft:Fira Mono Medium:size=8,xft:Noto Emoji:size=8
URxvt*font: xft:Fira Code Medium:size=9,xft:Noto Emoji:size=9
! Fix letter spacing; this is not needed in patched urxvt
! URxvt*letterSpace: -1
! hide scrollbar
@ -80,3 +80,5 @@ URxvt.keysym.M-Escape: perl:keyboard-select:activate
! transparency
URxvt*depth: 32
URxvt*background: [94]S_base03
xterm*decTerminalID : vt340

View File

@ -0,0 +1,218 @@
# -*- conf -*-
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
# login-shell=no
# app-id=foot
# title=foot
# locked-title=no
# font=monospace:size=8
font=Fira Code Medium:size=11
# font-bold=<bold variant of regular font>
# font-italic=<italic variant of regular font>
# font-bold-italic=<bold+italic variant of regular font>
# line-height=<font metrics>
# letter-spacing=0
# horizontal-letter-offset=0
# vertical-letter-offset=0
# underline-offset=<font metrics>
# box-drawings-uses-font-glyphs=no
# dpi-aware=auto
# initial-window-size-pixels=700x500 # Or,
# initial-window-size-chars=<COLSxROWS>
# initial-window-mode=windowed
# pad=2x2 # optionally append 'center'
pad=6x5
# resize-delay-ms=100
# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
# bold-text-in-bright=no
# word-delimiters=,│`|:"'()[]{}<>
# selection-target=primary
# workers=<number of logical CPUs>
[environment]
# name=value
[bell]
# urgent=no
# notify=no
# command=
# command-focused=no
[scrollback]
# lines=1000
# multiplier=3.0
# indicator-position=relative
# indicator-format=
[url]
# launch=xdg-open ${url}
# label-letters=sadfjklewcmpgh
# osc8-underline=url-mode
# protocols=http, https, ftp, ftps, file, gemini, gopher
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'()[]
[cursor]
# style=block
# color=<inverse foreground/background>
# blink=no
# beam-thickness=1.5
# underline-thickness=<font underline thickness>
[mouse]
# hide-when-typing=no
# alternate-scroll-mode=yes
[colors]
alpha=0.9
# foreground=dcdccc
# background=111111
## Normal/regular colors (color palette 0-7)
# regular0=222222 # black
# regular1=cc9393 # red
# regular2=7f9f7f # green
# regular3=d0bf8f # yellow
# regular4=6ca0a3 # blue
# regular5=dc8cc3 # magenta
# regular6=93e0e3 # cyan
# regular7=dcdccc # white
## Bright colors (color palette 8-15)
# bright0=666666 # bright black
# bright1=dca3a3 # bright red
# bright2=bfebbf # bright green
# bright3=f0dfaf # bright yellow
# bright4=8cd0d3 # bright blue
# bright5=fcace3 # bright magenta
# bright6=b3ffff # bright cyan
# bright7=ffffff # bright white
## dimmed colors (see foot.ini(5) man page)
# dim0=<not set>
# ...
# dim7=<not-set>
## The remaining 256-color palette
# 16 = <256-color palette #16>
# ...
# 255 = <256-color palette #255>
## Misc colors
# selection-foreground=<inverse foreground/background>
# selection-background=<inverse foreground/background>
# jump-labels=<regular0> <regular3> # black-on-yellow
# scrollback-indicator=<regular0> <bright4> # black-on-bright-blue
# search-box-no-match=<regular0> <regular1> # black-on-red
# search-box-match=<regular0> <regular3> # black-on-yellow
# urls=<regular3>
# -*- conf -*-
# Gruvbox
background=282828
foreground=ebdbb2
regular0=282828
regular1=cc241d
regular2=98971a
regular3=d79921
regular4=458588
regular5=b16286
regular6=689d6a
regular7=a89984
bright0=928374
bright1=fb4934
bright2=b8bb26
bright3=fabd2f
bright4=83a598
bright5=d3869b
bright6=8ec07c
bright7=ebdbb2
[csd]
# preferred=server
# size=26
# font=<primary font>
# color=<foreground color>
# hide-when-typing=no
# border-width=0
# border-color=<csd.color>
# button-width=26
# button-color=<background color>
# button-minimize-color=<regular4>
# button-maximize-color=<regular2>
# button-close-color=<regular1>
[key-bindings]
# scrollback-up-page=Shift+Page_Up
# scrollback-up-half-page=none
# scrollback-up-line=none
# scrollback-down-page=Shift+Page_Down
# scrollback-down-half-page=none
# scrollback-down-line=none
# clipboard-copy=Control+Shift+c XF86Copy
# clipboard-paste=Control+Shift+v XF86Paste
# primary-paste=Shift+Insert
# search-start=Control+Shift+r
# font-increase=Control+plus Control+equal Control+KP_Add
# font-decrease=Control+minus Control+KP_Subtract
# font-reset=Control+0 Control+KP_0
# spawn-terminal=Control+Shift+n
# minimize=none
# maximize=none
# fullscreen=none
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
# pipe-selected=[xargs -r firefox] none
# show-urls-launch=Control+Shift+u
# show-urls-copy=none
# show-urls-persistent=none
# prompt-prev=Control+Shift+z
# prompt-next=Control+Shift+x
# unicode-input=none
# noop=none
[search-bindings]
# cancel=Control+g Control+c Escape
# commit=Return
# find-prev=Control+r
# find-next=Control+s
# cursor-left=Left Control+b
# cursor-left-word=Control+Left Mod1+b
# cursor-right=Right Control+f
# cursor-right-word=Control+Right Mod1+f
# cursor-home=Home Control+a
# cursor-end=End Control+e
# delete-prev=BackSpace
# delete-prev-word=Mod1+BackSpace Control+BackSpace
# delete-next=Delete
# delete-next-word=Mod1+d Control+Delete
# extend-to-word-boundary=Control+w
# extend-to-next-whitespace=Control+Shift+w
# clipboard-paste=Control+v Control+Shift+v Control+y XF86Paste
# primary-paste=Shift+Insert
# unicode-input=none
[url-bindings]
# cancel=Control+g Control+c Control+d Escape
# toggle-url-visible=t
[text-bindings]
# \x03=Mod4+c # Map Super+c -> Ctrl+c
[mouse-bindings]
# selection-override-modifiers=Shift
# primary-paste=BTN_MIDDLE
# select-begin=BTN_LEFT
# select-begin-block=Control+BTN_LEFT
# select-extend=BTN_RIGHT
# select-extend-character-wise=Control+BTN_RIGHT
# select-word=BTN_LEFT-2
# select-word-whitespace=Control+BTN_LEFT-2
# select-row=BTN_LEFT-3
# vim: ft=dosini

View File

@ -0,0 +1,23 @@
(cons* (channel
(name 'nonguix)
(url "https://gitlab.com/nonguix/nonguix")
;; Enable signature verification:
(introduction
(make-channel-introduction
"897c1a470da759236cc11798f4e0a5f7d4d59fbc"
(openpgp-fingerprint
"2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))
;(channel
; (name 'guixrus)
; (url "https://git.sr.ht/~whereiseveryone/guixrus")
; (introduction
; (make-channel-introduction
; "7c67c3a9f299517bfc4ce8235628657898dd26b2"
; (openpgp-fingerprint
; "CD2D 5EAA A98C CB37 DA91 D6B0 5F58 1664 7F8B E551"))))
;(channel
; (name 'kompot)
; ;;(url "https://git.kompot.si/kompot/guix-paketi")
; (url (string-append "file://" (getenv "HOME") "/projekti/guix-paketi"))
; (branch "main"))
%default-channels)

View File

@ -1,10 +1,3 @@
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
@ -12,7 +5,7 @@
set $mod Mod4
# DPI scaling
exec xrandr --dpi 166
exec xrandr --dpi 158
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
@ -56,18 +49,18 @@ bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
bindsym $mod+Shift+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+colon move right
bindsym $mod+shift+j move left
bindsym $mod+shift+k move down
bindsym $mod+shift+l move up
bindsym $mod+shift+colon move right
# Also with slovenian layout
bindsym $mod+Shift+ccaron move right
bindsym $mod+shift+ccaron move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
bindsym $mod+shift+Left move left
bindsym $mod+shift+Down move down
bindsym $mod+shift+Up move up
bindsym $mod+shift+Right move right
# split in horizontal orientation
bindsym $mod+h split h
@ -84,16 +77,16 @@ bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
bindsym $mod+shift+f floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
bindsym $mod+shift+space focus mode_toggle
# focus the parent container
bindsym $mod+Shift+a focus parent
bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
#bindsym $mod+shift+c focus child
# name workspaces
set $w0 0:
@ -119,6 +112,8 @@ bindsym $mod+8 workspace $w8
bindsym $mod+9 workspace $w9
bindsym $mod+0 workspace $w0
# back and forth between workspaces
bindsym Mod1+Tab workspace back_and_forth
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $w1
@ -139,13 +134,17 @@ bindsym Mod1+Shift+ccaron move workspace to output right
bindsym Mod1+Shift+j move workspace to output left
# workspace bindings
assign [class="Thunderbird"] $w3
assign [class="thunderbird"] $w3
assign [class="Slack"] $w4
assign [class="Riot"] $w4
assign [class="Revolt"] $w4
assign [class="Lollypop"] $w7
# Program startup
exec thunderbird &
#exec thunderbird &
#exec revolt &
#exec riot-web &
#exec pidgin &
# reload the configuration file
bindsym $mod+Shift+c reload
@ -184,18 +183,18 @@ bindsym $mod+r mode "resize"
# External monitor
set $restart_compton (killall compton && compton -b) || compton -b
bindsym $mod+p exec xrandr --output HDMI-1 --auto --right-of eDP-1 && $set_bg && $restart_compton
bindsym $mod+Shift+p exec xrandr --output HDMI-1 --off && $restart_compton
bindsym $mod+p exec xrandr --output HDMI-2 --auto --right-of eDP-1 && $set_bg && $restart_compton
bindsym $mod+Shift+p exec xrandr --output HDMI-2 --off && $restart_compton
# Lock screen
bindsym $mod+shift+b exec i3lock-next
bindsym $mod+shift+b exec i3lock-fancy
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
position top
status_command i3blocks
#status_command i3bar
#status_command i3blocks
status_command i3status
colors {
background #232323
statusline #DCDCDC
@ -207,7 +206,7 @@ bar {
#font pango:Iosevka Medium 10
font pango: Iosevka Medium 8
strip_workspace_numbers yes
height 34
height 36
tray_padding 2
}
@ -224,10 +223,10 @@ client.background #222222
# Touchpad tap to click
exec --no-startup-id xinput set-prop "SynPS/2 Synaptics TouchPad" "libinput Tapping Enabled" 1
exec --no-startup-id xinput set-prop "Elan Touchpad" "libinput Tapping Enabled" 1
#exec --no-startup-id xinput set-prop "Synaptics TM3289-002" "Synaptics Tap Action" 0 0 0 0 1 3
# Touchpad natural scrolling
exec --no-startup-id xinput set-prop "SynPS/2 Synaptics TouchPad" "libinput Natural Scrolling Enabled" 1
exec --no-startup-id xinput set-prop "Elan Touchpad" "libinput Natural Scrolling Enabled" 1
# Cursor acceleration
exec --no-startup-id xinput set-prop "SynPS/2 Synaptics TouchPad" "libinput Accel Speed" 0.456
@ -239,27 +238,33 @@ exec --no-startup-id xinput set-prop "SynPS/2 Synaptics TouchPad" "libinput Acce
exec --no-startup-id compton --unredir-if-possible -b
# Redshift (hello sleep)
exec redshift-gtk &
#exec --no-startup-id redshift-gtk -l 46.0552778:14.5144444 &
exec --no-startup-id redshift-gtk &
# Background
set $set_bg feh --bg-fill ~/Pictures/wlp.jpg
exec --no-startup-id $set_bg &
#set $set_bg feh --bg-fill "~/riz0m/Photos/sri lanka/IMG_20220220_120730.jpg"
set $set_bg feh --bg-fill "$HOME/Slike/☭/bigstock-Sutjeska-National-Park-Bosnia-63011269.jpg" fill
exec_always --no-startup-id $set_bg &
# Network manager applet
exec nm-applet &
# Keyboard layout, caps lock as compose key
#exec_always --no-startup-id "setxkbmap -layout us,si -option grp:lctrl_lwin_toggle -option compose:caps"
exec_always --no-startup-id "setxkbmap -layout us,si -option grp:win_space_toggle -option compose:caps"
# Change layout
exec_always setxkbmap -option "grp:win_space_toggle"
# gaps between windows
gaps inner 7
gaps outer 0
smart_gaps on
#smart_borders on
#gaps inner 7
#gaps outer 0
#smart_gaps on
# No titles
for_window [class="^.*"] border pixel 2
#smart_borders on
# Mouse focus
focus_follows_mouse yes
@ -267,14 +272,12 @@ focus_follows_mouse yes
# Various app shortcuts #
#########################
# Firefox
bindsym $mod+shift+w exec firefox
bindsym Mod1+shift+w exec chromium --force-device-scale-factor=1
# Increase volume
set $vol_sig_cmd pkill -RTMIN+10 i3blocks
set $vol_down_cmd pamixer -d 5
set $vol_up_cmd pamixer -i 5
#set $vol_down_cmd pulsemixer --change-volume -5
#set $vol_up_cmd pulsemixer --change-volume +5
set $vol_down_cmd amixer -c 0 -q sset Master 2%-
set $vol_up_cmd amixer -c 0 -q sset Master 2%+
bindsym $mod+shift+d exec "$vol_up_cmd && $vol_sig_cmd"
bindsym XF86AudioRaiseVolume exec "$vol_up_cmd && $vol_sig_cmd"
# Decrease volume
@ -286,36 +289,39 @@ bindsym XF86AudioMute exec "pamixer -t && $vol_sig_cmd"
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal
bindsym $mod+Return exec "termite -t konz0l"
bindsym $mod+Return exec kitty
# kill focused window
bindsym $mod+Shift+q kill
bindsym $mod+Ctrl+q exec --no-startup-id "xterm -e xkill"
bindsym $mod+shift+q kill
bindsym $mod+ctrl+q exec --no-startup-id "xterm -e xkill"
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
# start rofi (alt program launcher)
bindsym $mod+d exec --no-startup-id "rofi -combi-modi window,drun -show combi -modi combi -config ~/.local/rofi/config"
bindsym $mod+d exec --no-startup-id "rofi -combi-modi window,drun,run -show combi -modi combi -icon-theme Papirus -show-icons -config ~/.local/rofi/config"
# Screen brightness
set $brt_sig_cmd pkill -RTMIN+5 i3blocks
bindsym XF86MonBrightnessUp exec "xbacklight -inc 8.333 -time 222 -steps 5 && $brt_sig_cmd"
bindsym XF86MonBrightnessDown exec "xbacklight -dec 8.333 -time 222 -steps 5 && $brt_sig_cmd"
# File manager
bindsym Mod1+Shift+q exec nautilus
# Emacs!
bindsym $mod+a exec emacs
# Radio študent
bindsym Mod1+Shift+r exec vlc /home/g1smo/Music/radiostudent.m3u
bindsym Mod1+Shift+z exec playerctl play-pause
bindsym Mod1+Shift+y exec playerctl play-pause
bindsym Mod1+shift+r exec vlc /home/g1smo/Glasba/rs.m3u
bindsym Mod1+shift+x exec playerctl play-pause
bindsym Mod1+shift+c exec playerctl play-pause
# Skrinšot
bindsym 0xff61 exec gnome-screenshot -i
# Keyring related
exec --no-startup-id /usr/share/gnome-settings-daemon
#exec --no-startup-id /usr/share/gnome-settings-daemon
# Polybar
#exec_always --no-startup-id ~/.config/polybar/launch.sh
# Autotiling https://github.com/nwg-piotr/autotiling
exec ~/.local/bin/autotiling
# Rdecenje skrina
exec gammastep -l 46.05108:14.50513

View File

@ -0,0 +1,41 @@
# gruvbox-dark colorscheme for kitty
# snazzy theme used as base
foreground #ebdbb2
background #272727
selection_foreground #655b53
selection_background #ebdbb2
url_color #d65c0d
# black
color0 #272727
color8 #928373
# red
color1 #cc231c
color9 #fb4833
# green
color2 #989719
color10 #b8ba25
# yellow
color3 #d79920
color11 #fabc2e
# blue
color4 #448488
color12 #83a597
# magenta
color5 #b16185
color13 #d3859a
# cyan
color6 #689d69
color14 #8ec07b
# white
color7 #a89983
color15 #ebdbb2

View File

@ -0,0 +1,18 @@
font_family Fira Code Medium
bold_font auto
italic_font auto
bold_italic_font auto
font_size 11.0
background_opacity 0.9
#include solarized.conf
include gruvbox.conf
window_padding_width 1
touch_scroll_multiplier 10.0
strip_trailing_spaces smart
enable_audio_bell no
visual_bell_duration 0

View File

@ -0,0 +1,21 @@
background #001e26
foreground #708183
cursor #708183
selection_background #002731
color0 #002731
color8 #465a61
color1 #d01b24
color9 #bd3612
color2 #728905
color10 #465a61
color3 #a57705
color11 #52676f
color4 #2075c7
color12 #708183
color5 #c61b6e
color13 #5856b9
color6 #259185
color14 #81908f
color7 #e9e2cb
color15 #fcf4dc
selection_foreground #001e26

View File

@ -0,0 +1,14 @@
configuration {
combi-modi: "window,drun,run";
terminal: "kitty";
show-icons: true;
sidebar-mode: true;
color-normal: "#00383c4a, #c4cbd4, #96404552, #4084d6, #f9f9f9";
color-urgent: "#002d303b, #cc6666, #e52d303b, #a54242, #f9f9f9";
color-active: "#002d303b, #b5bd68, #e42d303b, #8c9440, #f9f9f9";
color-window: "#f22d303b, #7c8389, #1d1f21";
separator-style: "solid";
font: "Iosevka 11";
drun-icon-theme: "Papirus";
}
@theme "~/.config/rofi/themes/gruvbox/gruvbox-dark.rasi"

View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2016 Brian Hardisty
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -0,0 +1,76 @@
# gruvbox-rofi
> Gruvbox dark and light color themes for Rofi
[Rofi](https://github.com/DaveDavenport/rofi) color themes based on the
[Gruvbox color scheme](https://github.com/morhetz/gruvbox).
Includes six versions to choose from:
- **[Gruvbox Dark](#dark-gruvbox-darkrasi)**
- [Gruvbox Dark (soft contrast)](#dark-soft-contrast-gruvbox-dark-softrasi)
- [Gruvbox Dark (hard contrast)](#dark-hard-contrast-gruvbox-dark-hardrasi)
- **[Gruvbox Light](#light-gruvbox-lightrasi)**
- [Gruvbox Light (soft contrast)](#light-soft-contrast-gruvbox-light-softrasi)
- [Gruvbox Light (hard contrast)](#light-hard-contrast-gruvbox-light-hardrasi)
## Screenshots
### Dark ([`gruvbox-dark.rasi`](gruvbox-dark.rasi))
![gruvbox dark theme screenshot](screenshots/gruvbox-dark.png "gruvbox dark theme")
#### Dark (soft contrast) ([`gruvbox-dark-soft.rasi`](gruvbox-dark-soft.rasi))
![gruvbox dark theme (soft contrast) screenshot](screenshots/gruvbox-dark-soft.png "gruvbox dark theme (soft contrast)")
#### Dark (hard contrast) ([`gruvbox-dark-hard.rasi`](gruvbox-dark-hard.rasi))
![gruvbox dark theme (hard contrast) screenshot](screenshots/gruvbox-dark-hard.png "gruvbox dark theme (hard contrast)")
### Light ([`gruvbox-light.rasi`](gruvbox-light.rasi))
![gruvbox light theme screenshot](screenshots/gruvbox-light.png "gruvbox light theme")
#### Light (soft contrast) ([`gruvbox-light-soft.rasi`](gruvbox-light-soft.rasi))
![gruvbox light theme (soft contrast) screenshot](screenshots/gruvbox-light-soft.png "gruvbox light theme (soft contrast)")
#### Light (hard contrast) ([`gruvbox-light-hard.rasi`](gruvbox-light-hard.rasi))
![gruvbox light theme (hard contrast) screenshot](screenshots/gruvbox-light-hard.png "gruvbox light theme (hard contrast)")
## Installation
These themes are included with Rofi as of version
[1.3.0](https://github.com/DaveDavenport/rofi/releases/tag/1.3.0). Run
`rofi-theme-selector` to preview/apply them with Rofi's theme selector
script.
See [Manual Installation](#manual-installation) if you wish to install the
themes manually. This may be preferable if you plan on customizing them.
### Manual Installation
1. [Download](https://github.com/bardisty/gruvbox-rofi/archive/master.zip)
or clone the repository:
```shell
git clone https://github.com/bardisty/gruvbox-rofi ~/.config/rofi/themes/gruvbox
```
2. Edit your Rofi configuration file (`~/.config/rofi/config`):
```xdefaults
rofi.theme: ~/.config/rofi/themes/gruvbox/gruvbox-dark.rasi
```
## Links
- [Rofi](https://github.com/DaveDavenport/rofi) window switcher, run
launcher, ssh dialog, and dmenu replacement
- [Gruvbox](https://github.com/morhetz/gruvbox) color scheme for Vim
## License
[MIT](LICENSE)

View File

@ -0,0 +1 @@
/home/g1smo/sredstva/dotfiles/.config/rofi/themes/gruvbox

View File

@ -0,0 +1,127 @@
/* ==========================================================================
File: gruvbox-common.rasi
Desc: Shared rules between all gruvbox themes
Author: bardisty <b@bah.im>
Source: https://github.com/bardisty/gruvbox-rofi
Modified: Mon Feb 12 2018 06:06:47 PST -0800
========================================================================== */
window {
background-color: @background;
border: 2;
padding: 2;
}
mainbox {
border: 0;
padding: 0;
}
message {
border: 2px 0 0;
border-color: @separatorcolor;
padding: 1px;
}
textbox {
highlight: @highlight;
text-color: @foreground;
}
listview {
border: 2px solid 0 0;
padding: 2px 0 0;
border-color: @separatorcolor;
spacing: 2px;
scrollbar: @scrollbar;
}
element {
border: 0;
padding: 2px;
}
element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
scrollbar {
width: 4px;
border: 0;
handle-color: @scrollbar-handle;
handle-width: 8px;
padding: 0;
}
sidebar {
border: 2px 0 0;
border-color: @separatorcolor;
}
inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 2px;
children: [ prompt, textbox-prompt-sep, entry, case-indicator ];
}
case-indicator,
entry,
prompt,
button {
spacing: 0;
text-color: @normal-foreground;
}
button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
textbox-prompt-sep {
expand: false;
str: ":";
text-color: @normal-foreground;
margin: 0 0.3em 0 0;
}

View File

@ -0,0 +1,62 @@
/* ==========================================================================
Rofi color theme
Based on the Gruvbox color scheme for Vim by morhetz
https://github.com/morhetz/gruvbox
File: gruvbox-dark-hard.rasi
Desc: Gruvbox dark (hard contrast) color theme for Rofi
Author: bardisty <b@bah.im>
Source: https://github.com/bardisty/gruvbox-rofi
Modified: Mon Feb 12 2018 06:04:26 PST -0800
========================================================================== */
* {
/* Theme settings */
highlight: bold italic;
scrollbar: true;
/* Gruvbox dark colors */
gruvbox-dark-bg0-hard: #1d2021;
gruvbox-dark-bg0: #282828;
gruvbox-dark-bg2: #504945;
gruvbox-dark-fg0: #fbf1c7;
gruvbox-dark-fg1: #ebdbb2;
gruvbox-dark-red-dark: #cc241d;
gruvbox-dark-red-light: #fb4934;
gruvbox-dark-yellow-dark: #d79921;
gruvbox-dark-yellow-light: #fabd2f;
gruvbox-dark-gray: #a89984;
/* Theme colors */
background: @gruvbox-dark-bg0-hard;
background-color: @background;
foreground: @gruvbox-dark-fg1;
border-color: @gruvbox-dark-gray;
separatorcolor: @border-color;
scrollbar-handle: @border-color;
normal-background: @background;
normal-foreground: @foreground;
alternate-normal-background: @gruvbox-dark-bg0;
alternate-normal-foreground: @foreground;
selected-normal-background: @gruvbox-dark-bg2;
selected-normal-foreground: @gruvbox-dark-fg0;
active-background: @gruvbox-dark-yellow-dark;
active-foreground: @background;
alternate-active-background: @active-background;
alternate-active-foreground: @active-foreground;
selected-active-background: @gruvbox-dark-yellow-light;
selected-active-foreground: @active-foreground;
urgent-background: @gruvbox-dark-red-dark;
urgent-foreground: @background;
alternate-urgent-background: @urgent-background;
alternate-urgent-foreground: @urgent-foreground;
selected-urgent-background: @gruvbox-dark-red-light;
selected-urgent-foreground: @urgent-foreground;
}
@import "gruvbox-common.rasi"

View File

@ -0,0 +1,62 @@
/* ==========================================================================
Rofi color theme
Based on the Gruvbox color scheme for Vim by morhetz
https://github.com/morhetz/gruvbox
File: gruvbox-dark-soft.rasi
Desc: Gruvbox dark (soft contrast) color theme for Rofi
Author: bardisty <b@bah.im>
Source: https://github.com/bardisty/gruvbox-rofi
Modified: Mon Feb 12 2018 06:04:37 PST -0800
========================================================================== */
* {
/* Theme settings */
highlight: bold italic;
scrollbar: true;
/* Gruvbox dark colors */
gruvbox-dark-bg0-soft: #32302f;
gruvbox-dark-bg1: #3c3836;
gruvbox-dark-bg3: #665c54;
gruvbox-dark-fg0: #fbf1c7;
gruvbox-dark-fg1: #ebdbb2;
gruvbox-dark-red-dark: #cc241d;
gruvbox-dark-red-light: #fb4934;
gruvbox-dark-yellow-dark: #d79921;
gruvbox-dark-yellow-light: #fabd2f;
gruvbox-dark-gray: #a89984;
/* Theme colors */
background: @gruvbox-dark-bg0-soft;
background-color: @background;
foreground: @gruvbox-dark-fg1;
border-color: @gruvbox-dark-gray;
separatorcolor: @border-color;
scrollbar-handle: @border-color;
normal-background: @background;
normal-foreground: @foreground;
alternate-normal-background: @gruvbox-dark-bg1;
alternate-normal-foreground: @foreground;
selected-normal-background: @gruvbox-dark-bg3;
selected-normal-foreground: @gruvbox-dark-fg0;
active-background: @gruvbox-dark-yellow-dark;
active-foreground: @background;
alternate-active-background: @active-background;
alternate-active-foreground: @active-foreground;
selected-active-background: @gruvbox-dark-yellow-light;
selected-active-foreground: @active-foreground;
urgent-background: @gruvbox-dark-red-dark;
urgent-foreground: @background;
alternate-urgent-background: @urgent-background;
alternate-urgent-foreground: @urgent-foreground;
selected-urgent-background: @gruvbox-dark-red-light;
selected-urgent-foreground: @urgent-foreground;
}
@import "gruvbox-common.rasi"

View File

@ -0,0 +1,62 @@
/* ==========================================================================
Rofi color theme
Based on the Gruvbox color scheme for Vim by morhetz
https://github.com/morhetz/gruvbox
File: gruvbox-dark.rasi
Desc: Gruvbox dark color theme for Rofi
Author: bardisty <b@bah.im>
Source: https://github.com/bardisty/gruvbox-rofi
Modified: Mon Feb 12 2018 04:08:43 PST -0800
========================================================================== */
* {
/* Theme settings */
highlight: bold italic;
scrollbar: true;
/* Gruvbox dark colors */
gruvbox-dark-bg0: #282828;
gruvbox-dark-bg0-soft: #32302f;
gruvbox-dark-bg3: #665c54;
gruvbox-dark-fg0: #fbf1c7;
gruvbox-dark-fg1: #ebdbb2;
gruvbox-dark-red-dark: #cc241d;
gruvbox-dark-red-light: #fb4934;
gruvbox-dark-yellow-dark: #d79921;
gruvbox-dark-yellow-light: #fabd2f;
gruvbox-dark-gray: #a89984;
/* Theme colors */
background: @gruvbox-dark-bg0;
background-color: @background;
foreground: @gruvbox-dark-fg1;
border-color: @gruvbox-dark-gray;
separatorcolor: @border-color;
scrollbar-handle: @border-color;
normal-background: @background;
normal-foreground: @foreground;
alternate-normal-background: @gruvbox-dark-bg0-soft;
alternate-normal-foreground: @foreground;
selected-normal-background: @gruvbox-dark-bg3;
selected-normal-foreground: @gruvbox-dark-fg0;
active-background: @gruvbox-dark-yellow-dark;
active-foreground: @background;
alternate-active-background: @active-background;
alternate-active-foreground: @active-foreground;
selected-active-background: @gruvbox-dark-yellow-light;
selected-active-foreground: @active-foreground;
urgent-background: @gruvbox-dark-red-dark;
urgent-foreground: @background;
alternate-urgent-background: @urgent-background;
alternate-urgent-foreground: @urgent-foreground;
selected-urgent-background: @gruvbox-dark-red-light;
selected-urgent-foreground: @urgent-foreground;
}
@import "gruvbox-common.rasi"

View File

@ -0,0 +1,62 @@
/* ==========================================================================
Rofi color theme
Based on the Gruvbox color scheme for Vim by morhetz
https://github.com/morhetz/gruvbox
File: gruvbox-light-hard.rasi
Desc: Gruvbox light (hard contrast) color theme for Rofi
Author: bardisty <b@bah.im>
Source: https://github.com/bardisty/gruvbox-rofi
Modified: Mon Feb 12 2018 06:04:48 PST -0800
========================================================================== */
* {
/* Theme settings */
highlight: bold italic;
scrollbar: true;
/* Gruvbox light colors */
gruvbox-light-bg0-hard: #f9f5d7;
gruvbox-light-bg0: #fbf1c7;
gruvbox-light-bg1: #ebdbb2;
gruvbox-light-fg0: #282828;
gruvbox-light-fg1: #3c3836;
gruvbox-light-red-dark: #9d0006;
gruvbox-light-red-light: #cc241d;
gruvbox-light-yellow-dark: #b57614;
gruvbox-light-yellow-light: #d79921;
gruvbox-light-gray: #7c6f64;
/* Theme colors */
background: @gruvbox-light-bg0-hard;
background-color: @background;
foreground: @gruvbox-light-fg1;
border-color: @gruvbox-light-gray;
separatorcolor: @border-color;
scrollbar-handle: @border-color;
normal-background: @background;
normal-foreground: @foreground;
alternate-normal-background: @gruvbox-light-bg0;
alternate-normal-foreground: @foreground;
selected-normal-background: @gruvbox-light-bg1;
selected-normal-foreground: @gruvbox-light-fg0;
active-background: @gruvbox-light-yellow-dark;
active-foreground: @background;
alternate-active-background: @active-background;
alternate-active-foreground: @active-foreground;
selected-active-background: @gruvbox-light-yellow-light;
selected-active-foreground: @active-foreground;
urgent-background: @gruvbox-light-red-dark;
urgent-foreground: @background;
alternate-urgent-background: @urgent-background;
alternate-urgent-foreground: @urgent-foreground;
selected-urgent-background: @gruvbox-light-red-light;
selected-urgent-foreground: @urgent-foreground;
}
@import "gruvbox-common.rasi"

View File

@ -0,0 +1,62 @@
/* ==========================================================================
Rofi color theme
Based on the Gruvbox color scheme for Vim by morhetz
https://github.com/morhetz/gruvbox
File: gruvbox-light-soft.rasi
Desc: Gruvbox light (soft contrast) color theme for Rofi
Author: bardisty <b@bah.im>
Source: https://github.com/bardisty/gruvbox-rofi
Modified: Mon Feb 12 2018 06:05:38 PST -0800
========================================================================== */
* {
/* Theme settings */
highlight: bold italic;
scrollbar: true;
/* Gruvbox light colors */
gruvbox-light-bg0-soft: #f2e5bc;
gruvbox-light-bg1: #ebdbb2;
gruvbox-light-bg2: #d5c4a1;
gruvbox-light-fg0: #282828;
gruvbox-light-fg1: #3c3836;
gruvbox-light-red-dark: #9d0006;
gruvbox-light-red-light: #cc241d;
gruvbox-light-yellow-dark: #b57614;
gruvbox-light-yellow-light: #d79921;
gruvbox-light-gray: #7c6f64;
/* Theme colors */
background: @gruvbox-light-bg0-soft;
background-color: @background;
foreground: @gruvbox-light-fg1;
border-color: @gruvbox-light-gray;
separatorcolor: @border-color;
scrollbar-handle: @border-color;
normal-background: @background;
normal-foreground: @foreground;
alternate-normal-background: @gruvbox-light-bg1;
alternate-normal-foreground: @foreground;
selected-normal-background: @gruvbox-light-bg2;
selected-normal-foreground: @gruvbox-light-fg0;
active-background: @gruvbox-light-yellow-dark;
active-foreground: @background;
alternate-active-background: @active-background;
alternate-active-foreground: @active-foreground;
selected-active-background: @gruvbox-light-yellow-light;
selected-active-foreground: @active-foreground;
urgent-background: @gruvbox-light-red-dark;
urgent-foreground: @background;
alternate-urgent-background: @urgent-background;
alternate-urgent-foreground: @urgent-foreground;
selected-urgent-background: @gruvbox-light-red-light;
selected-urgent-foreground: @urgent-foreground;
}
@import "gruvbox-common.rasi"

View File

@ -0,0 +1,62 @@
/* ==========================================================================
Rofi color theme
Based on the Gruvbox color scheme for Vim by morhetz
https://github.com/morhetz/gruvbox
File: gruvbox-light.rasi
Desc: Gruvbox light color theme for rofi
Author: bardisty <b@bah.im>
Source: https://github.com/bardisty/gruvbox-rofi
Modified: Mon Feb 12 2018 06:06:06 PST -0800
========================================================================== */
* {
/* Theme settings */
highlight: bold italic;
scrollbar: true;
/* Gruvbox light colors */
gruvbox-light-bg0: #fbf1c7;
gruvbox-light-bg0-soft: #f2e5bc;
gruvbox-light-bg2: #d5c4a1;
gruvbox-light-fg0: #282828;
gruvbox-light-fg1: #3c3836;
gruvbox-light-gray: #7c6f64;
gruvbox-light-red-dark: #9d0006;
gruvbox-light-red-light: #cc241d;
gruvbox-light-yellow-dark: #b57614;
gruvbox-light-yellow-light: #d79921;
/* Theme colors */
background: @gruvbox-light-bg0;
background-color: @background;
foreground: @gruvbox-light-fg1;
border-color: @gruvbox-light-gray;
separatorcolor: @border-color;
scrollbar-handle: @border-color;
normal-background: @background;
normal-foreground: @foreground;
alternate-normal-background: @gruvbox-light-bg0-soft;
alternate-normal-foreground: @foreground;
selected-normal-background: @gruvbox-light-bg2;
selected-normal-foreground: @gruvbox-light-fg0;
active-background: @gruvbox-light-yellow-dark;
active-foreground: @background;
alternate-active-background: @active-background;
alternate-active-foreground: @active-foreground;
selected-active-background: @gruvbox-light-yellow-light;
selected-active-foreground: @active-foreground;
urgent-background: @gruvbox-light-red-dark;
urgent-foreground: @background;
alternate-urgent-background: @urgent-background;
alternate-urgent-foreground: @urgent-foreground;
selected-urgent-background: @gruvbox-light-red-light;
selected-urgent-foreground: @urgent-foreground;
}
@import "gruvbox-common.rasi"

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View File

@ -10,19 +10,36 @@ set $right semicolon
set $altright ccaron
# Terminal
set $term termite
#set $term kitty
set $term foot
# Font
font pango:Iosevka Medium 10
font pango:Iosevka SS05 Medium 10
# Kurzor
seat * xcursor_theme Bibata-Modern-Classic 24
# Launcher
set $menu "rofi -combi-modi window,drun -show combi -modi combi -config ~/.local/rofi/config"
set $menu "rofi -combi-modi window,drun,run -show combi -modi combi"
#set $menu j4-dmenu-desktop
#set $menu compgen -c | sort -u | fzf | xargs -r swaymsg -t command exec
#output eDP-1 resolution 2440x1440 scale 2
output eDP-1 resolution 1920x1080 scale 1
output "*" background ~/Pictures/wlp.jpg fill
output eDP-1 {
pos 0 0
resolution 1920x1080
scale 1.2
scale_filter smart
}
#output eDP-1 resolution 2560x1440 scale 2
#output eDP-1 resolution 1920x1080 scale 1
#output "*" background ~/Slike/Wallpapers/1596344206877.jpg fill
#output "*" background "~/riz0m/Photos/sri lanka/IMG_20220220_120730.jpg" fill
#output "*" background "~/Slike/☭/bigstock-Sutjeska-National-Park-Bosnia-63011269.jpg" fill
output "*" background "~/sredstva/dotfiles/ozadje.jpg" fill
# Zamik dobimo z SIRINA / SCALE
output HDMI-A-2 pos 1600 0 scale 1
output HDMI-A-1 pos 1600 0 scale 1
output DP-5 pos 1600 0 scale 1
# start a terminal
bindsym $mod+Return exec $term
@ -76,16 +93,16 @@ bindsym $mod+d exec $menu
#
# name workspaces
set $w1 1:λ
set $w2 2:
set $w3 3:
set $w1 1:
set $w2 2:λ
set $w3 3:
set $w4 4:
set $w5 5:
set $w5 5:
set $w6 6:
set $w7 7:✭❀❤♫
set $w7 7:✭❀❤♫
set $w8 8:☭
set $w9 9:
set $w0 0:
set $w9 9:
set $w0 0:
# switch to workspace
bindsym $mod+1 workspace $w1
@ -114,21 +131,23 @@ bindsym $mod+Shift+0 move container to workspace $w0
bindsym $mod+Tab workspace next
bindsym $mod+Shift+Tab workspace prev
bindsym Mod1+Shift+colon move workspace to output right
bindsym Mod1+Shift+ccaron move workspace to output right
bindsym Mod1+Shift+$right move workspace to output right
bindsym Mod1+Shift+$altright move workspace to output right
bindsym Mod1+Shift+j move workspace to output left
# back and forth between workspaces
bindsym Mod1+Tab workspace back_and_forth
# workspace bindings
assign [class="Firefox"] $w2
assign [class="Firefox"] $w8
assign [class="Gnote"] $w9
assign [class="Slack"] $w4
assign [class="Riot"] $w4
assign [class="Element"] $w4
assign [class="Lollypop"] $w3
assign [class="Transmission"] $w3
assign [class="Nicotine+"] $w3
# Program startup
#exec firefox &
#exec lollypop &
@ -139,7 +158,7 @@ assign [class="Nicotine+"] $w3
# You can "split" the current object of your focus with
# $mod+b or $mod+v, for horizontal and vertical splits
# respectively.
bindsym $mod+b splith
bindsym $mod+h splith
bindsym $mod+v splitv
# Switch the current container between different layout styles
@ -154,7 +173,7 @@ assign [class="Nicotine+"] $w3
bindsym $mod+Shift+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+space focus mode_toggle
bindsym Mod1+space focus mode_toggle
# move focus to the parent container
bindsym $mod+a focus parent
@ -201,18 +220,23 @@ bindsym $mod+r mode "resize"
# Read `man 5 sway-bar` for more information about this section.
bar {
position top
status_command i3blocks
# status_command i3blocks
# status_command i3status-rs
status_command i3status
colors {
background #232323
focused_background #272727E5
background #272727B8
#statusline #ebdbb2E5
statusline #DCDCDC
focused_workspace #555555 #555555 #ffffff
inactive_workspace #232323 #232323 #888888
focused_workspace #555555E5 #555555E5 #ffffff
inactive_workspace #272727E5 #272727E5 #888888
}
font pango:FontAwesome Regular 9, Iosevka Medium 9
font pango:FontAwesome Regular 12, Iosevka SS01 Medium 12
strip_workspace_numbers yes
height 18
height 26
#tray_padding 2
separator_symbol " "
}
include /etc/sway/config.d/*
@ -224,11 +248,121 @@ client.unfocused #222222 #222222 #888888 #292d2e #222222
client.background #222222
# gaps between windows
gaps inner 4
gaps inner 6
smart_gaps on
#smart_borders on
# No titles
for_window [class="^.*"] border pixel 2
#for_window [class="^.*"] border pixel 2
default_border pixel 3
default_floating_border normal
hide_edge_borders smart
# Mouse focus
focus_follows_mouse yes
# KBD layouti
input "type:keyboard" {
xkb_layout us,si
xkb_options grp:win_space_toggle,compose:caps
}
# Touchpad fensi
input "type:touchpad" {
tap enabled
click_method clickfinger
natural_scroll enabled
dwt enabled
scroll_factor 0.25
#pointer_accel 0.5
click_method clickfinger
}
# Radio študent
bindsym Mod1+shift+r exec vlc /home/g1smo/Glasba/rs.m3u
bindsym Mod1+shift+x exec playerctl play-pause
bindsym Mod1+shift+c exec playerctl play-pause
# Zvok
set $vol_down_cmd pamixer -d 5
set $vol_up_cmd pamixer -i 5
set $vol_toggle_cmd pamixer -t
bindsym $mod+shift+d exec "$vol_up_cmd"
bindsym XF86AudioRaiseVolume exec "$vol_up_cmd"
bindsym $mod+shift+s exec "$vol_down_cmd"
bindsym XF86AudioLowerVolume exec "$vol_down_cmd"
bindsym XF86AudioMute exec "$vol_toggle_cmd"
bindsym $mod+shift+a exec "$vol_toggle_cmd"
# GTK tema
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'Arc-Darker'
gsettings set $gnome-schema icon-theme 'Papirus'
gsettings set $gnome-schema cursor-theme 'Adwaita'
}
# Zvetlost zaslona
bindsym XF86MonBrightnessUp exec "brightnessctl set 3%+"
bindsym XF86MonBrightnessDown exec "brightnessctl set 3%-"
# Zunanji skrin
bindsym $mod+p exec "swaymsg output HDMI-A-2 enable"
bindsym $mod+shift+p exec "swaymsg output HDMI-A-2 disable"
# Skrinsot
bindsym 0xff61 exec ~/bin/screenshot
# Scaling toggle
bindsym $mod+i exec "swaymsg output eDP-1 scale 1"
bindsym $mod+o exec "swaymsg output eDP-1 scale 1.2"
bindsym $mod+y exec "swaymsg output HDMI-A-1 pos 0 0 && swaymsg output eDP-1 pos 1920 0"
bindsym $mod+u exec "swaymsg output HDMI-A-1 pos 1600 0 && swaymsg output eDP-1 pos 0 0"
bindsym $mod+space exec "/home/g1smo/bin/get-layout.sh"
######
# AUTOSTART
###
# Fix za pocasen GTK app startup
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
# transparenca nekativnih oken
exec ~/bin/inactive-windows-transparency.py
# Desktop notifikacije
exec mako --default-timeout=5000 --icon-path /usr/share/icons/Numix
# Autotiling https://github.com/nwg-piotr/autotiling
exec ~/bin/autotiling.py
# Zagoni programov razporejeni na workspejse
workspace 1:
#exec firefox
exec librewolf
workspace 2:λ
exec emacs
workspace 3:
exec thunderbird
workspace 4:
#exec revolt
#exec element-desktop --enable-features=UseOzonePlatform --ozone-platform=wayland
exec element-desktop
workspace 9:
exec gnome-keyring-daemon --start --control-directory=/run/user/1000/keyring
exec keepassxc
# autolock in te fore
#exec swayidle -w timeout 300 'swaylock -f -c 000000' timeout 600 'swaymsg"output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -f-c 000000'
# prazna baterija tezenje
exec ~/bin/swaynag-battery
# Lebdeca okna (najdes preko "swaymsg -t get_tree")
for_window [app_id="org.keepassxc.KeePassXC"] floating enable

29
.emacs.d/bookmarks 100644
View File

@ -0,0 +1,29 @@
;;;; Emacs Bookmark Format Version 1;;;; -*- coding: utf-8-emacs; mode: lisp-data -*-
;;; This format is meant to be slightly human-readable;
;;; nevertheless, you probably don't want to edit it.
;;; -*- End Of Bookmark File Format Version Stamp -*-
(("org-capture-last-stored-marker"
(filename . "~/Dokumenti/zapiski.org")
(front-context-string . "** TODO \n [2023")
(rear-context-string . "th composer\",]]\n")
(position . 196)
(last-modified 25762 52373 677189 163000))
("org-refile-last-stored"
(filename . "~/Dokumenti/zapiski.org")
(front-context-string . "** TODO \n [2023")
(rear-context-string . "th composer\",]]\n")
(position . 196)
(last-modified 25762 52373 676796 964000))
("org-capture-last-stored"
(filename . "~/Dokumenti/zapiski.org")
(front-context-string . "** TODO \n [2023")
(rear-context-string)
(position . 9)
(last-modified 25762 52371 13354 624000))
("IRS"
(filename . "~/rs/megla-sync/org/irs.org")
(front-context-string . "- nov X, dizajn\n")
(rear-context-string . "fadeout teksta)\n")
(position . 359)
(last-modified 25583 44635 333675 223000))
)

666
.emacs.d/init.el 100644
View File

@ -0,0 +1,666 @@
;;;;;;;;;;;;
;; PAKETI ;;
;;;;;;;;;;;;
;(setq use-package-compute-statistics t)
(setq debug-on-error t)
;; Set up package.el to work with MELPA
(require 'package)
;; Loudamo melpa paketice
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
(package-initialize)
;; Stare funkcije za namescanje paketov. Od use-package z :ensure naprej vec ne
;; Sekvence n'shiat
;(require 'seq)
;; Kaj vse naj bo namesceno?
;(setq paketi '())
;(setq nema (seq-filter (lambda (p) (not (package-installed-p p))) paketi))
;(when nema
; (package-initialize)
; (package-refresh-contents)
; (dolist (p nema)
; (package-install p)))
;(use-package benchmark-init
; :ensure t
; :config
; :disabled t
; (benchmark-init/activate)
; (add-hook 'after-init-hook 'benchmark-init/deactivate))
;;;;;;;;;;
;; EVIL ;;
;;;;;;;;;;
(use-package evil
:ensure t
:init (setq evil-want-integration t
evil-want-keybinding nil)
:config
;; Evil mode toggle <3
(evil-mode 1)
(defvar my-header-map (make-sparse-keymap)
"Mapiranje za evil bliznjice (leader trigger)")
;; Keybindings!
(defvar my-leader-map (make-sparse-keymap)
"Mapiranje za evil bliznjice (leader trigger)")
;; WINDOW ukazi
(define-prefix-command 'evil-window-map)
(define-key evil-window-map "j" 'windmove-down)
(define-key evil-window-map "k" 'windmove-up)
(define-key evil-window-map "h" 'windmove-left)
(define-key evil-window-map "l" 'windmove-right)
(define-key evil-window-map "s" 'split-window-below)
(define-key evil-window-map "v" 'split-window-right)
(define-key my-leader-map "w" 'evil-window-map)
;; BUFFER ukazi
(define-prefix-command 'evil-buffer-map)
(define-key evil-buffer-map "b" 'ivy-switch-buffer)
(define-key evil-buffer-map "p" 'previous-buffer)
(define-key evil-buffer-map "n" 'next-buffer)
(define-key evil-buffer-map "e" 'eval-buffer)
(defun switch-to-scratch () (interactive) (switch-to-buffer "*scratch*"))
(define-key evil-buffer-map "s" 'switch-to-scratch)
(defun switch-to-home () (interactive) (switch-to-buffer "*GNU Emacs*"))
(define-key evil-buffer-map "h" 'switch-to-home)
(defun open-config () (interactive) (find-file-literally "~/.emacs.d/init.el"))
(define-key evil-buffer-map "c" 'open-config)
(define-key my-leader-map "b" 'evil-buffer-map)
;; EVAL ukazi
(define-prefix-command 'eval-eval-map)
(define-key evil-eval-map "b" 'eval-buffer)
(define-key evil-eval-map "e" 'eval-expression)
(define-key evil-eval-map "r" 'eval-region)
(define-key my-leader-map "e" 'evil-eval-map)
;; FILE ukazi
(define-prefix-command 'evil-file-map)
(define-key evil-file-map "f" 'counsel-find-file)
(defun load-config () (interactive) (find-file "~/.emacs.d/init.el"))
(define-key evil-file-map "c" 'load-config)
(define-key my-leader-map "f" 'evil-file-map)
;; ORG ukazi
(define-prefix-command 'evil-org-map)
(define-key evil-org-map "c" 'org-capture)
(define-key evil-org-map "a" 'org-agenda)
(define-key my-leader-map "o" 'evil-org-map)
;; Projectile map!
(define-key my-leader-map "p" 'projectile-command-map)
;; Odpri ORG linke kar s tipko enter
(defun odpri-org-link ()
(interactive)
(if (org-in-regexp org-link-any-re nil t)
(org-open-at-point)
nil))
(define-key evil-normal-state-map (kbd "RET") 'odpri-org-link)
;; Mapiranje ukazov
;(define-key evil-normal-state-map (kbd "SPC") my-leader-map)
;(evil-global-set-key 'motion (kbd "SPC") my-leader-map)
;(evil-local-set-key 'motion (kbd "SPC") my-leader-map)
;(define-key evil-normal-state-map (kbd "SPC") my-leader-map)
)
(use-package general
:ensure t
:after evil
:config
(general-evil-setup)
(general-nmap
:prefix "SPC"
:prefix-map 'my-leader-map
;; Hitri buffer shortcuti
"[" 'previous-buffer
"]" 'next-buffer
"," 'ivy-switch-buffer
"RET" 'counsel-bookmark
"/" 'counsel-rg
"t" 'treemacs-add-and-display-current-project)
(general-nmap
:prefix "SPC"
:states 'normal
:keymaps 'dired-mode-map
:prefix-map 'my-leader-map
;; Hitri buffer shortcuti
"[" 'previous-buffer
"]" 'next-buffer
"," 'ivy-switch-buffer
"RET" 'counsel-bookmark
"/" 'counsel-rg
"t" 'treemacs-add-and-display-current-project))
;; Dodatne evil bližnjice
(use-package evil-collection
:ensure t
:after evil
:config
(evil-collection-init))
;; Evil orgmode
(use-package evil-org
:ensure t
:after (evil org)
:hook ((org-mode . (lambda () evil-org-mode)))
:init
(setq org-src-fontify-natively t)
:config
(require 'evil-org-agenda)
(evil-org-set-key-theme '(navigation insert textobjects additional calendar))
(evil-org-agenda-set-keys))
(use-package treemacs-evil :ensure t :after treemacs)
;;;;;;;;;
;; GUI ;;
;;;;;;;;;
;; Menu bar off
(menu-bar-mode -1)
(tool-bar-mode -1)
;; Brez ikon zgoraj
(setq ns-use-proxy-icon nil)
(setq frame-title-format nil)
; Skrij scrollbar
(scroll-bar-mode -1)
;; Razmiki med okni
(setq window-divider-default-bottom-width 3)
(window-divider-mode t)
;; No dialog box plx
(setq use-dialog-box nil)
;; Barvna tema
(use-package gruvbox-theme
:ensure t
:config
(load-theme 'gruvbox-dark-medium t))
;(load-theme 'hemisu-light t) ;; hemisu-theme paket
;(require 'doom-themes)
;(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
; doom-themes-enable-italic t) ; if nil, italics is universally disabled
;(load-theme 'doom-gruvbox t)
;(doom-themes-org-config)
;; Doom modeline - lepsi status bar spodaj
(use-package doom-modeline
:ensure t
; :disabled t
:config
(doom-modeline-mode))
;; Lepse ikone!
(use-package all-the-icons :ensure t)
;; !!! ;;
;; !!! Pognat je treba (1x) all-the-icons-install-fonts !!! ;;
;; !!! ;;
;; y/n namesto yes / no
(fset 'yes-or-no-p 'y-or-n-p)
;; Oooo gladko skrolanje! (Emacs 29+)
(pixel-scroll-precision-mode)
;;;;;;;;;;;
;; TEKST ;;
;;;;;;;;;;;
;; Sirina taba ter spejsi kot distancniki
(setq-default tab-width 2)
(setq-default indent-tabs-mode nil)
;; Editorconfig formatiranje fajlov
(use-package editorconfig
:ensure t
:config
(editorconfig-mode 1))
;; Text wrap na sirino oken
(global-visual-line-mode)
;; Stevilke vrstic
(global-display-line-numbers-mode)
;; Lepse file drevo
(use-package treemacs
:ensure t
:defer t
:hook ((treemacs-mode . (lambda () ;; Brez stevilk vrstic v file drevesu!
(display-line-numbers-mode -1)))))
(use-package treemacs-projectile :ensure t :after treemacs)
;; Uporabi drevesne razveljavitve, undo tree
(use-package undo-tree
:ensure t
:config
(global-undo-tree-mode)
(evil-set-undo-system 'undo-tree)
;; Drevo razveljavitev shrani v emacsov folder
(setq undo-tree-history-directory-alist '(("." . "~/.emacs.d/undo"))))
;; Markdown podpora
(use-package markdown-mode :ensure t)
;; Zapiraj zaklepaje
(use-package smartparens
:ensure t
:config
(smartparens-global-mode 1))
;;;;;;;;;;;;;;;;;;;
;; PROGRAMIRANJE ;;
;;;;;;;;;;;;;;;;;;;
;; Pametni tabi
(use-package smart-tabs-mode
:ensure t
:disabled t
:after js2-mode
:config
;(smart-tabs-insinuate javascript scheme)
;; Pametni tabi za js2-mode
(smart-tabs-advice js2-indent-line js2-basic-offset))
;; Twig nacin (in drug web)
(use-package web-mode :ensure t)
;; Lepšanje web kode
(use-package web-beautify :ensure t)
;; Kompletiranje ukazov
(use-package company
:ensure t
:defer t
:config
(setq lsp-completion-provider :capf)
(company-mode))
;; LSP potrebuje dependency iz npm: "sudo npm install -g vue-language-server
(use-package lsp-mode
:ensure t
:after company)
;; Vuejs moud
(use-package vue-mode
:ensure t
:mode "\\.vue\\'"
:config (add-hook 'vue-mode-hook #'lsp))
;; PHP ko je treba
(use-package php-mode
:ensure t
:mode "\\.(php|module)\\'")
;; Guile scheme
(use-package geiser
:ensure t
:defer t)
(use-package geiser-guile
:ensure t
:after geiser-guile
:init (setq scheme-program-name "guile"))
;; Racket podpora
(use-package racket-mode
:ensure t
:mode "\\.rkt\\'")
;; Rainbowz
(use-package rainbow-delimiters
:ensure t
:hook ((prog-mode . rainbow-delimiters-mode)))
;; YAML konfiguracije
(use-package yaml-mode
:ensure t
:mode "\\.yaml\\'")
;; Extempore lajv kodiranje!
(use-package extempore-mode
:ensure t
:mode "\\.xtm\\'")
;; Syntax checker
(use-package flycheck
:ensure t
:defer t)
;; Vmesnik za GIT
(use-package magit
:ensure t
:defer t)
;; Drupal pomocnik
(use-package drupal-mode
:ensure t
:after php-mode)
;; Oblikovanje kode za razne jezike
(use-package format-all :ensure t)
;; Tidal cycles live coding
(use-package tidal
:ensure t
:defer t
:init
;; Tidal cycles lokacija
(setq tidal-boot-script-path "~/.cabal/store/ghc-9.0.2/tidal-1.9.2-8e9cf9a217d87a6950880512f51893a6434970cd0690e831c563fc64ebd5de8f/share/BootTidal.hs"))
;; Config fajli
(use-package toml-mode
:ensure t)
;; js2 za javascript
(use-package js2-mode
:ensure t
:mode "\\.js\\'"
:config
;(add-to-list 'auto-mode-alist '("\\.js$" . js2-mode))
(setq js2-strict-missing-semi-warning nil
js2-missing-semi-one-line-override nil
js2-basic-offset 2
js-indent-level 2
indent-tabs-mode nil
tab-width 2))
;; Še en mode za JS, bolj react
(use-package rjsx-mode
:ensure t
:after js2-mode)
;; css indent
(setq css-indent-level 2)
(setq css-indent-offset 2)
;;;;;;;;;;;;;
;; ORGMODE ;;
;;;;;;;;;;;;;
;; Stanja taskov
(setq org-todo-keywords
'((sequence "TODO" "V DELU" "TESTIRANJE" "DOKUMENTIRANJE" "KONČANO")))
;; Aktiviraj ob .org fajlih
(add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
;; CalDav v orgmode!
(use-package org-caldav
:ensure t
:after org-mode
:init
(setq org-caldav-calendar-id "org"
org-caldav-files '("~/Dokumenti/todo.org")
org-caldav-inbox "~/Dokumenti/koledar-in.org"
org-caldav-url "https://goba.rhiz0.me/remote.php/dav/calendars/g1smo"
org-icalendar-timezone "Europe/Ljubljana"))
;; Nacin za pisanje brez distrakcij
(use-package writeroom-mode
:ensure t
:config
:hook ((org-mode . (lambda ()
(display-line-numbers-mode -1)))))
;; HTMLize za barvanje kode v org izvozu v HTML
(use-package htmlize
:after org-mode
:ensure t)
;; Lokacije ORG agenda vnosov
(setq org-agenda-files (list "~/rs/org" "~/Dokumenti"))
;; Zapiski
(setq org-default-notes-file "~/Dokumenti/zapiski.org")
;; Zacnimo na ponedeljek, kot se spodobi
(setq calendar-week-start-day 1)
;; DOT diagrami
(org-babel-do-load-languages
'org-babel-load-languages
'((dot . t)))
;; enable ditaa
(org-babel-do-load-languages
'org-babel-load-languages
'((ditaa . t)))
;; Mermaid v orgmode (diagrami)
(use-package ob-mermaid
:ensure t
:defer t
:config
;; sudo npm install -g @mermaid-js/mermaid-cli
(setq ob-mermaid-cli-path "/usr/local/bin/mmdc")
(org-babel-do-load-languages
'org-babel-load-languages
'((mermaid . t)
(scheme . t))))
;; Swiper search
(use-package swiper
:ensure t
:config
(global-set-key "\C-s" 'swiper))
;; Izboljsani default ukazi bolj prijazni
(use-package counsel
:ensure t
:config
(global-set-key (kbd "M-x") 'counsel-M-x)
(global-set-key (kbd "C-x C-f") 'counsel-find-file)
(global-set-key (kbd "<f1> f") 'counsel-describe-function)
(global-set-key (kbd "<f1> v") 'counsel-describe-variable)
(global-set-key (kbd "<f1> o") 'counsel-describe-symbol)
(global-set-key (kbd "<f1> l") 'counsel-find-library)
(global-set-key (kbd "<f2> i") 'counsel-info-lookup-symbol)
(global-set-key (kbd "<f2> u") 'counsel-unicode-char)
(global-set-key (kbd "C-c g") 'counsel-git)
(global-set-key (kbd "C-c j") 'counsel-git-grep)
(global-set-key (kbd "C-c k") 'counsel-ag)
(global-set-key (kbd "C-x l") 'counsel-locate)
(global-set-key (kbd "C-S-o") 'counsel-rhythmbox)
(define-key minibuffer-local-map (kbd "C-r") 'counsel-minibuffer-history))
;; Iskanje po fajlih (fulltext)
(use-package rg
:ensure t
:defer t
:config
(rg-enable-default-bindings))
;;;;;;;;;;;
;; Razno ;;
;;;;;;;;;;;
;; IVY
(use-package ivy
:ensure t
:config
(ivy-mode)
(setq ivy-use-virtual-buffers t)
(setq enable-recursive-minibuffers t)
(local-set-key (kbd "C-j") 'ivy-next-line)
(local-set-key (kbd "C-k") 'ivy-prevous-line)
(global-set-key (kbd "C-c C-r") 'ivy-resume)
(global-set-key (kbd "<f6>") 'ivy-resume))
;; Vedno sledi symlinkom v git
(setq vc-follow-symlinks t)
;; Projektni mgmt
(use-package projectile
:ensure t
:config (projectile-mode t))
;; Pomoc
;(use-package 'helpful :ensure t)
;; Prikazi nedavne ukaze prej v M-x
(use-package smex :ensure t)
;; Pomoc za keybinde
(use-package which-key
:ensure t
:config
;; Allow C-h to trigger which-key before it is done automatically
(setq which-key-show-early-on-C-h t)
;; make sure which-key doesn't show normally but refreshes quickly after it is
;; triggered.
(setq which-key-idle-delay 0.4)
(setq which-key-idle-secondary-delay 0.05)
(which-key-mode))
;; Prikazi startup time
(add-to-list 'after-init-hook
(lambda ()
(message (concat "emacs (" (number-to-string (emacs-pid)) ") started in " (emacs-init-time)))))
;; Backup fajli emacsa
(setq
backup-by-copying t ; don't clobber symlinks
backup-directory-alist
`(("." . ,(concat user-emacs-directory "backups")))
backup-directory-alist
`(("." . ,(concat user-emacs-directory "saves")))
delete-old-versions t
kept-new-versions 6
kept-old-versions 2
version-control t) ; use versioned backups
;; Ne delaj lock fajlov (smetijo namrec)
(setq create-lockfiles nil)
;; File asociacije
(use-package openwith
:ensure t
:config
(setq openwith-associations '(("\\.pdf\\'" "xdg-open" (file))))
(openwith-mode t))
;; Kolaborativno urejanje
(use-package crdt
:ensure t)
;;;;;;;;;;;;
;; CUSTOM ;;
;;;;;;;;;;;;
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(connection-local-criteria-alist
'(((:application tramp)
tramp-connection-local-default-system-profile tramp-connection-local-default-shell-profile)))
'(connection-local-profile-alist
'((tramp-connection-local-darwin-ps-profile
(tramp-process-attributes-ps-args "-acxww" "-o" "pid,uid,user,gid,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" "-o" "state=abcde" "-o" "ppid,pgid,sess,tty,tpgid,minflt,majflt,time,pri,nice,vsz,rss,etime,pcpu,pmem,args")
(tramp-process-attributes-ps-format
(pid . number)
(euid . number)
(user . string)
(egid . number)
(comm . 52)
(state . 5)
(ppid . number)
(pgrp . number)
(sess . number)
(ttname . string)
(tpgid . number)
(minflt . number)
(majflt . number)
(time . tramp-ps-time)
(pri . number)
(nice . number)
(vsize . number)
(rss . number)
(etime . tramp-ps-time)
(pcpu . number)
(pmem . number)
(args)))
(tramp-connection-local-busybox-ps-profile
(tramp-process-attributes-ps-args "-o" "pid,user,group,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" "-o" "stat=abcde" "-o" "ppid,pgid,tty,time,nice,etime,args")
(tramp-process-attributes-ps-format
(pid . number)
(user . string)
(group . string)
(comm . 52)
(state . 5)
(ppid . number)
(pgrp . number)
(ttname . string)
(time . tramp-ps-time)
(nice . number)
(etime . tramp-ps-time)
(args)))
(tramp-connection-local-bsd-ps-profile
(tramp-process-attributes-ps-args "-acxww" "-o" "pid,euid,user,egid,egroup,comm=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" "-o" "state,ppid,pgid,sid,tty,tpgid,minflt,majflt,time,pri,nice,vsz,rss,etimes,pcpu,pmem,args")
(tramp-process-attributes-ps-format
(pid . number)
(euid . number)
(user . string)
(egid . number)
(group . string)
(comm . 52)
(state . string)
(ppid . number)
(pgrp . number)
(sess . number)
(ttname . string)
(tpgid . number)
(minflt . number)
(majflt . number)
(time . tramp-ps-time)
(pri . number)
(nice . number)
(vsize . number)
(rss . number)
(etime . number)
(pcpu . number)
(pmem . number)
(args)))
(tramp-connection-local-default-shell-profile
(shell-file-name . "/bin/sh")
(shell-command-switch . "-c"))
(tramp-connection-local-default-system-profile
(path-separator . ":")
(null-device . "/dev/null"))))
'(custom-safe-themes
'("db3e80842b48f9decb532a1d74e7575716821ee631f30267e4991f4ba2ddf56e" "d14f3df28603e9517eb8fb7518b662d653b25b26e83bd8e129acea042b774298" "7661b762556018a44a29477b84757994d8386d6edee909409fabe0631952dad9" default))
'(iswitchb-mode t)
'(org-agenda-files
'("~/Dokumenti/todo.org" "/home/g1smo/Dokumenti/plac.org" "/home/g1smo/rs/org/2021-05-25-spletna-stran.org" "/home/g1smo/rs/org/2021-07-02-spletna.org" "/home/g1smo/rs/org/README.org" "/home/g1smo/rs/org/git-delavnica.org" "/home/g1smo/rs/org/irs-plan-period.org" "/home/g1smo/rs/org/irs-plan.org" "/home/g1smo/rs/org/irs.org" "/home/g1smo/rs/org/irs_old.org" "/home/g1smo/rs/org/kaki.org" "/home/g1smo/rs/org/prepoznava-komadov.org" "/home/g1smo/Dokumenti/agenda.org" "/home/g1smo/Dokumenti/blurb.org" "/home/g1smo/Dokumenti/delo.org" "/home/g1smo/Dokumenti/emanat.org" "/home/g1smo/Dokumenti/kompot.org" "/home/g1smo/Dokumenti/ljudmila.org" "/home/g1smo/Dokumenti/mu4e-setup.org" "/home/g1smo/Dokumenti/muska.org" "/home/g1smo/Dokumenti/org.org" "/home/g1smo/Dokumenti/projekti.org" "/home/g1smo/Dokumenti/recepti.org" "/home/g1smo/Dokumenti/samozaposlitev-prijava.org" "/home/g1smo/Dokumenti/shta.org" "/home/g1smo/Dokumenti/wtf.org" "/home/g1smo/Dokumenti/zapisi.org"))
'(package-selected-packages
'(tree-sitter guix toml-mode smartparens crdt.el openwith evil-org-agenda company-org-block org-block-capf writeroom-mode racket-mode htmlize company-lsp web-mode tidal org-caldav format-all company-phpactor phpactor extempore-mode ob-mermaid use-package lsp-mode yaml-mode drupal-mode magit markdown-mode flycheck arduino-mode rjsx-mode gdscript-mode rainbow-delimiters which-key paredit geiser-guile geiser web-beautify vue-mode treemacs-evil treemacs-projectile treemacs smart-tabs-mode smart-tabs js2-mode smex clojure-mode helpful doom-themes counsel swiper all-the-icons doom-modeline evil-collection fennel-mode rg ivy company projectile evil))
'(tool-bar-mode nil)
'(warning-minimum-level :error)
'(which-key-mode t))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(default ((t (:family "Iosevka SS01" :foundry "BE5N" :slant normal :weight semi-bold :height 120 :width normal)))))

14
.gitconfig 100644
View File

@ -0,0 +1,14 @@
[alias]
prd = pull --rebase
co = checkout
[user]
name = Jurij Podgoršek
email = jurij@kompot.si
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
[pull]
rebase = false

View File

@ -1,25 +0,0 @@
[Settings]
gtk-application-prefer-dark-theme=0
gtk-theme-name=Arc-Darker
gtk-fallback-icon-theme=Numix
gtk-icon-theme-name=Numix-Square
gtk-font-name=Lato 8
gtk-auto-mnemonics=1
gtk-visible-focus=automatic
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
gtk-xft-rgba=rgb
gtk-cursor-theme-name=Adwaita
gtk-cursor-theme-size=24
gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=0
gtk-menu-images=0
gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle="hintfull"
gtk-xft-rgba="rgb"
gtk-modules="gail:atk-bridge"

6
.guile 100644
View File

@ -0,0 +1,6 @@
;; Readline fix (za smerne tipke v replu)
(use-modules (ice-9 readline))
(activate-readline)
;; Dodaj lokalno kompajlane knjižnice
(append! %load-compiled-path '("/usr/local/lib/guile/3.0/ccache" "/usr/local/lib/guile/3.0/site-ccache"))

View File

@ -25,40 +25,39 @@
# The top properties below are applied to every block, but can be overridden.
# Each block command defaults to the script name to avoid boilerplate.
command=/usr/lib/i3blocks/$BLOCK_NAME
separator_block_width=15
#[mediaplayer]
[mediaplayer]
#label=♪
#label=
label=
#instance=Lollypop
#interval=5
#signal=10
command="/home/g1smo/sredstva/i3blocks-contrib/mediaplayer/mediaplayer"
#instance=mpd
interval=5
signal=10
#[monitors]
#label=
#interval=once
#command="/home/g1smo/Sredstva/i3blocks-contrib/monitor_manager/monitor_manager"
#command="/home/g1smo/sredstva/i3blocks-contrib/monitor_manager/monitor_manager"
[brightness]
label=
color=#F8FF05
command=echo -n "$label $(xbacklight -get)%"
command=echo -n "$label $(xbacklight -get | sed -e 's/\.[0-9]\+//')%"
interval=once
signal=5
[volume-pulseaudio]
#command=/home/g1smo/Sredstva/i3blocks-contrib/volume-pulseaudio/volume-pulseaudio -S -F "${SYMB}${VOL}%"
command=LONG_FORMAR="${VOL}" /home/g1smo/Sredstva/i3blocks-contrib/volume-pulseaudio/volume-pulseaudio -S
command=/home/g1smo/sredstva/i3blocks-contrib/volume-pulseaudio/volume-pulseaudio -S -F "\${SYMB}\${VOL}%"
#label=
#SUBSCRIBE=1
#LONG_FORMAT="$SYMB$VOL%"
interval=persist
[memory]
#label=MEM
label=
color=#A85FFF
command=echo -n "$label ";/home/g1smo/Sredstva/i3blocks-contrib/memory/memory | sed -r 's/ \(.+//'
command=echo -n "$label ";/home/g1smo/sredstva/i3blocks-contrib/memory/memory | sed -r 's/ \(.+//'
interval=10
#[memory]
@ -72,12 +71,25 @@ interval=10
# The directory defaults to $HOME if the instance is not specified.
# The script may be called with a optional argument to set the alert
# (defaults to 10 for 10%).
[disk]
#label=HOME
[disk-root]
label=
color=#AAAAAA
command=echo -n "$label ";/home/g1smo/Sredstva/i3blocks-contrib/disk/disk
#instance=/mnt/data
command=echo -n "$label ";/home/g1smo/sredstva/i3blocks-contrib/disk/disk
instance=/
interval=30
[disk-home]
label=
color=#AAAAAA
command=echo -n "$label ";/home/g1smo/sredstva/i3blocks-contrib/disk/disk
instance=/home
interval=30
[disk-var]
label=
color=#AAAAAA
command=echo -n "$label ";/home/g1smo/sredstva/i3blocks-contrib/disk/disk
instance=/var
interval=30
[iface]
@ -87,7 +99,7 @@ interval=30
color=#33DD00
interval=10
separator=false
command=/home/g1smo/Sredstva/i3blocks-contrib/iface/iface
command=/home/g1smo/sredstva/i3blocks-contrib/iface/iface
[wifi]
#instance=wlp4s0
@ -95,7 +107,7 @@ instance=wlp2s0
interval=10
label=
color=#11DD00
command=echo -n "$label ";/home/g1smo/Sredstva/i3blocks-contrib/wifi/wifi
command=echo -n "$label ";/home/g1smo/sredstva/i3blocks-contrib/wifi/wifi
#separator=false
#[bandwidth]
@ -111,12 +123,13 @@ command=echo -n "$label ";/home/g1smo/Sredstva/i3blocks-contrib/wifi/wifi
#label=
#label=
label=
#command=/home/g1smo/Sredstva/i3blocks-contrib/cpu_usage/cpu_usage | sed -r 's/^([0-9])\./\ \1\./'
command=echo -n "$label ";/home/g1smo/Sredstva/i3blocks-contrib/cpu_usage/cpu_usage -d 1
#command=/home/g1smo/sredstva/i3blocks-contrib/cpu_usage/cpu_usage | sed -r 's/^([0-9])\./\ \1\./'
command=echo -n "$label ";/home/g1smo/sredstva/i3blocks-contrib/cpu_usage/cpu_usage -d 1
color=#FA0009
interval=1
align=right
min_width= 99.0%
min_width= 99.0%
#command=/home/g1smo/sredstva/i3blocks-contrib/cpu_usage/cpu_usage | sed -r 's/^([0-9])\./\ \1\./'
[load_average]
#label=
@ -124,22 +137,22 @@ min_width= 99.0%
label=
color=#70E2FF
interval=3
command=echo -n "$label ";/home/g1smo/Sredstva/i3blocks-contrib/load_average/load_average
command=echo -n "$label ";/home/g1smo/sredstva/i3blocks-contrib/load_average/load_average
[key_layout]
label=⌨
interval=5
#command="/home/h1smo/Sredstva/i3blocks-contrib/key_layout/key_layout"
#command="/home/h1smo/sredstva/i3blocks-contrib/key_layout/key_layout"
command=echo -n "$label ";xkb-switch
#interval=persist
#command="/home/h1smo/Sredstva/i3blocks-contrib/kbdd_layout/kbdd_layout"
#command="/home/h1smo/sredstva/i3blocks-contrib/kbdd_layout/kbdd_layout"
[battery2]
#label=BAT
#label=⚡
#instance=1
#command=count=$(acpi -b | wc -l); sum=$(acpi -b | egrep -o '[0-9]{1,3}%' | tr -d '%' | xargs -I% echo -n '+%'); echo '' $(( sum / count ))%
command="/home/g1smo/Sredstva/i3blocks-contrib/battery2/battery2"
command="/home/g1smo/sredstva/i3blocks-contrib/battery2/battery2"
interval=30
markup=pango
@ -147,7 +160,7 @@ markup=pango
label=
color=#ffffff
command=echo -n "$label ";date '+%a %d %b'
#command=/home/g1smo/Sredstva/i3blocks-contrib/rofi-calendar/rofi-calendar
#command=/home/g1smo/sredstva/i3blocks-contrib/rofi-calendar/rofi-calendar
interval=5
separator=false
@ -155,12 +168,12 @@ separator=false
#command=date '+%Y-%m-%d %H:%M:%S'
label=
color=#ffffff
command=echo -n "$label ";date '+%H:%M'
command=echo -n "$label";date '+%H:%M'
interval=5
[shutdown]
full_text=
command=/home/g1smo/Sredstva/i3blocks-contrib/shutdown_menu/shutdown_menu -c
command=/home/g1smo/sredstva/i3blocks-contrib/shutdown_menu/shutdown_menu -c
#interval=once
# OpenVPN support

80
.i3status.conf 100644
View File

@ -0,0 +1,80 @@
# i3status configuration file.
# see "man i3status" for documentation.
# It is important that this file is edited as UTF-8.
# The following line should contain a sharp s:
# ß
# If the above line is not correctly displayed, fix your editor first!
general {
colors = true
interval = 5
color_good = "#2AA198"
color_bad = "#586E75"
color_degraded = "#DC322F"
separator = ""
}
order += "ipv6"
order += "ethernet _first_"
order += "disk /"
order += "disk /home"
order += "wireless _first_"
order += "load"
order += "memory"
order += "volume master"
order += "battery all"
order += "tztime local"
wireless _first_ {
#format_up = "W: (%quality at %essid) %ip"
format_up = " %essid %ip %bitrate "
format_down = "  "
}
ethernet _first_ {
# if you use %speed, i3status requires root privileges
format_up = "E: %ip (%speed)"
format_down = "E: "
}
battery all {
format = " %status %percentage %remaining "
status_bat = ""
status_chr = ""
status_full = ""
status_unk = "?"
threshold_type = time
}
tztime local {
format = "%d.%m.%Y  %H:%M"
}
load {
format = " %1min"
}
disk "/" {
format = " %avail"
}
disk "/home" {
format = " %avail "
}
ipv6 {
format_up = "IPv6 up"
#format_down = "no IPv6"
}
memory {
format = " %used "
}
volume master {
device = "pulse"
format = " %volume"
format_muted = ""
mixer = "Master"
}

View File

@ -3,5 +3,6 @@ rofi.color-urgent: #002d303b, #cc6666, #e52d303b, #a54242, #f9f9f9
rofi.color-active: #002d303b, #b5bd68, #e42d303b, #8c9440, #f9f9f9
rofi.color-window: #f22d303b, #7c8389, #1d1f21
rofi.separator-style: solid
rofi.font: terminus 13
rofi.font: Iosevka 11
rofi.theme: ~/.config/rofi/themes/gruvbox/gruvbox-dark.rasi

69
.profile 100644
View File

@ -0,0 +1,69 @@
. /etc/profile
# <3 default editor (za manjse urejanje)
export EDITOR="vim"
export VISUAL="vim"
# Nek Java fix?
export NLS_LANG=American_America.UTF8
# Guile Zadeve
export GUILE_WARN_DEPRECATED="detailed"
# PhantomJS binary location
export PHANTOMJS_BIN=/usr/bin/phantomjs
# emacspeak speech server
export DTK_PROGRAM=espeak
# Rust paketi
export PATH="$HOME/.local/bin:$HOME/.cargo/bin:$PATH"
# User bin
export PATH="$HOME/bin:$PATH"
# Firefox webrender
export MOZ_WEBRENDER=1
# Wayland pls!
export KITTY_ENABLE_WAYLAND=1
export MOZ_ENABLE_WAYLAND=1
#export XDG_SESSION_TYPE=wayland
# Tole bojda ni dobra ideja (pravi wiki!)
#export GDK_BACKEND=wayland
# QT nastavitve
#export QT_QPA_PLATFORMTHEME="qt5ct"
# GTK izgled: sudo apt install qt5-style-plugins
export QT_QPA_PLATFORMTHEME=gtk
export QT_FONT_DPI=95
export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=lcd -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel $_JAVA_OPTIONS"
export JAVA_FONTS="/usr/share/fonts/TTF"
#export QT_QPA_PLATFORM=wayland-egl
export QT_WAYLAND_FORCE_DPI=physical
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
export _JAVA_AWT_WM_NONREPARENTING=1
# Guile
export GUILE_LOAD_COMPILED_PATH="/usr/local/lib/guile/3.0/ccache:/usr/local/lib/guile/3.0/site-ccache"
export GUILE_SITE_DIR="$HOME/.local/guile/site_dir"
# (FULL)Screen share
export XDG_CURRENT_DESKTOP=sway
# Guix
#export GUIX_PACKAGE_PATH="$HOME/projekti/guix-paketi # guix channel!
#export GUIX_LOCPATH="$HOME/.guix-profile/lib/locale"
#export GUIX_PROFILE="$HOME/.guix-profile"
#export XDG_DATA_DIRS="/usr/local/share:/usr/share:$XDG_DATA_DIRS"
#export XDG_DATA_DIRS="${GUIX_PROFILE}/share${XDG_DATA_DIRS:+:}$XDG_DATA_DIRS"
#export PATH="$HOME/.config/guix/current/bin:$PATH"
#. "$GUIX_PROFILE/etc/profile"
# Loadamo sway na tty1!
# If running from tty1 start sway
#if [ "$(tty)" = "/dev/tty1" ]; then
# QT_QPA_PLATFORM=wayland-egl SDL_VIDEODRIVER=wayland exec sway
#fi

View File

@ -67,6 +67,12 @@ This function should only modify configuration layer settings."
sql
nginx
coffeescript
racket
go
mu4e
lua
syntax-checking
tern
;; Disable flychecker
(syntax-checking :variables syntax-checking-enable-by-default nil)
@ -102,7 +108,10 @@ This function should only modify configuration layer settings."
haskell-mode
tidal
htmlize
fireplace)
fireplace
arduino-mode
fennel-mode
elpher)
;; A list of packages that cannot be updated.
dotspacemacs-frozen-packages '()
@ -225,7 +234,7 @@ It should only modify the values of Spacemacs settings."
;; List of themes, the first of the list is loaded when spacemacs starts.
;; Press `SPC T n' to cycle to the next theme in the list (works great
;; with 2 themes variants, one dark and one light)
dotspacemacs-themes '(gruvbox-dark-medium
dotspacemacs-themes '(gruvbox-dark-soft
suscolors
tao-yang
tao-yin
@ -252,7 +261,7 @@ It should only modify the values of Spacemacs settings."
;; Default font, or prioritized list of fonts. `powerline-scale' allows to
;; quickly tweak the mode-line size to make separators look not too crappy.
dotspacemacs-default-font '("Iosevka Medium"
:size 19
:size 16
:weight bold
:width normal
:powerline-scale 1.1)
@ -504,7 +513,7 @@ This function is called immediately after `dotspacemacs/init', before layer
configuration.
It is mostly for variables that should be set before packages are loaded.
If you are unsure, try setting them in `dotspacemacs/user-config' first."
)
(setq tidal-boot-script-path "/home/g1smo/.cabal/share/x86_64-linux-ghc-8.4.4/tidal-1.4.9/BootTidal.hs"))
(defun dotspacemacs/user-load ()
"Library to load while dumping.
@ -564,7 +573,7 @@ before packages are loaded."
;; Use react mode instead of js2 mode
;;(add-to-list 'auto-mode-alist '("\\.js$" . react-mode))
(add-to-list 'auto-mode-alist '("\\.js$" . rjsx-mode))
;(add-to-list 'auto-mode-alist '("\\.js$" . rjsx-mode))
;; Auto completion settings
;;(setq auto-completion-return-key-behavior nil)
@ -593,6 +602,9 @@ before packages are loaded."
;; Agenda fajli
(setq org-agenda-files
(file-expand-wildcards "~/Documents/*.org"))
;; Mishka
(set-mouse-color "GhostWhite")
)
(defun dotspacemacs/emacs-custom-settings ()
@ -607,7 +619,7 @@ This function is called at the very end of Spacemacs initialization."
;; If there is more than one, they won't work right.
'(package-selected-packages
(quote
(zenburn-theme yasnippet-snippets wgrep web-mode tidal tao-theme sql-indent solarized-theme ruby-hash-syntax rspec-mode rjsx-mode request pyvenv phpcbf orgit org-projectile org-download org-brain live-py-mode ivy-hydra hl-todo highlight-indentation guix bui gruvbox-theme google-translate git-timemachine geiser eyebrowse evil-visual-mark-mode evil-surround evil-nerd-commenter evil-matchit evil-magit evil-goggles editorconfig dumb-jump doom-modeline eldoc-eval docker json-mode tablist diff-hl define-word cython-mode counsel-projectile cider-eval-sexp-fu eval-sexp-fu cider clojure-mode browse-at-remote auto-yasnippet auto-compile aggressive-indent ace-window ace-link anaconda-mode ac-php-core company counsel swiper smartparens flycheck projectile helm helm-core window-purpose imenu-list ivy avy magit magit-popup git-commit markdown-mode restclient php-mode f inf-ruby simple-httpd spaceline powerline dash async evil goto-chg org-plus-contrib hydra yapfify yaml-mode xcscope ws-butler writeroom-mode with-editor winum which-key web-beautify vue-mode volatile-highlights vmd-mode vi-tilde-fringe uuidgen use-package undo-tree treepy toc-org tagedit symon suscolors-theme string-inflection spaceline-all-the-icons smex smeargle slim-mode shrink-path sesman seeing-is-believing scss-mode sass-mode rvm rudel ruby-tools ruby-test-mode ruby-refactor rubocop robe restart-emacs rbenv rake rainbow-delimiters queue pytest pyenv-mode py-isort pug-mode prettier-js popwin pippel pipenv pip-requirements phpunit php-extras php-auto-yasnippets persp-mode password-generator paradox packed overseer org-present org-pomodoro org-mime org-category-capture org-bullets open-junk-file ob-restclient ob-http ob-coffeescript nginx-mode neotree nameless move-text minitest markdown-toc magit-svn magit-gitflow macrostep lorem-ipsum livid-mode link-hint json-snatcher json-reformat json-navigator js2-refactor js-doc ivy-yasnippet ivy-xref ivy-purpose indent-guide importmagic impatient-mode hungry-delete highlight-parentheses highlight-numbers helm-make haskell-mode graphql golden-ratio gnuplot gitignore-templates gitignore-mode gitconfig-mode gitattributes-mode git-messenger git-link git-gutter-fringe git-gutter-fringe+ gh-md fuzzy font-lock+ flycheck-pos-tip flx-ido floobits fireplace fill-column-indicator fancy-battery extempore-mode expand-region evil-visualstar evil-unimpaired evil-tutor evil-org evil-numbers evil-lisp-state evil-lion evil-indent-plus evil-iedit-state evil-exchange evil-escape evil-ediff evil-cleverparens evil-args evil-anzu emmet-mode elisp-slime-nav drupal-mode dotenv-mode dockerfile-mode docker-tramp diminish dakrone-light-theme counsel-css company-web company-tern company-statistics company-restclient company-php company-auctex company-anaconda column-enforce-mode coffee-mode clojure-snippets clean-aindent-mode chruby centered-cursor-mode bundler autothemer auto-highlight-symbol all-the-icons-dired ac-ispell))))
(helm-gtags helm helm-core ggtags counsel-gtags company-lua lua-mode swiper zenburn-theme yapfify yaml-mode ws-butler winum which-key wgrep web-mode web-beautify vue-mode ssass-mode vue-html-mode volatile-highlights vmd-mode vi-tilde-fringe uuidgen use-package toc-org tidal tao-theme tagedit suscolors-theme sql-indent spaceline powerline solarized-theme smex smeargle slim-mode scss-mode sass-mode rvm rudel ruby-tools ruby-test-mode rubocop rspec-mode robe rjsx-mode restart-emacs request rbenv rake rainbow-delimiters pyvenv pytest pyenv-mode py-isort pug-mode popwin pip-requirements phpunit phpcbf php-extras php-auto-yasnippets persp-mode pcre2el paradox orgit org-projectile org-category-capture org-present org-pomodoro alert log4e gntp org-plus-contrib org-mime org-download org-bullets open-junk-file ob-restclient ob-http nginx-mode neotree move-text mmm-mode minitest markdown-toc magit-gitflow macrostep lorem-ipsum livid-mode live-py-mode linum-relative link-hint js2-refactor js-doc ivy-hydra indent-guide hy-mode hungry-delete htmlize hl-todo highlight-parentheses highlight-numbers highlight-indentation helm-make haskell-mode haml-mode guix gruvbox-theme google-translate golden-ratio gnuplot gitignore-mode gitconfig-mode gitattributes-mode git-timemachine git-messenger git-link git-gutter-fringe git-gutter-fringe+ gh-md fuzzy flycheck-pos-tip flx-ido floobits fireplace fill-column-indicator fancy-battery eyebrowse extempore-mode expand-region exec-path-from-shell evil-visualstar evil-visual-mark-mode evil-unimpaired evil-tutor evil-surround evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-magit evil-lisp-state evil-indent-plus evil-iedit-state evil-exchange evil-escape evil-ediff evil-args evil-anzu emmet-mode elisp-slime-nav editorconfig dumb-jump drupal-mode dockerfile-mode docker diminish diff-hl define-word dakrone-light-theme cython-mode counsel-projectile company-web company-tern company-statistics company-restclient company-auctex company-anaconda column-enforce-mode coffee-mode clojure-snippets clj-refactor clean-aindent-mode cider-eval-sexp-fu chruby bundler bind-key auto-yasnippet auto-highlight-symbol auto-compile all-the-icons-dired aggressive-indent adaptive-wrap ace-window ace-link ac-ispell))))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
@ -615,3 +627,17 @@ This function is called at the very end of Spacemacs initialization."
;; If there is more than one, they won't work right.
)
)
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(package-selected-packages
(quote
(racket-mode faceup mu4e-maildirs-extension mu4e-alert ht markdown-mode lua-mode skewer-mode simple-httpd js2-mode dash-functional parent-mode edit-indirect magit-popup bui go-guru go-eldoc fringe-helper git-gutter+ git-gutter geiser pos-tip flycheck flx fennel-mode highlight magit git-commit with-editor smartparens iedit anzu evil goto-chg undo-tree php-mode transient tablist json-mode docker-tramp json-snatcher json-reformat projectile counsel ivy web-completion-data restclient know-your-http-well company-go go-mode company hydra inflections multiple-cursors paredit lv eval-sexp-fu cider sesman queue pkg-info parseedn clojure-mode parseclj a epl inf-ruby bind-map yasnippet packed auctex async arduino-mode spinner anaconda-mode pythonic f s all-the-icons memoize avy auto-complete popup swiper zenburn-theme yapfify yaml-mode ws-butler winum which-key wgrep web-mode web-beautify vue-mode ssass-mode vue-html-mode volatile-highlights vmd-mode vi-tilde-fringe uuidgen use-package toc-org tidal tao-theme tagedit suscolors-theme sql-indent spaceline powerline solarized-theme smex smeargle slim-mode scss-mode sass-mode rvm rudel ruby-tools ruby-test-mode rubocop rspec-mode robe rjsx-mode restart-emacs request rbenv rake rainbow-delimiters pyvenv pytest pyenv-mode py-isort pug-mode popwin pip-requirements phpunit phpcbf php-extras php-auto-yasnippets persp-mode pcre2el paradox orgit org-projectile org-category-capture org-present org-pomodoro alert log4e gntp org-plus-contrib org-mime org-download org-bullets open-junk-file ob-restclient ob-http nginx-mode neotree move-text mmm-mode minitest markdown-toc magit-gitflow macrostep lorem-ipsum livid-mode live-py-mode linum-relative link-hint js2-refactor js-doc ivy-hydra indent-guide hy-mode hungry-delete htmlize hl-todo highlight-parentheses highlight-numbers highlight-indentation helm-make haskell-mode haml-mode guix gruvbox-theme google-translate golden-ratio gnuplot gitignore-mode gitconfig-mode gitattributes-mode git-timemachine git-messenger git-link git-gutter-fringe git-gutter-fringe+ gh-md fuzzy flycheck-pos-tip flx-ido floobits fireplace fill-column-indicator fancy-battery eyebrowse extempore-mode expand-region exec-path-from-shell evil-visualstar evil-visual-mark-mode evil-unimpaired evil-tutor evil-surround evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-magit evil-lisp-state evil-indent-plus evil-iedit-state evil-exchange evil-escape evil-ediff evil-args evil-anzu emmet-mode elisp-slime-nav editorconfig dumb-jump drupal-mode dockerfile-mode docker diminish diff-hl define-word dakrone-light-theme cython-mode counsel-projectile company-web company-tern company-statistics company-restclient company-auctex company-anaconda column-enforce-mode coffee-mode clojure-snippets clj-refactor clean-aindent-mode cider-eval-sexp-fu chruby bundler bind-key auto-yasnippet auto-highlight-symbol auto-compile all-the-icons-dired aggressive-indent adaptive-wrap ace-window ace-link ac-ispell))))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)

12
.ssh/config 100644
View File

@ -0,0 +1,12 @@
Host *
ServerAliveInterval 240
Host pi
Port 2312
Host felis.kreten.si
Port 2312
Host a2z.si
HostkeyAlgorithms ssh-dss,ssh-rsa
KexAlgorithms +diffie-hellman-group1-sha1

10
.vimrc
View File

@ -20,15 +20,21 @@ Plug 'mhinz/vim-startify'
Plug 'dyng/ctrlsf.vim'
Plug 'evidens/vim-twig'
Plug 'jceb/vim-orgmode'
Plug 'tpope/vim-speeddating'
Plug 'tpope/vim-rails'
Plug 'marlun/vim-starwars'
Plug 'altercation/vim-colors-solarized'
Plug 'morhetz/gruvbox'
Plug 'bakpakin/fennel.vim'
call plug#end()
" Colorscheme "
syntax on
set background=dark
colorscheme solarized
"set termguicolors " Truecolor support!
let g:gruvbox_termcolors=16 " Fallback 16color
let g:gruvbox_contrast_dark="soft"
let g:gruvbox_italic=1
colorscheme gruvbox
" Tab settings, line numbering "
filetype plugin indent on

View File

@ -24,7 +24,6 @@ if [ "$TERM" = "linux" ]; then
clear # against bg artifacts
fi
export XDG_CONFIG_HOME="$HOME/.config"
#export GDK_SCALE=2
export GDK_DPI_SCALE=0.8
export GUIX_GITHUB_TOKEN="22b00f8346ae4c2f4795cc6c6b346516bb43a619"
#if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then
# exec sway
#fi

1
.zprofile 100644
View File

@ -0,0 +1 @@
. ~/.profile

155
.zshrc
View File

@ -1,7 +1,9 @@
# Lines configured by zsh-newuser-install
# Zgodovina ukazov
HISTFILE=~/.histfile
HISTSIZE=1000
SAVEHIST=10000
# Vi zadeve, se mi zdi
bindkey -v
export KEYTIMEOUT=1
zstyle :compinstall filename '/home/g1smo/.zshrc'
@ -9,21 +11,28 @@ zstyle :compinstall filename '/home/g1smo/.zshrc'
autoload -Uz compinit
compinit
export EDITOR="vim"
export VISUAL="vim"
# Color
# Barve
autoload colors zsh/terminfo
colors
# PATH additions
export GOPATH=~/Sredstva/go
export PATH="/home/g1smo/bin:/home/g1smo/.gem/ruby/2.5.0/bin:$GOPATH/bin:$PATH"
# Default term (i3)
export TERMINAL="termite"
export TERM="xterm-256color"
# BARVE!
export GREP_COLORS='1;32'
export CLICOLOR=1
export LSCOLORS=ExFxCxDxBxegedabagacad
# Prompt
function man() {
LESS_TERMCAP_mb=$(printf "\e[1;35m") \
LESS_TERMCAP_md=$(printf "\e[1;34m") \
LESS_TERMCAP_me=$(printf "\e[0m") \
LESS_TERMCAP_se=$(printf "\e[0m") \
LESS_TERMCAP_so=$(printf "\e[7;40m") \
LESS_TERMCAP_ue=$(printf "\e[0m") \
LESS_TERMCAP_us=$(printf "\e[1;33m") \
command man "$@"
}
function perldoc() { command perldoc -n less "$@" |man -l -; }
# Prompt za git
autoload -U promptinit
promptinit
autoload -Uz vcs_info
@ -38,88 +47,88 @@ precmd () {
setopt prompt_subst
PROMPT='%n@%m %1~ %{$fg[green]%}${vcs_info_msg_0_}%{$fg[blue]%}» %{$reset_color%}'
# Aliases
alias ls='ls --color=auto'
#alias vim='TERM=xterm-256color vim'
alias vi='vim'
alias apachelog="gnome-terminal -e \"tail -f /var/log/httpd/error_log\""
alias sudo="sudo "
alias grep="grep --color=auto"
# Remove not-required-anymore packages
alias paclean="sudo pacman -R \$(pacman -Qdt | awk '{print \$1}')"
# List packages by size
alias pacsize="expac -H M '%m\t%n' | sort -h"
alias ffon="sudo cp /etc/resolv.conf.ff /etc/resolv.conf"
alias gitclean="git fetch -p && for branch in \$(git branch -vv | grep ': gone]' | gawk '{print \$1}'); do git branch -D \$branch; echo 'deleted \$branch'; done"
alias sctl="systemctl"
# Firefox scaling!
alias sf="find ~/.mozilla/firefox -name \"prefs.js\" -exec sed -ri 's/(devPixelsPerPx\\\", \\\")[0-9\\.]+/\\11\.00/' {} + ; firefox"
# regular firefox
alias ff="find ~/.mozilla/firefox -name \"prefs.js\" -exec sed -ri 's/(devPixelsPerPx\\\", \\\")[0-9\\.]+/\\11\.75/' {} + ; firefox"
# Reverse search shortcut
bindkey '^R' history-incremental-pattern-search-backward
export SCALA_HOME="/usr/share/scala"
export SAL_USE_VCLPLUGIN="gtk"
# NVM
#export NVM_DIR="/home/g1smo/.nvm"
#[ -e /usr/share/nvm/init-nvm.sh ] && . /usr/share/nvm/init-nvm.sh
alias invm=". /usr/share/nvm/init-nvm.sh"
alias sc="chromium --force-device-scale-factor=1"
alias emacs-live="HOME=~/Sredstva/emacs-live emacs"
# Splosno barvanje zadev
[[ -s "/etc/grc.zsh" ]] && source /etc/grc.zsh
# CCCAMP 2019 fahrplan
#camp() {
# curl -s https://fahrplan.events.ccc.de/camp/2019/Fahrplan/schedule.json \
# | jq -r '.schedule.conference.days | .[] | select(.date=="'$(date +%F)'") | .rooms | .[] | .[] | select(.date|strptime("%Y-%m-%dT%H:%M:%S%z") > now) | "\(.start) \(.duration)|\(.room)|\(.title)"' \
# | sort -V | column -t -s'|'
#}
# Aliasi
alias ll='ls -l'
alias grep='grep --color=auto'
alias ls='ls --color -C'
alias vi='vim'
alias sudo='sudo env PATH=$PATH '
alias ag="rg"
alias less="less -R"
alias gitclean="git fetch -p && for branch in \$(git branch -vv | grep ': gone]' | gawk '{print \$1}'); do git branch -D \$branch; echo 'deleted \$branch'; done"
alias sctl="systemctl"
alias ddrush="ddev exec drush"
alias dcomposer="ddev exec composer"
alias offer-files="python3 -m http.server"
# X on wayland
alias wxon="xhost +local:"
# RŠ aliasi
alias omnom="ssh root@debeli"
# Ljudmila
alias scdev="ssh culture@milci.ljudmila.org"
alias scnew="ssh culture@zala.ljudmila.org"
# Dolzina mp3 fajlov
alias mp3len="for i in \$(ls *.mp3); do echo \$i; soxi -d \$i; done"
# Hiter ping za net preverit
alias pg="ping 8.8.8.8"
alias pg="ping 1.1.1.1"
# Najvecji fajli
alias najvecji="find . -printf '%s %p\n'| sort -nr | head -30"
# PhantomJS binary location
export PHANTOMJS_BIN=/usr/bin/phantomjs
# RŠ ssh
alias srs='f(){ ssh jurijp@$1.radiostudent.local };f'
alias srr='f(){ ssh root@$1.radiostudent.local };f'
alias rss='f(){ ssh jurijp@$1.radiostudent.si };f'
alias rsr='f(){ ssh root@$1.radiostudent.si };f'
# Guile things
export GUILE_WARN_DEPRECATED="detailed"
# Poslusaj snemanje
alias poslusaj='pactl load-module module-loopback latency_msec=1'
alias tisina='pactl unload-module module-loopback'
# Guix guile things
export GUILE_LOAD_PATH=$HOME/.guix-profile/share/guile/site/2.2:$GUILE_LOAD_PATH
export GUILE_LOAD_COMPILED_PATH=$HOME/.guix-profile/lib/guile/2.2/site-ccache:$GUILE_LOAD_COMPILED_PATH
# PI ssh
alias spi='ssh pi@192.168.64.88'
# Java fix?
export NLS_LANG=American_America.UTF8
# Na prostem sajt(i)
alias nps='cd ~/ljudmila/naprostem/sajt'
alias np='f(){ ssh root@$1.na-prostem.si };f'
# emacspeak speech server
export DTK_PROGRAM=espeak
# Kill element
alias kill-element='kill $(ps aux | grep element | awk '\''{print $2;}'\'')'
alias kill-zoom='pkill zoom'
# Android SDK && React Native build settings
export ANDROID_HOME=/home/g1smo/Android/Sdk
export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
alias nmc='nmcli con up '
# Chrome scaling
export CHROMIUM_FLAGS="--force-device-scale-factor=2"
# OBS fix
#alias obs="QT_QPA_PLATFORM=xcb obs"
# Build deb pkg
#alias deb-build="dpkg-buildpackage -us -uc"
alias deb-build="dpkg-buildpackage -b -rfakeroot -us -uc"
alias run-gamma="pkill -f gammastep; sleep 3; screen -dm -- gammastep -m wayland -l 46.05108:14.50513"
# Za LXD!
export PATH="${PATH}:$(go env GOPATH)/bin:/sbin:/usr/sbin"
export LD_LIBRARY_PATH="$(go env GOPATH)/deps/dqlite/.libs/:$(go env GOPATH)/deps/raft/.libs/:${LD_LIBRARY_PATH}"
# JS fix (prevec nov za openssl)
#export NODE_OPTIONS="--openssl-legacy-provider"
# Guix!
export GUIX_PROFILE="$HOME/.guix-profile"
#export GUIX_PROFILE="$HOME/.config/guix/current"
export GUIX_PROFILE_FILE="$GUIX_PROFILE/etc/profile"
[ -e $GUIX_PROFILE_FILE ] && source $GUIX_PROFILE_FILE
export GUIX_PACKAGE_PATH="$HOME/Projects/guix-packages"
export GUIX_LOCPATH="$GUIX_PROFILE/lib/locale"
#export PATH="/home/g1smo/.config/guix/current/bin${PATH:+:}$PATH"
export PATH="/home/g1smo/.guix-profile/bin${PATH:+:}$PATH"
#export SSL_CERT_DIR="$GUIX_PROFILE/etc/ssl/certs"
#export SSL_CERT_FILE="$SSL_CERT_DIR/ca-certificates.crt"
#export GIT_SSL_CAINFO="$SSL_CERT_FILE"
#export CURL_CA_BUNDLE="$SSL_CERT_FILE"

149
LICENSE
View File

@ -1,21 +1,23 @@
GNU AFFERO GENERAL PUBLIC LICENSE
Version 3, 19 November 2007
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU Affero General Public License is a free, copyleft license for
software and other kinds of works, specifically designed to ensure
cooperation with the community in the case of network server software.
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
our General Public Licenses are intended to guarantee your freedom to
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users.
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
@ -24,34 +26,44 @@ them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
Developers that use our General Public Licenses protect your rights
with two steps: (1) assert copyright on the software, and (2) offer
you this License which gives you legal permission to copy, distribute
and/or modify the software.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
A secondary benefit of defending all users' freedom is that
improvements made in alternate versions of the program, if they
receive widespread use, become available for other developers to
incorporate. Many developers of free software are heartened and
encouraged by the resulting cooperation. However, in the case of
software used on network servers, this result may fail to come about.
The GNU General Public License permits making a modified version and
letting the public access it on a server without ever releasing its
source code to the public.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
The GNU Affero General Public License is designed specifically to
ensure that, in such cases, the modified source code becomes available
to the community. It requires the operator of a network server to
provide the source code of the modified version running there to the
users of that server. Therefore, public use of a modified version, on
a publicly accessible server, gives the public access to the source
code of the modified version.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
An older license, called the Affero General Public License and
published by Affero, was designed to accomplish similar goals. This is
a different license, not a version of the Affero GPL, but Affero has
released a new version of the Affero GPL which permits relicensing under
this license.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
@ -60,7 +72,7 @@ modification follow.
0. Definitions.
"This License" refers to version 3 of the GNU Affero General Public License.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
@ -537,45 +549,35 @@ to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Remote Network Interaction; Use with the GNU General Public License.
Notwithstanding any other provision of this License, if you modify the
Program, your modified version must prominently offer all users
interacting with it remotely through a computer network (if your version
supports such interaction) an opportunity to receive the Corresponding
Source of your version by providing access to the Corresponding Source
from a network server at no charge, through some standard or customary
means of facilitating copying of software. This Corresponding Source
shall include the Corresponding Source for any work covered by version 3
of the GNU General Public License that is incorporated pursuant to the
following paragraph.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU General Public License into a single
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the work with which it is combined will remain governed by version
3 of the GNU General Public License.
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU Affero General Public License from time to time. Such new versions
will be similar in spirit to the present version, but may differ in detail to
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU Affero General
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU Affero General Public License, you may choose any version ever published
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU Affero General Public License can be used, that proxy's
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
@ -633,29 +635,40 @@ the "copyright" line and a pointer to where the full notice is found.
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
GNU General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If your software can interact with users remotely through a computer
network, you should also make sure that it provides a way for users to
get its source. For example, if your program is a web application, its
interface could display a "Source" link that leads users to an archive
of the code. There are many ways you could offer source, and different
solutions will be better for different programs; see section 13 for the
specific requirements.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU AGPL, see
<http://www.gnu.org/licenses/>.
For more information on this, and how to apply and follow the GNU GPL, see
<https://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<https://www.gnu.org/licenses/why-not-lgpl.html>.

View File

@ -0,0 +1,15 @@
[Desktop Entry]
Version=1.0
Name=OBS Studio
GenericName=Streaming/Recording Software
GenericName[fr]=Logiciel d'enregistrement/diffusion
Comment=Free and Open Source Streaming/Recording Software
Comment[fr]=Logiciel libre d'enregistrement et de diffusion sur Internet
Comment[ru]=Бесплатная программа с открытым кодом для записи/трансляции видео
Exec=env QT_QPA_PLATFORM=xcb obs
Icon=com.obsproject.Studio
Terminal=false
Type=Application
Categories=AudioVideo;Recorder;
StartupNotify=true
StartupWMClass=obs

View File

@ -0,0 +1,16 @@
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Name=DBeaver Community
GenericName=UniversaL Database Manager
Comment=Universal Database Manager and SQL Client.
Path=/usr/share/dbeaver/
Exec=env QT_QPA_PLATFORM=xcb dbeaver
Icon=/usr/share/dbeaver/dbeaver.png
Categories=IDE;Development
WM_CLASS=DBeaver
StartupWMClass=DBeaver
StartupNotify=true
Keywords=Database;SQL;IDE;JDBC;ODBC;MySQL;PostgreSQL;Oracle;DB2;MariaDB
MimeType=application/sql

214
bin/autotiling.py 100755
View File

@ -0,0 +1,214 @@
#!/usr/bin/env python3
"""
This script uses the i3ipc python module to switch the layout splith / splitv
for the currently focused window, depending on its dimensions.
It works on both sway and i3 window managers.
Inspired by https://github.com/olemartinorg/i3-alternating-layout
Copyright: 2019-2021 Piotr Miller & Contributors
e-mail: nwg.piotr@gmail.com
Project: https://github.com/nwg-piotr/autotiling
License: GPL3
Dependencies: python-i3ipc>=2.0.1 (i3ipc-python)
"""
import argparse
import os
import sys
from functools import partial
from i3ipc import Connection, Event
try:
from .__about__ import __version__
except ImportError:
__version__ = "unknown"
def temp_dir():
if os.getenv("TMPDIR"):
return os.getenv("TMPDIR")
elif os.getenv("TEMP"):
return os.getenv("TEMP")
elif os.getenv("TMP"):
return os.getenv("TMP")
return "/tmp"
def save_string(string, file):
try:
file = open(file, "wt")
file.write(string)
file.close()
except Exception as e:
print(e)
def output_name(con):
if con.type == "root":
return None
if p := con.parent:
if p.type == "output":
return p.name
else:
return output_name(p)
def switch_splitting(i3, e, debug, outputs, workspaces, depth_limit):
try:
con = i3.get_tree().find_focused()
output = output_name(con)
# Stop, if outputs is set and current output is not in the selection
if outputs and output not in outputs:
if debug:
print(
"Debug: Autotiling turned off on output {}".format(output),
file=sys.stderr,
)
return
if con and not workspaces or (str(con.workspace().num) in workspaces):
if con.floating:
# We're on i3: on sway it would be None
# May be 'auto_on' or 'user_on'
is_floating = "_on" in con.floating
else:
# We are on sway
is_floating = con.type == "floating_con"
if depth_limit:
# Assume we reached the depth limit, unless we can find a workspace
depth_limit_reached = True
current_con = con
current_depth = 0
while current_depth < depth_limit:
# Check if we found the workspace of the current container
if current_con.type == "workspace":
# Found the workspace within the depth limitation
depth_limit_reached = False
break
# Look at the parent for next iteration
current_con = current_con.parent
# Only count up the depth, if the container has more than
# one container as child
if len(current_con.nodes) > 1:
current_depth += 1
if depth_limit_reached:
if debug:
print("Debug: Depth limit reached")
return
is_full_screen = con.fullscreen_mode == 1
is_stacked = con.parent.layout == "stacked"
is_tabbed = con.parent.layout == "tabbed"
# Exclude floating containers, stacked layouts, tabbed layouts and full screen mode
if (not is_floating
and not is_stacked
and not is_tabbed
and not is_full_screen):
new_layout = "splitv" if con.rect.height > con.rect.width else "splith"
if new_layout != con.parent.layout:
result = i3.command(new_layout)
if result[0].success and debug:
print("Debug: Switched to {}".format(new_layout), file=sys.stderr)
elif debug:
print("Error: Switch failed with err {}".format(result[0].error), file=sys.stderr, )
elif debug:
print("Debug: No focused container found or autotiling on the workspace turned off", file=sys.stderr)
except Exception as e:
print("Error: {}".format(e), file=sys.stderr)
def main():
parser = argparse.ArgumentParser()
parser.add_argument("-d",
"--debug",
action="store_true",
help="print debug messages to stderr")
parser.add_argument("-v",
"--version",
action="version",
version="%(prog)s {}, Python {}".format(__version__, sys.version),
help="display version information", )
parser.add_argument("-o",
"--outputs",
help="restricts autotiling to certain output; "
"example: autotiling --output DP-1 HDMI-0",
nargs="*",
type=str,
default=[], )
parser.add_argument("-w",
"--workspaces",
help="restricts autotiling to certain workspaces; example: autotiling --workspaces 8 9",
nargs="*",
type=str,
default=[], )
parser.add_argument("-l",
"--limit",
help='limit how often autotiling will split a container; '
'try "2", if you like master-stack layouts; default: 0 (no limit)',
type=int,
default=0, )
"""
Changing event subscription has already been the objective of several pull request. To avoid doing this again
and again, let's allow to specify them in the `--events` argument.
"""
parser.add_argument("-e",
"--events",
help="list of events to trigger switching split orientation; default: WINDOW MODE",
nargs="*",
type=str,
default=["WINDOW", "MODE"])
args = parser.parse_args()
if args.debug and args.outputs:
print("autotiling is only active on outputs:", ",".join(args.outputs))
if args.debug and args.workspaces:
print("autotiling is only active on workspaces:", ','.join(args.workspaces))
# For use w/ nwg-panel
ws_file = os.path.join(temp_dir(), "autotiling")
if args.workspaces:
save_string(','.join(args.workspaces), ws_file)
else:
if os.path.isfile(ws_file):
os.remove(ws_file)
if not args.events:
print("No events specified", file=sys.stderr)
sys.exit(1)
handler = partial(
switch_splitting,
debug=args.debug,
outputs=args.outputs,
workspaces=args.workspaces,
depth_limit=args.limit,
)
i3 = Connection()
for e in args.events:
try:
i3.on(Event[e], handler)
print("{} subscribed".format(Event[e]))
except KeyError:
print("'{}' is not a valid event".format(e), file=sys.stderr)
i3.main()
if __name__ == "__main__":
# execute only if run as a script
main()

13
bin/backmeup 100755
View File

@ -0,0 +1,13 @@
#!/bin/sh
datum=$(date +"%y-%m-%d")
backuplog=/root/backup-log
sudo sshfs pi@pi:/home/pi/mast/bak/dbn /root/.bak
#borg create -svp pi@192.168.64.112:~/mast/bak/tp::$datum /etc /home /opt /root /srv /var | sudo tee -a $backuplog
echo "Backup sistema $datum" | sudo tee -a $backuplog
#rsync -avz /etc /home /opt /root /srv /var pi@pi:~/mast/bak/tp | tee -a $backuplog
sudo borg create --stats --verbose --compression=lz4 "/root/.bak::$datum" /etc /home /opt /root /srv /var | sudo tee -a $backuplog
sudo umount /root/.bak

3
bin/dbeaver 100755
View File

@ -0,0 +1,3 @@
#!/bin/sh
GDK_BACKEND=x11 /usr/bin/dbeaver

View File

@ -0,0 +1,31 @@
#!/usr/bin/env python3
# This script requires i3ipc-python package (install it from a system package manager
# or pip).
# It makes inactive windows transparent. Use `transparency_val` variable to control
# transparency strength in range of 0…1.
import i3ipc
transparency_val = '0.8';
ipc = i3ipc.Connection()
prev_focused = None
for window in ipc.get_tree():
if window.focused:
prev_focused = window
else:
window.command('opacity ' + transparency_val)
def on_window_focus(ipc, focused):
global prev_focused
if focused.container.id != prev_focused.id: # https://github.com/swaywm/sway/issues/2859
focused.container.command('opacity 1')
prev_focused.command('opacity ' + transparency_val)
prev_focused = focused.container
ipc.on("window::focus", on_window_focus)
ipc.main()

3
bin/png2ico 100755
View File

@ -0,0 +1,3 @@
#!/bin/bash
convert -background transparent "$1" -define icon:auto-resize=16,24,32,48,64,128,256 "$1.ico"

10
bin/screenshot 100755
View File

@ -0,0 +1,10 @@
#!/bin/bash
# Screenshot na waylandu!
# DEPS: grim, slurp
DESTINATION=~/Slike/screenshots
FILENAME="screenshot-`date +%F-%T`"
grim -g "$(slurp)" $DESTINATION/$FILENAME.png

22
bin/vmpk-pa 100755
View File

@ -0,0 +1,22 @@
#!/bin/bash
fluidsynth --server \
--no-shell \
--audio-driver=pulseaudio \
--gain=1.0 \
--reverb=0.42 \
--chorus=0.42 \
/usr/share/sounds/sf2/FluidR3_GM.sf2 &>/tmp/fluidsynth.out &
sleep 2
vmpk &
sleep 2
vmpkport=$(aconnect -i |grep "client.*VMPK Output" | cut -d ' ' -f 2)0
synthport=$(aconnect -i |grep "FLUID Synth" | cut -d ' ' -f 2)0
echo "vmpk on ${vmpkport} & synth on ${synthport}"

15
checkbatt.sh 100755
View File

@ -0,0 +1,15 @@
#!/bin/bash
praznim=$(acpi -b | grep Discharging)
lvl=$(acpi -b | sed -e 's/[,%\s]//g' | awk '{s+=$4} END {printf "%.0f", s/2}')
nizka=7
kriticna=3
if [[ $praznim ]]; then
if [[ $lvl -lt $kriticna ]]; then
systemctl suspend
elif [[ $lvl -lt $nizka ]]; then
notify-send -u critical -i /usr/share/icons/gnome/32x32/status/battery-low.png "BATERIJA NISKA: $lvl%"
fi
fi

View File

@ -1,51 +1,60 @@
;; -*- mode: scheme; -*-
;; This is an operating system configuration template
;; for a "desktop" setup with GNOME and Xfce.
(use-modules (gnu) (srfi srfi-1) (gnu system nss))
(use-service-modules desktop networking)
(use-modules (gnu)
(gnu system nss)
(guix utils)
(nongnu packages linux)
(nongnu system linux-initrd)
(srfi srfi-1))
(use-service-modules desktop xorg dns networking)
(use-package-modules bootloaders certs shells ssh version-control emacs vim wm freedesktop xorg fontutils)
;; ZSH location G-expr
(define zsh-location
#~(string-append #$zsh "/bin/zsh"))
;; Replace wicd with NetworkManager
(define %desktop-services-nm
(cons* (service network-manager-service-type (network-manager-configuration))
(service wpa-supplicant-service-type)
;;(service account-service-type)
(remove (lambda (service) (eq? wicd-service-type (service-kind service))) %desktop-services)))
(operating-system
(host-name "gpnx")
(host-name "apnx")
(timezone "Europe/Ljubljana")
(locale "en_US.UTF-8")
(locale "sl_SI.utf8")
;; Use the UEFI variant of GRUB with the EFI System
;; Partition mounted on /boot/efi.
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(targets '("/boot/efi"))))
(kernel linux)
(initrd microcode-initrd)
(firmware (list linux-firmware))
;; Assuming /dev/sdX is the target hard disk, and "my-root"
;; is the label of the target root file system.
(bootloader (grub-configuration (grub grub);;-efi)
;;(device "/dev/sda1")))
(device "/dev/sda")))
(file-systems (cons* (file-system
(device "gpnx")
(title "GNU Guix SD pnx")
(mount-point "/")
(type "ext4"))
(file-system
(device "/dev/sda1")
(mount-point "/boot/efi")
(type "vfat"))
%base-file-systems))
(device "/dev/sda3")
(mount-point "/")
(type "btrfs")
(options "compress"))
(file-system
(device "/dev/sda2")
(mount-point "/boot/efi")
(type "vfat"))
%base-file-systems))
(swap-devices
(list (swap-space (target "/swapfile"))))
(users (cons* (user-account
(name "yuri")
(comment "Silly Yuri")
(name "g1smo")
(comment "Yuri")
(group "users")
(shell zsh-location)
(supplementary-groups '("wheel" "netdev"
"audio" "video"))
(home-directory "/home/yuri"))
"audio" "video" "dialout"))
(shell (file-append zsh "/bin/zsh"))
(home-directory "/home/g1smo"))
(user-account
(name "bask")
(comment "Balkan Anarchist Bookfair")
(group "users")
(supplementary-groups '("wheel" "netdev"
"audio" "video" "dialout"))
(home-directory "/home/bask"))
%base-user-accounts))
;; This is where we specify system-wide packages.
@ -66,9 +75,23 @@
;; include the X11 log-in service, networking with Wicd,
;; and more.
(services (cons* ;;(xfce-desktop-service)
(gnome-desktop-service)
%desktop-services-nm))
(services (cons* (service xfce-desktop-service-type)
(service gnome-desktop-service-type)
(service dnsmasq-service-type
(dnsmasq-configuration
(cache-size 1500)))
(service network-manager-service-type
(network-manager-configuration
(dns "dnsmasq")))
(service pam-limits-service-type
(list
(pam-limits-entry "@audio" 'both 'rtprio 99)
(pam-limits-entry "@audio" 'both 'memlock 'unlimited)))
(remove
(lambda (service)
(eq? network-manager-service-type (service-kind service)))
%desktop-services)))
;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss))

View File

@ -0,0 +1,2 @@
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="intel_backlight", RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="intel_backlight", RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness"

14
guix/.bash_profile 100644
View File

@ -0,0 +1,14 @@
# Set up Guix Home profile
if [ -f ~/.profile ]; then . ~/.profile; fi
# Honor per-interactive-shell startup file
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
# Merge search-paths from multiple profiles, the order matters.
eval "$(guix package --search-paths \
-p $HOME/.config/guix/current \
-p $HOME/.guix-profile \
-p /run/current-system/profile)"
# Prepend setuid programs.
export PATH=/run/setuid-programs:$PATH

64
guix/.bashrc 100644
View File

@ -0,0 +1,64 @@
# Bash initialization for interactive non-login shells and
# for remote shells (info "(bash) Bash Startup Files").
# Export 'SHELL' to child processes. Programs such as 'screen'
# honor it and otherwise use /bin/sh.
export SHELL
if [[ $- != *i* ]]
then
# We are being invoked from a non-interactive shell. If this
# is an SSH session (as in "ssh host command"), source
# /etc/profile so we get PATH and other essential variables.
[[ -n "$SSH_CLIENT" ]] && source /etc/profile
# Don't do anything else.
return
fi
# Source the system-wide file.
[ -f /etc/bashrc ] && source /etc/bashrc
source /etc/profile
# Term compatibility
export TERM=rxvt-256color
# Aliasi
alias ls='ls -p --color=auto'
alias ll='ls -l'
alias grep='grep --color=auto'
alias ls='ls --color -C'
alias vi='vim'
alias sudo='sudo env PATH=$PATH '
alias ag="rg"
alias less="less -R"
alias gitclean="git fetch -p && for branch in \$\(git branch -vv | grep ': gone]' | gawk '{print \$1}'\); do git branch -D \$branch; echo 'deleted \$branch'; done"
alias sctl="systemctl"
alias ddrush="ddev exec drush"
alias dcomposer="ddev exec composer"
alias offer-files="python3 -m http.server"
# X on wayland
alias wxon="xhost +local:"
alias kill-element='kill $(ps aux | grep element | awk '\''{print $2;}'\'')'
alias run-gamma="pkill -f gammastep; sleep 3; screen -dm -- gammastep -m wayland -l 46.05108:14.50513"
# RŠ ssh
srs() {
ssh "jurijp@$1.radiostudent.local"
}
srr() {
ssh "root@$1.radiostudent.local"
}
rss() {
ssh "jurijp@$1.radiostudent.si"
}
rsr() {
ssh "root@$1.radiostudent.si"
}
export BSD_GAMES_DIR=~/.local/share/bsd-games

View File

@ -0,0 +1,125 @@
;; This "home-environment" file can be passed to 'guix home reconfigure'
;; to reproduce the content of your profile. This is "symbolic": it only
;; specifies package names. To reproduce the exact same profile, you also
;; need to capture the channels being used, as returned by "guix describe".
;; See the "Replicating Guix" section in the manual.
(use-modules (gnu home)
(gnu packages)
(gnu packages xdisorg)
(gnu services)
(guix gexp)
(gnu home services shells)
(gnu home services desktop)
(gnu home services pm)
(gnu home services sound))
(home-environment
;; Below is the list of packages that will show up in your
;; Home profile, under ~/.guix-home/profile.
(packages (specifications->packages (list "htop"
"emacs-pgtk"
"binutils"
"gcc-toolchain@11"
"icecat-l10n:sl"
"icecat"
"crawl-tiles"
"acpi"
"zynaddsubfx"
"gnome-tweaks"
"gimp"
"supercollider"
"ardour"
"slurp"
"wireplumber"
"pipewire"
"qjackctl"
"mplayer"
"ffmpeg"
"libcaca"
"kigo"
"lierolibre"
"transmission:gui"
"wine64"
"wine"
"audacity"
"numix-gtk-theme"
"nextcloud-client"
"nyxt"
"icedove-wayland"
"ungoogled-chromium-wayland"
"keepassxc"
"libappindicator"
"snixembed"
"vlc"
"qpwgraph"
"pamixer"
"element-desktop"
"pavucontrol"
"libreoffice"
"mako"
"alacritty"
"redshift-wayland"
"i3status"
"rofi-wayland"
"sway"
"wev"
"grim"
"xjackfreak"
"ncdu"
"bind:utils"
"python-i3ipc"
"python"
"screen"
"bibata-cursor-theme"
"ripgrep"
"brightnessctl"
"foot"
"jack"
"amb-plugins"
"fil-plugins"
"gnugo"
"bsd-games"
"file"
"nmap"
"font-fira-code"
"font-awesome"
"unzip"
"zsh"
"curl")))
;; Below is the list of Home services. To search for available
;; services, run 'guix home search KEYWORD' in a terminal.
(services
(list (service home-zsh-service-type
(home-zsh-configuration
(zshrc (list (local-file
"/home/g1smo/sredstva/dotfiles/.zshrc"
"zshrc")))
(zprofile (list (local-file
"/home/g1smo/sredstva/dotfiles/.profile"
"profile")))))
;; Skrij misko po 4 sekundah ne-premikanja
(service home-unclutter-service-type
(home-unclutter-configuration
(idle-timeout 2)))
;; Rdecenje zaslona @TODO se ne dela :(
(service home-redshift-service-type
(home-redshift-configuration
(redshift redshift-wayland)
(adjustment-method 'wayland)
(location-provider 'manual)
(latitude 46.05108)
(longitude 14.50513)))
;; Pipewire zvok!
;; Dbus je odvisen paket
(service home-dbus-service-type)
(service home-pipewire-service-type)
;; Indikator nizke baterije
(service home-batsignal-service-type)
)))

12
init.sh 100755
View File

@ -0,0 +1,12 @@
#!/bin/sh
# Instaliraj vim plug!
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
# Zloudaj font (statusbar, emacs)
mkdir ~/.fonts
curl -fLo ~/.fonts/iosevka.zip https://github.com/be5invis/Iosevka/releases/download/v20.0.0/super-ttc-iosevka-ss01-20.0.0.zip
cd ~/.fonts
unzip iosevka.zip
rm iosevka.zip
fc-cache -f

BIN
ozadje.jpg 100644

Binary file not shown.

After

Width:  |  Height:  |  Size: 559 KiB

View File

@ -1,33 +1,103 @@
#!/bin/sh
DIR=`pwd`
echo "DIR: $DIR"
# Profile
ln -s $DIR/.profile ~/.profile
ln -s $DIR/.profile ~/.zprofile
# ZSH shell!
ln -s $DIR/.zshrc ~/.zshrc
ln -s $DIR/.zprofile ~/.zprofile
ln -s $DIR/.config/gtk-3.0 ~/.config/gtk-3.0
mkdir $DIR/.config/i3
# i3 config (<3 tiling WM)
mkdir ~/.config/i3
ln -s $DIR/.config/i3/config ~/.config/i3/config
mkdir $DIR/.config/sway
# sway config (i3 za wayland)
mkdir ~/.config/sway
ln -s $DIR/.config/sway/config ~/.config/sway/config
mkdir $DIR/.config/termite
# i3status vrstica zgoraj
ln -s $DIR/.i3status.conf ~/.i3status.conf
# termite terminal (ok terminal za X)
mkdir ~/.config/termite
ln -s $DIR/.config/termite/config ~/.config/termite/config
ln -s $DIR/.config/compton ~/.config/compton
# Kitty terminal (GL, wayland)
mkdir ~/.config/kitty
ln -s $DIR/.config/kitty/kitty.conf ~/.config/kitty/kitty.conf
ln -s $DIR/.config/kitty/solarized.conf ~/.config/kitty/solarized.conf
ln -s $DIR/.config/kitty/gruvbox.conf ~/.config/kitty/gruvbox.conf
# Foot terminal (minimal wayland term)
mkdir ~/.config/foot
ln -s $DIR/.config/foot/foot.ini ~/.config/foot/foot.ini
# compton compositor (za X - transparence oken in efekti)
ln -s $DIR/.config/compton.conf ~/.config/compton.conf
# redshift (pordeci skrin, X)
ln -s $DIR/.config/redshift ~/.config/redshift
ln -s $DIR/.gtkrc-2.0 ~/.gtkrc-2.0
# guix (channel z lokalnimi paketi
mkdir ~/.config/guix
ln -s $DIR/.config/guix/channels.scm ~/.config/guix/channels.scm
# i3 block, bolj fensi statusbar (ne uporabljam vec)
ln -s $DIR/.i3blocks.conf ~/.i3blocks.conf
ln -s $DIR/.local/rofi/config ~/.local/rofi/config
ln -s $DIR/.spacemacs ~/.spacemacs
# rofi launcher
mkdir ~/.config/rofi
ln -s $DIR/.config/rofi/config.rasi ~/.config/rofi/config.rasi
# ter gruvbox tema
mkdir -p ~/.config/rofi/themes
ln -s $DIR/.config/rofi/themes/gruvbox ~/.config/rofi/themes/gruvbox
# VIM!
ln -s $DIR/.vimrc ~/.vimrc
# barve v terminalu in neki detajli, X
ln -s $DIR/.Xresources ~/.Xresources
# ZSH login nastavitve (ni urejeno)
ln -s $DIR/.zlogin ~/.zlogin
# GIT konfiguracija
ln -s $DIR/.gitconfig ~/.gitconfig
# ZSH profile nastavitve (ni urejeno)
#ln -s $DIR/.profile ~/.profile
ln -s $DIR/.zprofile ~/.zprofile
# Razne uporabne skripte
mkdir ~/bin
# Screenshot skripta (wayland)
ln -s $DIR/bin/screenshot ~/bin/screenshot
# backup ukaz
ln -s $DIR/bin/backmeup ~/bin/backmeup
# transparenca neaktivnih oken na swayu
ln -s $DIR/bin/inactive-windows-transparency.py ~/bin/inactive-windows-transparency.py
# virtual piano keyboard na pulseaudiu!
ln -s $DIR/bin/png2ico ~/bin/png2ico
# png v ico konverzija
ln -s $DIR/bin/vmpk-pa ~/bin/vmpk-pa
ln -s $DIR/bin/autotiling.py ~/bin/autotiling.py
# Guile
ln -s $DIR/.guile ~/.guile
# X11 popravki aplikacij
ln -s $DIR/applications/dbeaver.desktop ~/.local/share/applications/dbeaver.desktop
ln -s $DIR/applications/dbeaver.desktop ~/.local/share/applications/com.obsproject.Studio.desktop
# Emacs <3
mkdir ~/.emacs.d
ln -s $DIR/.emacs.d/init.el ~/.emacs.d/init.el
# SSH (timeout)
mkdir ~/.ssh
ln -s $DIR/.ssh/config ~/.ssh/config