Compare commits

...

22 Commits

Author SHA1 Message Date
Jurij Podgoršek bf012bcda9 Popravek, ciscenje 2024-12-15 18:34:12 +01:00
Jurij Podgoršek 3755344f7c consult namesto counsel in swiper, genreal define key 2024-12-15 17:37:10 +01:00
Jurij Podgoršek c38db07448 Popravki, dopolnila 2024-12-15 16:45:22 +01:00
Jurij Podgoršek 9c9b92a19a Popravki, izboljsave, locen debian home 2024-12-10 12:41:13 +01:00
Jurij Podgoršek b2ca973d1c Cargo env include only if .cargo exists 2024-10-13 13:57:01 +02:00
Jurij Podgoršek a6f7721898 Pedenanje konfiguracij, guile, guix + guix home! 2024-08-21 17:30:42 +02:00
Jurij Podgoršek e069bef4e9 transparenca, vizualno pedenanje, keepass keyring, direnv 2024-07-06 13:37:34 +02:00
Jurij Podgoršek 04b192b756 Guix home za gammastep 2024-05-16 13:05:29 +02:00
Jurij Podgoršek 80789825aa arduino2 apdejt 2024-05-16 13:05:18 +02:00
Jurij Podgoršek df93991f8b Posodobitve emacs, zsh, sway 2024-05-16 13:05:05 +02:00
Jurij Podgoršek c9ca6f4262 HEADLESS output for use as external monitor 2024-03-21 13:02:02 +01:00
Jurij Podgoršek a5ab137b5f Rofi tema odstranjena (je zdaj vkljucena v sam rofi), povezovalna
skripta prilagojena in malo preciscena (ter dodani quoti)
2024-03-13 13:09:51 +01:00
Jurij Podgoršek bba7df42e8 Posodobitve dotfajlov, ozadja v tale repo 2024-03-06 18:33:28 +01:00
Jurij Podgoršek 48801772c1 Skripta za font 2024-02-01 15:13:49 +01:00
Jurij Podgoršek 3bc40a3cd2 Dodatna ozadja, posodobitve konfiguracij 2024-02-01 15:12:21 +01:00
Jurij Podgoršek a7d51fbc40 Premikanje emacs konfiguracije v ORG 2023-12-27 19:44:27 +01:00
Jurij Podgoršek 02d82c10a4 WIP prestavljanje emacs konfiguracije v literate orgfajl 2023-12-22 02:19:45 +01:00
Jurij Podgoršek a92b3c8851 Loudaj ikone in font z neta, emacs update, barve v sway 2023-12-22 02:19:45 +01:00
Jurij Podgoršek e9754f74d6 malo bolji zshrc, manifest z emacs paketi 2023-12-02 23:59:10 +01:00
Jurij Podgoršek 9721bf6452 mini posodobitve 2023-11-20 18:57:08 +01:00
Jurij Podgoršek 02513c9285 Popravki barv, emacs update, malo sway in foot posodobitev, shell 2023-11-20 18:55:46 +01:00
Jurij Podgoršek 49218747c3 Guix posodobitve, nekaj sprememb 2023-11-20 18:45:00 +01:00
55 changed files with 3196 additions and 1693 deletions

View File

@ -82,3 +82,5 @@ URxvt*depth: 32
URxvt*background: [94]S_base03
xterm*decTerminalID : vt340
Xcursor.theme: Bibata-Original-Classic

View File

@ -46,7 +46,7 @@ pad=6x5
[scrollback]
# lines=1000
# multiplier=3.0
multiplier=25.0
# indicator-position=relative
# indicator-format=
@ -66,9 +66,10 @@ pad=6x5
[mouse]
# hide-when-typing=no
# alternate-scroll-mode=yes
alternate-scroll-mode=yes
[colors]
#alpha=0.975
alpha=0.9
# foreground=dcdccc
# background=111111
@ -116,7 +117,7 @@ alpha=0.9
# Gruvbox
background=282828
foreground=ebdbb2
regular0=282828
regular0=2d2b2a
regular1=cc241d
regular2=98971a
regular3=d79921

View File

@ -0,0 +1,39 @@
(cons*
#|
(channel
(name 'mobilizon-reshare)
(url "https://git.sr.ht/~fishinthecalculator/mobilizon-reshare-guix")
(branch "upstrem-master"))
|#
(channel
(name 'rosenthal)
(url "https://codeberg.org/hako/rosenthal.git")
(branch "trunk")
(introduction
(make-channel-introduction
"7677db76330121a901604dfbad19077893865f35"
(openpgp-fingerprint
"13E7 6CD6 E649 C28C 3385 4DF5 5E5A A665 6149 17F7"))))
(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"))))
;; gammastep home service
(channel
(name 'small-guix)
(url "https://gitlab.com/orang3/small-guix")
;; Enable signature verification:
(introduction
(make-channel-introduction
"f260da13666cd41ae3202270784e61e062a3999c"
(openpgp-fingerprint
"8D10 60B9 6BB8 292E 829B 7249 AED4 1CC1 93B7 01E2"))))
%default-channels)

View File

@ -11,31 +11,37 @@ general {
interval = 5
color_good = "#2AA198"
color_bad = "#586E75"
color_degraded = "#DC322F"
separator = ""
color_degraded = "#D79921"
separator = ""
}
order += "ipv6"
order += "wireless _first_"
order += "ethernet _first_"
order += "path_exists VPN"
order += "ipv6"
order += "disk /"
order += "disk /home"
order += "wireless _first_"
order += "load"
order += "memory"
order += "volume master"
order += "battery all"
order += "tztime local"
path_exists VPN {
path = "/proc/sys/net/ipv4/conf/ppp0"
format = " %status"
}
wireless _first_ {
#format_up = "W: (%quality at %essid) %ip"
format_up = " %essid %ip %bitrate "
format_down = "  "
format_up = "%ip  %essid %bitrate"
format_down = " "
}
ethernet _first_ {
# if you use %speed, i3status requires root privileges
format_up = "E: %ip (%speed)"
format_down = "E: "
format_up = " (%speed)"
format_down = " "
}
battery all {
@ -48,7 +54,7 @@ battery all {
}
tztime local {
format = "%d.%m.%Y  %H:%M"
format = "%d.%m.%Y  %H:%M "
}
load {
@ -64,8 +70,8 @@ disk "/home" {
}
ipv6 {
format_up = "IPv6 up"
#format_down = "no IPv6"
format_up = "IPv6"
format_down = " IPv6"
}
memory {

View File

@ -1,14 +1,10 @@
configuration {
combi-modi: "window,drun,run";
terminal: "kitty";
modes: [ combi ];
combi-modes: [ window, drun, run ];
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"
@theme "gruvbox-dark-soft"

View File

@ -1,21 +0,0 @@
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

@ -1,76 +0,0 @@
# 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

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

View File

@ -1,127 +0,0 @@
/* ==========================================================================
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

@ -1,62 +0,0 @@
/* ==========================================================================
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

@ -1,62 +0,0 @@
/* ==========================================================================
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

@ -1,62 +0,0 @@
/* ==========================================================================
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

@ -1,62 +0,0 @@
/* ==========================================================================
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

@ -1,62 +0,0 @@
/* ==========================================================================
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

@ -1,62 +0,0 @@
/* ==========================================================================
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.

Before

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

View File

@ -11,11 +11,14 @@ set $altright ccaron
# Terminal
#set $term kitty
set $term foot
set $term footclient
# Font
font pango:Iosevka SS05 Medium 10
# Kurzor
seat * xcursor_theme Bibata-Original-Classic 24
# Launcher
set $menu "rofi -combi-modi window,drun,run -show combi -modi combi"
#set $menu j4-dmenu-desktop
@ -29,14 +32,22 @@ output eDP-1 {
}
#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
output "*" background "~/sredstva/dotfiles/ozadje5.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
output HDMI-A-2 pos 1601 0 scale 1
output HDMI-A-1 pos 1601 0 scale 1
output DP-5 pos 1601 0 scale 1
output DP-2 pos 1601 0 scale 1
# wayVNC izhod za pinenote
#output HEADLESS-1 {
# pos 1601 0 scale 2
# mode 1404x1872
# transform 90
# scale_filter smart
#}
# swaymsg create_output HEADLESS-1 post 1601 0 scale 2 mode 1404x1872 transform 90 scale_filter smart
# wayvnc --output=HEADLESS-1 --max-fps=20 192.168.8.20 5900 &
# start a terminal
bindsym $mod+Return exec $term
@ -90,8 +101,9 @@ bindsym $mod+d exec $menu
#
# name workspaces
set $w0 0:
set $w1 1:
set $w2 2:λ
set $w2 2:
set $w3 3:
set $w4 4:
set $w5 5:
@ -99,7 +111,6 @@ set $w6 6:
set $w7 7:✭❀❤♫
set $w8 8:☭
set $w9 9:
set $w0 0:
# switch to workspace
bindsym $mod+1 workspace $w1
@ -211,38 +222,47 @@ mode "resize" {
}
bindsym $mod+r mode "resize"
set $ospredje #cccccc
set $ospredjeTrans #cccccccc
set $ospredjeNefokusiran #ebdbb2cc
set $ozadje #282828e6
set $ozadjeTrans #282828b6
#
# Status Bar:
#
# Read `man 5 sway-bar` for more information about this section.
bar {
position top
# status_command i3blocks
# status_command i3status-rs
status_command i3status
colors {
focused_background #272727E5
background #272727B8
#statusline #ebdbb2E5
statusline #DCDCDC
focused_background $ozadje
background $ozadjeTrans
statusline $ospredje
focused_workspace #555555E5 #555555E5 #ffffff
inactive_workspace #272727E5 #272727E5 #888888
focused_workspace $ospredje $ospredje $ozadje
active_workspace $ospredjeTrans $ospredjeTrans $ozadje
inactive_workspace $ozadje $ozadje $ospredje
}
font pango:FontAwesome Regular 12, Iosevka SS01 Medium 12
font pango:FontAwesome, Iosevka SS01 Medium 12
strip_workspace_numbers yes
height 26
#tray_padding 2
separator_symbol ""
}
include /etc/sway/config.d/*
#include /etc/sway/config.d/*
set $zelena #b8bb26
set $temnoZelena #98971a
set $okvir #665c54
set $bg0_s #32302f
set $fg3 #bdae93
# Colors
client.focused #444444 #444444 #A9D000 #8c9825 #444444
client.focused_inactive #444444 #444444 #A9D000 #5c7825 #444444
client.focused $okvir $ozadje $ospredje $ospredje $okvir
client.focused_inactive #444444 #444444 #A9D000 $fg3 $bg0_s
client.unfocused #222222 #222222 #888888 #292d2e #222222
client.background #222222
# gaps between windows
gaps inner 6
@ -258,6 +278,9 @@ hide_edge_borders smart
# Mouse focus
focus_follows_mouse yes
# Premik kurzorja v aktivno okno
#mouse_warping container
# KBD layouti
input "type:keyboard" {
xkb_layout us,si
@ -266,6 +289,7 @@ input "type:keyboard" {
# Touchpad fensi
input "type:touchpad" {
events enabled
tap enabled
click_method clickfinger
natural_scroll enabled
@ -281,9 +305,9 @@ bindsym Mod1+shift+x exec playerctl play-pause
bindsym Mod1+shift+c exec playerctl play-pause
# Zvok
set $vol_down_cmd amixer -q sset Master 5%-
set $vol_up_cmd amixer -q sset Master 5%+
set $vol_toggle_cmd amixer -q sset Master toggle
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"
@ -295,14 +319,14 @@ 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'
gsettings set $gnome-schema gtk-theme "Arc-Darker"
gsettings set $gnome-schema icon-theme "Delft-Mint"
gsettings set $gnome-schema cursor-theme "Bibata-Original-Classic"
}
# Zvetlost zaslona
bindsym XF86MonBrightnessUp exec "light -A 3"
bindsym XF86MonBrightnessDown exec "light -U 3"
bindsym XF86MonBrightnessUp exec "brightnessctl set 3%+"
bindsym XF86MonBrightnessDown exec "brightnessctl set 3%-"
# Zunanji skrin
bindsym $mod+p exec "swaymsg output HDMI-A-2 enable"
@ -324,30 +348,32 @@ bindsym $mod+space exec "/home/g1smo/bin/get-layout.sh"
###
# Fix za pocasen GTK app startup
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP=sway
# transparenca nekativnih oken
exec ~/bin/inactive-windows-transparency.py
#exec_always ~/bin/inactive-windows-transparency.py
# Desktop notifikacije
exec mako --default-timeout=10000 --icon-path /usr/share/icons/Numix
#exec mako --default-timeout=5000 --icon-path /usr/share/icons/Numix
exec_always mako --default-timeout=5000 --icons 1 --icon-path $HOME/.guix-home/profile/share/icons/Delft:$HOME/.guix-profile/share/icons/:/usr/share/icons
# Autotiling https://github.com/nwg-piotr/autotiling
exec ~/bin/autotiling.py
exec autotiling
# Rdece, da lahko spim, hvala
exec gammastep -m wayland -l 46.05108:14.50513
#exec_always gammastep -m wayland -l 46.05108:14.50513
# Zagoni programov razporejeni na workspejse
workspace 0:
workspace 1:
#exec firefox
exec librewolf
workspace 2:λ
workspace 2:
exec emacs
workspace 3:
exec thunderbird
exec icedove
workspace 4:
#exec revolt
@ -355,14 +381,27 @@ workspace 4:
exec element-desktop
workspace 9:
exec gnome-keyring-daemon --start --control-directory=/run/user/1000/keyring
#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
#exec ~/bin/swaynag-battery
# Lebdeca okna (najdes preko "swaymsg -t get_tree")
for_window [app_id="org.keepassxc.KeePassXC"] floating enable
for_window [title="^Utopia"] floating enable
for_window [title="^OSCRecorder"] floating enable
# Foot terminal server!
exec foot --server
# SwayFX
blur disable
blur_passes 1
corner_radius 5
shadows disable
shadows_on_csd enable
default_dim_inactive 0.2

View File

@ -2,16 +2,16 @@
;;; 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"
(filename . "~/.notes")
(front-context-string . "** TODO Zaraščen")
(rear-context-string)
(position . 9)
(last-modified 25598 13456 906334 599000))
("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))
(("projekti" (filename . "~/org/projekti.org")
(front-context-string . "#+TITLE: Projekt") (rear-context-string)
(position . 1) (last-modified 26275 37099 918821 368000))
("org-capture-last-stored" (filename . "~/org/zapiski.org")
(front-context-string . "** TODO Vrstni r")
(rear-context-string . "2024-01-05 pet]\n") (position . 661)
(last-modified 26008 34892 637157 892000))
("FLUXUS navodilo"
(filename . "~/sredstva/fluxus/docs/fluxus-manual.[en].org")
(front-context-string . "#+TITLE: Fluxus:") (rear-context-string)
(position . 1) (last-modified 25693 29993 875550 300000))
("IRS" (filename . "~/rs/megla-sync/org/irs.org"))
)

1570
.emacs.d/config.org 100644

File diff suppressed because it is too large Load Diff

View File

@ -1,567 +1,72 @@
;;;;;;;;;;;;
;; PAKETI ;;
;;;;;;;;;;;;
;;; init --- naloži org konfiguracijo in še kaj -*- lexical-binding: t -*-
;(setq use-package-compute-statistics t)
;;; Commentary:
;; Naloži konfiguracije iz ORG datoteke, ostanki nerazvrščenih zadev
;; ter kustomizacije.
(setq debug-on-error t)
(setq warning-minimum-level :error)
;; Loudamo melpa paketice
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
;; Error in pre-command-hook (vertico--prepare): (void-function compat--completion-metadata-get)
;(let ((regex "compat--completion-metadata-get"))
; (->> (elisp-load-path-roots)
; (-filter #'file-exists-p)
; (mapcar #'shell-quote-argument)
; (append `("grep" "-R" ,(shell-quote-argument regex)))
; (funcall (-flip #'string-join) " ")
; (grep-find)))
;; Set up package.el to work with MELPA
(require 'package)
(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
:mode "\\.scm\\'")
(use-package geiser-guile
:ensure t
:after geiser
: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))
;; Rabimo general.el za use-pakcage macroje
(require 'general)
;;; Code:
(org-babel-load-file "~/.emacs.d/config.org")
;;;;;;;;;;;
;; Razno ;;
;;;;;;;;;;;
;; IVY
(use-package ivy
:ensure t
;; Izboljsani default ukazi bolj prijazni
;; Iskanje po fajlih (fulltext)
;(use-package rg
; :defer t
; :config
; (rg-enable-default-bindings))
;; ELISP test
(defun odpri-dnevnik ()
"Dodaj dnevniški zapis v tmp folder sistema."
(interactive)
(find-file (format-time-string "/tmp/%Y-%m-%d_dnevnik.org"))
(insert (concat "\n=====================\n"
(shell-command-to-string "date") "\n"
(format-time-string "%Y-%m-%d") "\n"
"ŠE VEČ TEKSTA!" "\n")))
(global-set-key (kbd "C-M-d") 'odpri-dnevnik)
;; Sinhronizacija podnapisov (uporablja mpv!)
(use-package subed
:defer 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)
;; Remember cursor position between sessions
(add-hook 'subed-mode-hook 'save-place-local-mode)
;; Break lines automatically while typing
(add-hook 'subed-mode-hook 'turn-on-auto-fill)
;; Break lines at 40 characters
(add-hook 'subed-mode-hook (lambda () (setq-local fill-column 40)))
;; Some reasonable defaults
(add-hook 'subed-mode-hook 'subed-enable-pause-while-typing)
;; As the player moves, update the point to show the current subtitle
(add-hook 'subed-mode-hook 'subed-enable-sync-point-to-player)
;; As your point moves in Emacs, update the player to start at the current subtitle
(add-hook 'subed-mode-hook 'subed-enable-sync-player-to-point)
;; Replay subtitles as you adjust their start or stop time with M-[, M-], M-{, or M-}
(add-hook 'subed-mode-hook 'subed-enable-replay-adjusted-subtitle)
;; Loop over subtitles
(add-hook 'subed-mode-hook 'subed-enable-loop-over-current-subtitle)
;; Show characters per second
(add-hook 'subed-mode-hook 'subed-enable-show-cps))
;;;;;;;;;;;;
@ -573,18 +78,35 @@
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(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"))
'("ba323a013c25b355eb9a0550541573d535831c557674c8d59b9ac6aa720c21d3"
default))
'(helm-minibuffer-history-key "M-p")
'(package-selected-packages
'(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))
'(a arduino-mode benchmark-init bui cider company consult
counsel-projectile crdt dashboard diminish direnv doom-modeline
drupal-mode editorconfig evil-collection evil-org
extempore-mode faceup fluxus-mode flycheck format-all geben
geiser-guile general gruvbox-theme helm helpful htmlize jq-mode
list-utils loop lsp-mode magit magit-popup marginalia mu4e
mu4e-dashboard mu4e-marker-icons nerd-icons-completion
nyan-mode ob-mermaid openwith orderless org-bullets org-caldav
org-present org-projectile page-break-lines paredit pkg-info
pos-tip pretty-sha-path pyvenv racket-mode rainbow-delimiters
restclient rjsx-mode sclang-extensions shut-up slime
smartparens smex subed svg-icon tidal toml-mode
treemacs-projectile treesit-auto undo-tree use-package vertico
vue-mode w3m web-beautify web-mode which-key writeroom-mode
yaml-mode zone-nyan))
'(package-vc-selected-packages
'((svg-icon :url "https://github.com/rougier/emacs-svg-icon")))
'(sclang-indent-level 2))
(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)))))
'(org-document-title ((t (:inherit default :weight bold :family "Sans Serif" :height 2.0 :underline nil))))
'(org-level-1 ((t (:inherit default :weight bold :family "Sans Serif" :height 1.75))))
'(org-level-2 ((t (:inherit default :weight bold :family "Sans Serif" :height 1.45))))
'(org-level-3 ((t (:inherit default :weight bold :family "Sans Serif" :height 1.25))))
'(org-level-4 ((t (:inherit default :weight bold :family "Sans Serif" :height 1.1)))))

View File

@ -0,0 +1,114 @@
;;; sclang-helper.el --- Enhance the functionality of scel -*- lexical-binding: t; -*-
;;; Commentary:
;; This program contains serveral custom additional functions to scel.
;; https://github.com/yilin-zhang/sclang-helper
;;; Code:
(require 'sclang)
(require 'cl-lib)
(require 'pulse)
(defun sclang-helper-eval-line (&optional silent-p)
"Execute the current line as SuperCollider code with highlight."
(interactive "P")
(let ((string (sclang-line-at-point)))
(when string
(sclang-eval-string string (not silent-p)))
(pulse-momentary-highlight-one-line (point)) ;; highlighting
string))
(defun sclang-helper-eval-region (&optional silent-p)
"Execute the region as SuperCollider code with highlight"
(interactive "P")
(sclang-eval-string
(buffer-substring-no-properties (region-beginning) (region-end))
(not silent-p))
(pulse-momentary-highlight-region (region-beginning) (region-end))) ;; highlighting
(defun sclang-helper-eval-region-or-line (&optional silent-p)
"Execute the line or region as SuperCollider code with highlight"
(interactive "P")
(if (and transient-mark-mode mark-active)
(sclang-helper-eval-region silent-p)
(sclang-helper-eval-line silent-p)))
;; TODO: It's not functional when the prentheses don't match.
(defun sclang-helper-eval-paren-region (&optional silent-p)
"Execute the region inside the outermost parentheses.
Return t if the evaluation happens, nil if it doens't happen."
(interactive "P")
(cl-flet
((check-char-text (char)
"Check if the char is normal text"
(if (and (characterp char)
(not (member (get-char-code-property char 'general-category) '(Zs Cc))))
t
nil)))
(save-excursion
;; iteratively check if there's an upper level left parenthesis
(let ((paren-matched nil))
(while
(condition-case nil
(progn
(if (equal (char-to-string (char-after)) "(")
(setq paren-matched t)
(setq paren-matched nil))
(backward-up-list)
t)
(error nil)))
(if paren-matched
(progn
(let ((point-paren-1 (point))
(point-paren-2 (progn (forward-list) (point))))
;; check if there's nothing around the paired parentheses
(if (or (check-char-text (char-before point-paren-1))
;; after calling forward-list, point-paren-2 is actually the char after
;; the right parenthesis
(check-char-text (char-after point-paren-2)))
nil
(progn
(set-mark point-paren-1)
(setq mark-active t)
(sclang-helper-eval-region-or-line silent-p)
(setq mark-active nil)
t))))
nil)))))
(defun sclang-helper-auto-eval (&optional silent-p)
(interactive "P")
(if (and transient-mark-mode mark-active)
(sclang-eval-region silent-p)
(if (not (sclang-helper-eval-paren-region silent-p))
(sclang-helper-eval-line silent-p))))
(defun sclang-helper-show-meter ()
(interactive)
(sclang-eval-string "Server.local.meter"))
(defun sclang-helper-show-freqscope()
(interactive)
(sclang-eval-string "Server.local.freqscope"))
(defun sclang-helper-show-tree()
(interactive)
(sclang-eval-string "Server.local.plotTree"))
;;;###autoload
(define-minor-mode sclang-helper-mode
"Toggle sclang mode."
:lighter " sclang-helper"
:keymap (let ((map (make-sparse-keymap)))
(define-key map (kbd "<s-return>") 'sclang-helper-auto-eval)
(define-key map (kbd "<C-return>") 'sclang-helper-auto-eval)
(define-key map (kbd "s-m") 'sclang-helper-show-meter)
(define-key map (kbd "s-f") 'sclang-helper-show-freqscope)
(define-key map (kbd "s-n") 'sclang-helper-show-tree)
(define-key map (kbd "s-.") 'sclang-main-stop)
(define-key map (kbd "s-d") 'sclang-find-help-in-gui)
map))
(provide 'sclang-helper)
;;; sclang-helper.el ends here

7
.guile
View File

@ -1,6 +1,7 @@
;; Readline fix (za smerne tipke v replu)
(use-modules (ice-9 readline))
(use-modules (ice-9 readline)
(ice-9 colorized)
(texinfo reflection))
(activate-readline)
(activate-colorized)
;; 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

@ -1,67 +0,0 @@
# <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_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 GUIX_PACKAGE_PATH="$HOME/projekti/guix-paketi"
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

1
.profile 120000
View File

@ -0,0 +1 @@
.zprofile

View File

@ -7,6 +7,10 @@ Host pi
Host felis.kreten.si
Port 2312
Host a2z.si
HostkeyAlgorithms ssh-dss,ssh-rsa
KexAlgorithms +diffie-hellman-group1-sha1
Host 192.168.64.100
PubkeyAcceptedAlgorithms +ssh-rsa
HostkeyAlgorithms +ssh-rsa
Host 192.168.32.1
PubkeyAcceptedAlgorithms +ssh-rsa
HostkeyAlgorithms +ssh-rsa

48
.zlogin
View File

@ -1,29 +1,25 @@
# Solarized theme for tty, the light version.
# Based on:
# - Solarized (http://ethanschoonover.com/solarized)
# - Xresources from http://github.com/altercation/solarized
# Generated with pty2tty.awk by Joep van Delft
# http://github.com/joepvd/tty-solarized
# Gruvbox tema za tty. Vir: https://archive.fo/QSYHd#selection-59.0-59.639
if [ "$TERM" = "linux" ]; then
echo -en "\e]PB657b83" # S_base00
echo -en "\e]PA586e75" # S_base01
echo -en "\e]P0073642" # S_base02
echo -en "\e]P62aa198" # S_cyan
echo -en "\e]P8002b36" # S_base03
echo -en "\e]P2859900" # S_green
echo -en "\e]P5d33682" # S_magenta
echo -en "\e]P1dc322f" # S_red
echo -en "\e]PC839496" # S_base0
echo -en "\e]PE93a1a1" # S_base1
echo -en "\e]P9cb4b16" # S_orange
echo -en "\e]P7eee8d5" # S_base2
echo -en "\e]P4268bd2" # S_blue
echo -en "\e]P3b58900" # S_yellow
echo -en "\e]PFfdf6e3" # S_base3
echo -en "\e]PD6c71c4" # S_violet
clear # against bg artifacts
echo -en "\e]P0222222" #black
echo -en "\e]P8222222" #darkgrey
echo -en "\e]P1803232" #darkred
echo -en "\e]P9982b2b" #red
echo -en "\e]P25b762f" #darkgreen
echo -en "\e]PA89b83f" #green
echo -en "\e]P3aa9943" #brown
echo -en "\e]PBefef60" #yellow
echo -en "\e]P4324c80" #darkblue
echo -en "\e]PC2b4f98" #blue
echo -en "\e]P5706c9a" #darkmagenta
echo -en "\e]PD826ab1" #magenta
echo -en "\e]P692b19e" #darkcyan
echo -en "\e]PEa1cdcd" #cyan
echo -en "\e]P7ffffff" #lightgrey
echo -en "\e]PFdedede" #white
clear #for background artifacting
fi
#if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then
# exec sway
#fi
# Sway autostart
if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then
exec sway
fi

View File

@ -1 +1,57 @@
. ~/.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
# 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_PROFILE="$HOME/.guix-profile"
export GUIX_PACKAGE_PATH="$HOME/projekti/kompot/guix-kompot:$HOME/projekti/guix-paketi"
if [[ -d "$HOME/.cargo" ]]; then
. "$HOME/.cargo/env"
fi

73
.zshrc
View File

@ -62,10 +62,11 @@ bindkey '^R' history-incremental-pattern-search-backward
#}
# 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 grep="grep --color=auto"
alias sudo='sudo '
alias ag="rg"
alias less="less -R"
@ -74,13 +75,11 @@ alias sctl="systemctl"
alias ddrush="ddev exec drush"
alias dcomposer="ddev exec composer"
alias offer-files="python3 -m http.server"
alias make-home="cd $HOME/sredstva/dotfiles; make guix-home"
# 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"
@ -99,7 +98,8 @@ 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'
alias zw="ssh zeljko@dev.radiostudent.si"
alias rs='ssh radiostudent.si'
alias rr='ssh root@radiostudent.si'
# Poslusaj snemanje
alias poslusaj='pactl load-module module-loopback latency_msec=1'
@ -127,11 +127,68 @@ 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"
# Spanje / nespanje
alias insomnia="sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target"
alias pocivanje="sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target"
alias lowdelay="PIPEWIRE_LATENCY=128/48000 "
# zvok prek mreze!
alias pulse-listen="pactl load-module module-native-protocol-tcp port=4656 listen="
alias pulse-connect="pactl load-module module-tunnel-sink server=tcp:${PULSEIP}:4656"
alias pulse-virtual-sink="pactl load-module module-null-sink media.class=Audio/Source/Virtual sink_name=my-virtualmic channel_map=front-left,front-right"
alias sardon="source $HOME/mska/sardine/venv/bin/activate"
alias powersave="sudo cpupower frequency-set -g powersave"
alias powerfull="sudo cpupower frequency-set -g ondemand"
alias imgcrop1920="mogrify -resize 1920x1920 "
alias ustvari-drupal="composer create-project drupal/recommended-project "
# 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}"
if command -v go &> /dev/null; then
export PATH="${PATH}:$(go env GOPATH)/bin"
fi
#export LD_LIBRARY_PATH="$(go env GOPATH)/deps/dqlite/.libs/:$(go env GOPATH)/deps/raft/.libs/:${LD_LIBRARY_PATH}"
# ??? fix crashanja
#export LD_LIBRARY_PATH="/lib/x86_64-linux-gnu:/lib/i386-linux-gnu"
# JS fix (prevec nov za openssl)
#export NODE_OPTIONS="--openssl-legacy-provider"
# Terminal podpora
alias termfix="TERM=rxvt-256color "
#export TERM=rxvt-256color
# Deli internet (iz wifi na eth)
alias share-internet="sudo iptables --table nat -A POSTROUTING --out-interface enp5s0 -j MASQUERADE && sudo iptables -A FORWARD --in-interface enp5s0 -j ACCEPT"
# Android studio in SDK
export ANDROID_HOME="$HOME/Android/Sdk"
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
#export PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin/
export PATH=$PATH:$HOME/android-studio/bin
export PATH=$PATH:/opt/gradle-8.7/bin
# Cargo!
export PATH=$HOME/.cargo/bin:$PATH
# CC = gcc
export CC=gcc
# Direnv
eval "$(direnv hook zsh)"
# Restart pipewire(debian)
alias restart-pipewire-debian="systemctl restart --user wireplumber pipewire pipewire-pulse"
function abeceda {
for x in {A..Z}; do; y=$(echo "$x" | tr '[:upper:]' '[:lower:]'); echo -e "\t$x\t$y"; done
}
function ajpi {
IPV4=$(curl -s 'https://api.ipify.org?format=json' | jq '.ip') && HOME_IPV4='"193.77.221.150"' && if [ "$HOME_IPV4" = "$IPV4" ]; then; echo "LIO: $IPV4"; else; printf 'ipv4: %s\n' "$IPV4"; fi && printf 'ipv6: %s\n' $(curl -s 'https://api64.ipify.org?format=json' | jq '.ip')
}

5
Makefile 100644
View File

@ -0,0 +1,5 @@
DIR := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
guix-home:
guix home reconfigure $(DIR)guix/home/home-configuration.scm

View File

@ -0,0 +1,12 @@
[Desktop Entry]
Name=SuperCollider IDE
GenericName=SuperCollider IDE
Comment=IDE for the SuperCollider audio synthesis language
# Run via pipewire
Exec=pw-jack scide %F
Icon=sc_ide
Type=Application
Terminal=false
Categories=AudioVideo;Audio;Development;IDE;
MimeType=text/x-sc;
StartupWMClass=scide

View File

@ -0,0 +1,12 @@
[Desktop Entry]
Name=Ardour
Comment=Ardour Digital Audio Workstation
Exec=env PIPEWIRE_LATENCY=128/48000 pw-jack ardour8 %F
Icon=ardour8
Terminal=false
MimeType=application/x-ardour;
Type=Application
Categories=AudioVideo;Audio;AudioEditing;X-Recorders;X-Multitrack;X-Jack;
StartupWMClass=Ardour
X-NMS-Capable=true
X-NMS-Exec=ardour8

View File

@ -0,0 +1,12 @@
[Desktop Entry]
Name=Arduino IDE 2
Comment=Open-source electronics prototyping platform
GenericName=Arduino IDE 2
Exec=env LD_LIBRARY_PATH=/lib/x86_64-linux-gnu /home/g1smo/apps/arduino-ide_2.3.2_Linux_64bit.AppImage %f
Icon=arduino
Type=Application
Terminal=false
Categories=Development;Engineering;Electronics;IDE;
MimeType=text/x-arduino
Keywords=embedded electronics;electronics;avr;microcontroller;
StartupWMClass=processing-app-Base

View File

@ -0,0 +1,13 @@
[Desktop Entry]
Name=Emacs Pipewire
GenericName=Text Editor
Comment=Edit text
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
# Run via pipewire (for supercollider!)
Exec=env PIPEWIRE_LATENCY=128/48000 pw-jack emacs %F
Icon=emacs
Type=Application
Terminal=false
Categories=Development;TextEditor;
StartupNotify=true
StartupWMClass=Emacs

View File

@ -1,214 +0,0 @@
#!/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()

View File

@ -1,4 +1,4 @@
#!/usr/bin/python3
#!/usr/bin/env python3
# This script requires i3ipc-python package (install it from a system package manager

View File

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

View File

@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Screenshot na waylandu!
# DEPS: grim, slurp

View File

@ -1,74 +0,0 @@
;; 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-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")
(timezone "Europe/Ljubljana")
(locale "en_US.UTF-8")
;; 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))
(users (cons* (user-account
(name "yuri")
(comment "Silly Yuri")
(group "users")
(shell zsh-location)
(supplementary-groups '("wheel" "netdev"
"audio" "video"))
(home-directory "/home/yuri"))
%base-user-accounts))
;; This is where we specify system-wide packages.
(packages (cons* nss-certs ;for HTTPS access
zsh ;Z shell
openssh
git
emacs
vim
bspwm
libinput
xf86-input-libinput
freetype
%base-packages))
;; Add GNOME and/or Xfce---we can choose at the log-in
;; screen with F1. Use the "desktop" services, which
;; include the X11 log-in service, networking with Wicd,
;; and more.
(services (cons* ;;(xfce-desktop-service)
(gnome-desktop-service)
%desktop-services-nm))
;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss))

170
guix/config.scm 100644
View File

@ -0,0 +1,170 @@
(use-modules
(gnu)
(gnu system nss)
(nongnu packages linux)
(nongnu system linux-initrd)
(guix utils)
(srfi srfi-1))
(use-service-modules base desktop xorg dns networking docker pm cups)
(use-package-modules bootloaders certs shells ssh version-control emacs vim wm freedesktop xorg fontutils docker cups android)
;; Autologin (ker imamo encrypted root!)
(define (auto-login-to-tty config tty user)
(if (string=? tty (mingetty-configuration-tty config))
(mingetty-configuration
(inherit config)
(auto-login user))
config))
(define %my-services
(modify-services %desktop-services
;; tty2 autologin
(mingetty-service-type config =>
(auto-login-to-tty
config "tty2" "g1smo"))))
(operating-system
(host-name "pnx")
(timezone "Europe/Ljubljana")
(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))
(groups (cons* (user-group (name "adbusers"))
(user-group (name "plugdev"))
%base-groups))
(users (cons* (user-account
(name "g1smo")
(comment "Yuri")
(group "users")
(uid 1000)
(shell (file-append zsh "/bin/zsh"))
(supplementary-groups '("wheel" "netdev"
"audio" "video"
"dialout" "users" "lp"
;; Za ddev
"docker"
;; za fastboot/adb
"adbusers"
;; networkmanager connections
"plugdev"))
(home-directory "/home/g1smo"))
%base-user-accounts))
(packages (append (list ;; Osnovni WM
"i3-wm"
"i3status"
"dmenu"
"st"
;; sistem
"lvm2"
"amdgpu-firmware"
;; WM zadeve
"sway"
"swaybg"
"rofi"
"i3-autotiling"
"waybar"
"gammastep"
"foot"
"eog"
"nautilus"
;; Urejevalniki teksta
"emacs"
"vim"
;; Razno
"zsh"
"git"
"file"
;; Napajanje, baterija ...
"acpi"
"file"
;; Za docker (ddev)
"docker")
%base-packages))
(services
(cons* (service gnome-desktop-service-type)
;; dns cache
(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)))
(service tlp-service-type
(tlp-configuration
(cpu-scaling-governor-on-ac (list "ondemand"))
(max-lost-work-secs-on-ac 0)
(ahci-runtime-pm-timeout 0)))
(service thermald-service-type)
(service bluetooth-service-type)
;; Za ddev
(service docker-service-type)
(service containerd-service-type)
;; printanje
(service cups-service-type
(cups-configuration
(web-interface? #t)
(extensions
(list cups-filters hplip-minimal))))
;; fastboot kot navadni user
(udev-rules-service 'android android-udev-rules)
;; dodatna imena gostiteljev
(simple-service 'extra-hosts
(list (host "192.168.0.88" "pi")
(host "192.168.0.200" "pinenote")
(host "194.249.242.45" "p1")))
(remove
(lambda (service)
(eq? network-manager-service-type (service-kind service)))
%my-services )))
(swap-devices
(list (swap-space
(target (uuid "76019829-e8eb-477c-a08a-d2ccff3fcdd5")))))
(mapped-devices
(list (mapped-device
(source (uuid "3020ad8b-ee01-49e2-8a46-3f66c902ef67"))
(target "sda3_crypt")
(type luks-device-mapping))
(mapped-device
(source "dbn-vg")
(targets (list "dbn--vg-guix" "dbn--vg-btr--home"))
(type lvm-device-mapping))))
;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss)
(file-systems
(cons* (file-system
(mount-point "/")
(device "/dev/mapper/dbn--vg-guix")
(type "btrfs")
(options "subvol=@root,compress-force=zstd,space_cache=v2")
(dependencies mapped-devices))
(file-system
(mount-point "/mnt/debian-home")
(device "/dev/mapper/dbn--vg-btr--home")
(type "btrfs")
(options "compress-force=zstd,space_cache=v2")
(dependencies mapped-devices))
(file-system
(mount-point "/boot/efi")
(device (uuid "3F44-75AB" 'fat))
(type "vfat"))
%base-file-systems)))

View File

@ -0,0 +1,4 @@
(specifications->packages
(list
"firefox-esr-wayland"))

View File

@ -0,0 +1,289 @@
;; 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 services)
(guix gexp)
(gnu home services)
(gnu home services shells)
(gnu home services pm)
(gnu home services desktop)
(gnu packages xdisorg)
(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
;; E-pošta
"icedove-wayland"
;"icedove-l10n:sl"
"mu"
"gnupg"
;; Chat
"element-desktop"
"irssi"
"signal-desktop"
;; Emacs in paketi
"emacs-next-pgtk-xwidgets"
"emacs-use-package"
"emacs-benchmark-init"
"emacs-general"
"emacs-evil"
"emacs-evil-collection"
"emacs-evil-org"
;"emacs-treemacs-evil"
"emacs-vertico"
;"emacs-savehist"
"emacs-marginalia"
"emacs-orderless"
;"emacs-nerd-icons-completion"
"emacs-swiper"
"emacs-counsel"
"emacs-smex"
"emacs-helpful"
"emacs-which-key"
"emacs-crdt"
"emacs-openwith"
"emacs-org"
;"emacs-ob-mermaid"
"emacs-visual-fill-column"
"emacs-writeroom"
"emacs-org-caldav"
"emacs-org-bullets"
"emacs-htmlize"
"emacs-gruvbox-theme"
"emacs-doom-modeline"
"emacs-nerd-icons"
"emacs-undo-tree"
"emacs-markdown-mode"
"emacs-guix"
"emacs-projectile"
"emacs-counsel-projectile"
"emacs-editorconfig"
"emacs-treemacs"
"emacs-smartparens"
"emacs-company"
"emacs-flycheck"
"emacs-format-all-the-code"
"emacs-direnv"
"emacs-magit"
;"emacs-treesit-auto"
"emacs-rainbow-delimiters"
"emacs-geiser-guile"
"emacs-racket-mode"
"emacs-slime"
"emacs-web-mode"
"emacs-restclient"
;"emacs-php-mode"
;"emacs-drupal-mode"
;"emacs-geben"
"emacs-js2-mode"
;"emacs-vue-mode"
"emacs-rjsx-mode"
"emacs-pyvenv"
;"emacs-sclang"
;"emacs-fluxus-mode"
"emacs-extempore-mode"
;"emacs-tidal"
"emacs-toml-mode"
"emacs-yaml-mode"
"emacs-arduino-mode"
"emacs-lsp-mode"
;"emacs-mu4e"
;"emacs-mu4e-marker-icons"
"emacs-mu4e-dashboard"
;"emacs-mu4e-thread-folding"
"emacs-nyan-mode"
"emacs-svg-icon"
"emacs-scel"
"emacs-spinner"
"emacs-vertico"
"emacs-cider"
;; Splet
"librewolf"
"nyxt"
"surfraw"
;; Brskanje po fajlih
"thunar"
"ncdu"
;; Wine za wins programe
"wine64"
;; Guile programiranje
"guile-next"
"guile-goblins"
"guile-chickadee"
"guile-readline"
"guile-colorized"
"guile-dbi"
"guile-dbd-mysql"
"guile-dbd-sqlite3"
"guile-zstd"
"artanis"
"guile-studio"
"sicp"
;; Torrenti / fajl sharing
"transmission:gui"
"transmission"
"nicotine+"
;; Terminal, orodja
"foot"
"screen"
"reptyr"
"ripgrep"
"rsync"
"direnv"
"openssh"
"sshfs"
"woff-tools"
"gzip"
"unzip"
"pwgen"
"jq"
"curl"
"nextcloud-client"
"powertop" ; poraba energije
"ncurses" ; clear ukaz, najbrz tudi kaksni drugi
"hexyl" ; CLI hex editor
"gparted"
"xhost" ; za sudo gui (vidi zshrc)
;; upravljanje oken
"swayfx"
"swaybg"
"i3-wm"
"i3status"
"rofi-wayland"
"mako"
"gammastep"
"i3-autotiling"
"eog" ; gledanje slik
"vlc" ; multimedia plejer
"keepassxc" ; gesla / keyring
"seahorse" ; keyring urejevalnik
"glib:bin" ; za gsettings ukaz
"grim" ; zaslonske slike
"slurp" ; zaslonske slike
"pamixer" ; za jakost stimat
"brightnessctl" ; svetlost zaslona
"wdisplays" ; nastavitve zaslonov
;; pisave
"font-liberation"
"font-dejavu"
"font-fira-code"
"font-awesome"
;; zvok
"qpwgraph"
"qjackctl"
"pavucontrol"
"alsa-utils"
"non-mixer"
"audacity"
"ardour"
"infamous-plugins"
"swh-plugins-lv2"
"zam-plugins"
"x42-plugins"
"caps-plugins-lv2"
"zplugins"
;"lsp-plugins"
"distrho-ports"
"omins-lv2"
"supercollider"
"soundconverter"
"picard"
"sooperlooper"
"ffmpeg"
;; mrezna orodja
"xl2tpd"
"nmap"
"wireshark"
"bind:utils"
;; urejanje in branje dokumentov (ne-emacs)
"libreoffice"
"evince"
"calibre"
"gedit"
"okular" ;; Digitalno podpisovanje pdf dokumentov
;; Urejanje slik
"gimp"
"inkscape"
"gimp-resynthesizer" ; magicna orodja v gimpu
;; video urejanje
"kdenlive"
;"olive"
;; Eye candy
"gnome-tweaks"
"arc-theme"
"numix-gtk-theme"
"qt5ct"
;"hyprland"
;"hyfetch"
"wfetch"
"texlive-etbb"
"bibata-cursor-theme"
"delft-icon-theme"
;; Programiranje
"rust"
"valgrind"
"xxd"
"make"
"python"
;; Igre
"gzdoom"
"gnubg"
"freegish"
"kigo"
"crawl-tiles"
;; Razno
"nss-certs"
"glibc-locales")))
;; Below is the list of Home services. To search for available
;; services, run 'guix home search KEYWORD' in a terminal.
(services
(list ;; Shell - zsh
(service home-zsh-service-type
(home-zsh-configuration
(zlogin (list (local-file "../../.zlogin" "zlogin")))
(zshrc (list (local-file "../../.zshrc" "zshrc")))
(zprofile (list (local-file "../../.zprofile" "zprofile")))))
;; Razne konfiguracije (~/.config)
(service home-files-service-type
;; Desktop file overrides; pw-jack za supercolider
`((".local/share/applications/SuperColliderIDE.desktop" ,(local-file "../../applications/SuperColliderIDE.desktop"))
(".local/share/applications/emacsPW.desktop" ,(local-file "../../applications/emacsPW.desktop"))))
;; Razni dotfajli - konfiguracije (~/.config)
(service home-xdg-configuration-files-service-type
`(("sway/config" ,(local-file "../../.config/sway/config"))
("rofi/config.rasi" ,(local-file "../../.config/rofi/config.rasi"))
("foot/foot.ini" ,(local-file "../../.config/foot/foot.ini"))
("i3status/config" ,(local-file "../../.config/i3status/config"))))
;; TODO povezi se druge dotfajle!
;; Indikator prazne baterije
(service home-batsignal-service-type)
;; Dbus storitev, ki se rabi kdaj
(service home-dbus-service-type))))

View File

@ -0,0 +1,331 @@
;; 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 services)
(guix gexp)
(gnu home services)
(gnu home services shells)
(gnu home services pm)
(gnu home services desktop)
(gnu packages xdisorg)
(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
;; E-pošta
"icedove-wayland"
;"icedove-l10n:sl"
"mu"
"gnupg"
;; Chat
"element-desktop"
"irssi"
"signal-desktop"
;; Emacs in paketi
"emacs-next-pgtk"
"emacs-use-package"
"emacs-benchmark-init"
"emacs-general"
"emacs-evil"
"emacs-evil-collection"
"emacs-evil-org"
;"emacs-treemacs-evil"
;"emacs-vertico"
;"emacs-savehist"
"emacs-marginalia"
"emacs-orderless"
;"emacs-nerd-icons-completion"
"emacs-swiper"
"emacs-counsel"
"emacs-smex"
"emacs-helpful"
"emacs-which-key"
"emacs-crdt"
"emacs-openwith"
"emacs-org"
;"emacs-ob-mermaid"
"emacs-visual-fill-column"
"emacs-writeroom"
"emacs-org-caldav"
"emacs-org-bullets"
"emacs-org-present"
"emacs-htmlize"
"emacs-gruvbox-theme"
"emacs-doom-modeline"
"emacs-nerd-icons"
"emacs-undo-tree"
"emacs-markdown-mode"
"emacs-guix"
"emacs-projectile"
"emacs-counsel-projectile"
"emacs-editorconfig"
"emacs-treemacs"
"emacs-smartparens"
"emacs-company"
"emacs-flycheck"
"emacs-format-all-the-code"
"emacs-direnv"
"emacs-magit"
;"emacs-treesit-auto"
"emacs-rainbow-delimiters"
"emacs-geiser-guile"
"emacs-racket-mode"
"emacs-slime"
"emacs-web-mode"
"emacs-restclient"
;"emacs-php-mode"
;"emacs-drupal-mode"
;"emacs-geben"
"emacs-js2-mode"
;"emacs-vue-mode"
"emacs-rjsx-mode"
"emacs-pyvenv"
;"emacs-sclang"
;"emacs-fluxus-mode"
"emacs-extempore-mode"
;"emacs-tidal"
"emacs-toml-mode"
"emacs-yaml-mode"
"emacs-spinner"
"emacs-arduino-mode"
"emacs-lsp-mode"
;"emacs-mu4e"
;"emacs-mu4e-marker-icons"
"emacs-dashboard"
"emacs-mu4e-dashboard"
;"emacs-mu4e-thread-folding"
"emacs-nyan-mode"
"emacs-svg-icon"
"emacs-scel"
"emacs-vertico"
"emacs-queue"
"emacs-cider"
;; Splet
"librewolf"
"nyxt"
"surfraw"
;; Brskanje po fajlih
"nautilus"
"thunar"
"ncdu"
;; Wine za wins programe
"wine64"
;; Guile programiranje
"guile-next"
"guile-goblins"
"guile-chickadee"
"guile-readline"
"guile-colorized"
"guile-dbi"
"guile-dbd-mysql"
"guile-dbd-sqlite3"
"guile-zstd"
"artanis"
"guile-studio"
"sicp"
;; Drugi lispi
"racket"
"clojure"
"leiningen"
;; Torrenti / fajl sharing
"transmission:gui"
"transmission"
"nicotine+"
;; Terminal, orodja
"foot"
"screen"
"reptyr"
"ripgrep"
"rsync"
"direnv"
"openssh"
"sshfs"
"woff-tools"
"gzip"
"unzip"
"pwgen"
"jq"
"curl"
"w3m" ; CLI spletni brskalnik
"nextcloud-client"
"powertop" ; poraba energije
"ncurses" ; clear ukaz, najbrz tudi kaksni drugi
"hexyl" ; CLI hex editor
"gparted"
"xhost" ; za sudo gui (vidi zshrc)
"poppler" ; pdfimages, ...
"sox" ; zvočni urejevalnik v terminalu
;; C kompajlanje
"gcc-toolchain"
"bash"
;; upravljanje oken
"swayfx"
"xorg-server"
"xorg-server-xwayland"
"swaybg"
"i3-wm"
"i3status"
"rofi-wayland"
"mako"
"libnotify"
"gammastep"
"xdg-desktop-portal-gtk"
"xdg-desktop-portal-wlr"
"flatpak-xdg-utils"
"i3-autotiling"
"eog" ; gledanje slik
"vlc" ; multimedia plejer
"keepassxc" ; gesla / keyring
"seahorse" ; keyring urejevalnik
"glib:bin" ; za gsettings ukaz
"grim" ; zaslonske slike
"slurp" ; zaslonske slike
"pamixer" ; za jakost stimat
"brightnessctl" ; svetlost zaslona
"wdisplays" ; nastavitve zaslonov
;; pisave
"font-liberation"
"font-dejavu"
"font-fira-code"
"font-awesome"
;; zvok
"pipewire"
"qpwgraph"
"qjackctl"
"pavucontrol"
"alsa-utils"
"non-mixer"
"audacity"
"ardour"
"infamous-plugins"
"swh-plugins-lv2"
"zam-plugins"
"x42-plugins"
"caps-plugins-lv2"
"zplugins"
;"lsp-plugins"
"distrho-ports"
"omins-lv2"
"supercollider"
"soundconverter"
"picard"
"sooperlooper"
"ffmpeg"
;; mrezna orodja
"xl2tpd"
"strongswan"
"nmap"
"wireshark"
"bind:utils"
;; urejanje in branje dokumentov (ne-emacs)
"libreoffice"
"evince"
"calibre"
"gedit"
"okular" ;; Digitalno podpisovanje pdf dokumentov
;; Urejanje slik
"gimp-next"
"inkscape"
"gimp-resynthesizer" ; magicna orodja v gimpu
;; video urejanje
"kdenlive"
;"olive"
"obs"
"obs-wlrobs"
;; Eye candy
"gnome-tweaks"
"arc-theme"
"numix-gtk-theme"
"qt5ct"
;"hyprland"
;"hyfetch"
;"xdg-desktop-portal-hyprland"
"wfetch"
"texlive-etbb"
"bibata-cursor-theme"
"delft-icon-theme"
;; Programiranje
"rust"
"valgrind"
"xxd"
"make"
"python"
;; Igre
"gzdoom"
"gnubg"
"freegish"
"kigo"
"crawl-tiles"
;; Razno
"mesa"
"mesa-utils"
"nss-certs"
"glibc-locales")))
;; Below is the list of Home services. To search for available
;; services, run 'guix home search KEYWORD' in a terminal.
(services
(list ;; Shell - zsh
(service home-zsh-service-type
(home-zsh-configuration
(zlogin (list (local-file "../../.zlogin" "zlogin")))
(zshrc (list (local-file "../../.zshrc" "zshrc")))
(zprofile (list (local-file "../../.zprofile" "zprofile")))))
;; Razne konfiguracije (~/.config)
(service home-files-service-type
;; Desktop file overrides; pw-jack za supercolider
`((".local/share/applications/SuperColliderIDE.desktop" ,(local-file "../../applications/SuperColliderIDE.desktop"))
(".local/share/applications/ardour8.desktop" ,(local-file "../../applications/ardour8.desktop"))
(".local/share/applications/emacsPW.desktop" ,(local-file "../../applications/emacsPW.desktop"))))
;; Razni dotfajli - konfiguracije (~/.config)
(service home-xdg-configuration-files-service-type
`(("sway/config" ,(local-file "../../.config/sway/config"))
("rofi/config.rasi" ,(local-file "../../.config/rofi/config.rasi"))
("foot/foot.ini" ,(local-file "../../.config/foot/foot.ini"))
("i3status/config" ,(local-file "../../.config/i3status/config"))))
;; TODO povezi se druge dotfajle!
;; Indikator prazne baterije
(service home-batsignal-service-type
(home-batsignal-configuration
(notifications-expire? #t)))
;; Rdecenje zaslona
(service home-redshift-service-type
(home-redshift-configuration
(redshift redshift-wayland)
(location-provider 'manual)
(adjustment-method 'wayland)
(latitude 46.05108)
(longitude 14.50513)))
;; Dbus storitev, ki se rabi kdaj
(service home-dbus-service-type)
;; Pipewire sound daemon
(service home-pipewire-service-type))))

32
guix/manifest.scm 100644
View File

@ -0,0 +1,32 @@
;; This "manifest" file can be passed to 'guix package -m' 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.
(specifications->manifest
(list "screen"
"emacs-web-mode"
"emacs-php-mode"
"emacs-treemacs"
"emacs-general"
"emacs-projectile"
"emacs-lsp-mode"
"emacs-dashboard"
"emacs-writeroom"
"emacs-ivy"
"emacs-pyvenv"
"emacs-geiser"
"emacs-company"
"emacs-editorconfig"
"emacs-all-the-icons"
"emacs-doom-modeline"
"emacs-autothemer"
"emacs-annalist"
"emacs-rainbow-delimiters"
"sway"
"emacs-next-pgtk"
"glibc-locales@2.35"
"font-fira-code"
"foot"
"rofi-wayland"))

View File

@ -0,0 +1,75 @@
(define-module (home services mako)
#:use-module (ice-9 match)
#:use-module (gnu home services)
#:use-module (gnu services configuration)
#:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (gnu packages wm)
#:use-module (guix import utils)
#:use-module ((gnu home-services-utils) #:select (maybe-object->string))
#:export (home-mako-service-type
home-mako-configuration))
(define-configuration/no-serialization home-mako-configuration
(package
(package mako)
"mako package to use")
(config
(alist '())
""))
(define (serialize-mako-config config)
(define* (serialize-criteria criteria #:optional (res '()))
(match criteria
((field value)
(format #f "[~a]\n"
(string-join
(cons (format #f "~a=\"~a\"" field value) res))))
((field value . rest)
(serialize-criteria
rest
(cons (format #f "~a=\"~a\"" field value) res)))))
(define (serialize-key key)
(if (list? key)
(serialize-criteria key)
(string-append (maybe-object->string key) "=")))
(define (serialize-val val)
(cond
((or (number? val) (symbol? val)) (maybe-object->string val))
((list? val) (serialize-mako-config val))
(else val)))
(define (serialize-field key val)
(let ((val (serialize-val val))
(key (serialize-key key)))
(list key val)))
(generic-serialize-alist
(lambda args (flatten (interpose args)))
serialize-field
config))
(define (add-mako-configuration config)
(let ((cfg (home-mako-configuration-config config)))
`(("mako/config"
,(apply mixed-text-file
"config"
(serialize-mako-config cfg))))))
(define add-mako-package
(compose list home-mako-configuration-package))
(define home-mako-service-type
(service-type
(name 'home-mako)
(extensions
(list (service-extension
home-xdg-configuration-files-service-type
add-mako-configuration)
(service-extension
home-profile-service-type
add-mako-package)))
(default-value (home-mako-configuration))
(description "")))

View File

@ -0,0 +1,87 @@
(define-module (home services pipewire)
#:use-module (guix gexp)
#:use-module (gnu packages linux)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu home services)
#:use-module (gnu home services shepherd))
(define (home-pipewire-files-service _)
`(("alsa/asoundrc"
,(mixed-text-file
"asoundrc"
#~(string-append
"<"
#$(file-append
pipewire
"/share/alsa/alsa.conf.d/50-pipewire.conf")
">\n<"
#$(file-append
pipewire
"/share/alsa/alsa.conf.d/99-pipewire-default.conf")
">\n"
"
pcm_type.pipewire {
lib " #$(file-append
pipewire
"/lib/alsa-lib/libasound_module_pcm_pipewire.so") "
}
ctl_type.pipewire {
lib " #$(file-append
pipewire
"/lib/alsa-lib/libasound_module_ctl_pipewire.so") "
}
")))))
(define (home-pipewire-shepherd-service _)
(list
(shepherd-service
(requirement '(dbus))
(provision '(pipewire))
(stop #~(make-kill-destructor))
(start #~(make-forkexec-constructor
(list #$(file-append pipewire "/bin/pipewire")))))
(shepherd-service
(requirement '(pipewire))
(provision '(wireplumber))
(stop #~(make-kill-destructor))
(start #~(make-forkexec-constructor
(list #$(file-append wireplumber "/bin/wireplumber")))))
#;
(shepherd-service
(requirement '(pipewire))
(provision '(pipewire-media-session))
(stop #~(make-kill-destructor))
(start #~(make-forkexec-constructor
(list
#$(file-append
pipewire-media-session
"/bin/pipewire-media-session")
"-c"
#$(file-append
pipewire-media-session
"/share/pipewire/media-session.d/media-session.conf")))))
(shepherd-service
(requirement '(pipewire))
(provision '(pipewire-pulse))
(stop #~(make-kill-destructor))
(start #~(make-forkexec-constructor
(list #$(file-append pipewire "/bin/pipewire-pulse")))))))
(define-public home-pipewire-service-type
(service-type
(name 'home-pipewire)
(extensions
(list (service-extension
home-xdg-configuration-files-service-type
home-pipewire-files-service)
(service-extension
home-shepherd-service-type
home-pipewire-shepherd-service)
(service-extension
home-profile-service-type
(const (list pipewire pulseaudio)))))
(default-value #f)
(description "run pipewire and stuff")))

19
init.sh
View File

@ -1,12 +1,29 @@
#!/bin/sh
# Instaliraj vim plug!
if [ ! -f ~/.vim/autoload/plug.vim ]; then
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
fi
# Zloudaj font (statusbar, emacs)
if [ ! -d ~/.fonts ]; then
mkdir ~/.fonts
fi
if [ ! -d ~/.fonts/iosevka ]; then
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
cd ~/.fonts || exit 1
unzip iosevka.zip
rm iosevka.zip
fc-cache -f
fi
# Zloudaj gruvbox ikone
if [ ! -d ~/.icons ]; then
mkdir ~/.icons
fi
if [ ! -d ~/.icons/Gruvbox-Plus-Dark ]; then
curl -fLo ~/.icons/Gruvbox-Plus-Dark.zip https://github.com/SylEleuth/gruvbox-plus-icon-pack/releases/download/v4.0/gruvbox-plus-icon-pack-4.0.zip
cd ~/.icons || exit 1
unzip Gruvbox-Plus-Dark.zip
rm Gruvbox-Plus-Dark.zip
fi

BIN
ozadje2.jpg 100644

Binary file not shown.

After

Width:  |  Height:  |  Size: 658 KiB

BIN
ozadje3.jpg 100644

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 MiB

BIN
ozadje4.jpg 100644

Binary file not shown.

After

Width:  |  Height:  |  Size: 538 KiB

BIN
ozadje5.jpg 100644

Binary file not shown.

After

Width:  |  Height:  |  Size: 776 KiB

View File

@ -1,101 +1,93 @@
#!/bin/sh
DIR=`pwd`
DIR=$(pwd)
echo "DIR: $DIR"
# Profile
ln -s $DIR/.profile ~/.profile
ln -s $DIR/.profile ~/.zprofile
ln -s "$DIR/.profile" ~/.profile
# ZSH shell!
ln -s $DIR/.zshrc ~/.zshrc
ln -s $DIR/.zprofile ~/.zprofile
ln -s "$DIR/.zshrc" ~/.zshrc
ln -s "$DIR/.zprofile" ~/.zprofile
ln -s "$DIR/.zlogin" ~/.zlogin
# i3 config (<3 tiling WM)
mkdir ~/.config/i3
ln -s $DIR/.config/i3/config ~/.config/i3/config
ln -s "$DIR/.config/i3/config" ~/.config/i3/config
# sway config (i3 za wayland)
mkdir ~/.config/sway
ln -s $DIR/.config/sway/config ~/.config/sway/config
ln -s "$DIR/.config/sway/config" ~/.config/sway/config
# i3status vrstica zgoraj
ln -s $DIR/.i3status.conf ~/.i3status.conf
mkdir ~/.config/i3status
ln -s "$DIR/.config/i3status/config" ~/.config/i3status/config
# termite terminal (ok terminal za X)
mkdir ~/.config/termite
ln -s $DIR/.config/termite/config ~/.config/termite/config
ln -s "$DIR/.config/termite/config" ~/.config/termite/config
# 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
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
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
ln -s "$DIR/.config/compton.conf" ~/.config/compton.conf
# redshift (pordeci skrin, X)
ln -s $DIR/.config/redshift ~/.config/redshift
ln -s "$DIR/.config/redshift" ~/.config/redshift
# i3 block, bolj fensi statusbar (ne uporabljam vec)
ln -s $DIR/.i3blocks.conf ~/.i3blocks.conf
ln -s "$DIR/.i3blocks.conf" ~/.i3blocks.conf
# 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
ln -s "$DIR/.config/rofi/config.rasi" ~/.config/rofi/config.rasi
# VIM!
ln -s $DIR/.vimrc ~/.vimrc
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
ln -s "$DIR/.Xresources" ~/.Xresources
# GIT konfiguracija
ln -s $DIR/.gitconfig ~/.gitconfig
# ZSH profile nastavitve (ni urejeno)
#ln -s $DIR/.profile ~/.profile
ln -s $DIR/.zprofile ~/.zprofile
ln -s "$DIR/.gitconfig" ~/.gitconfig
# Razne uporabne skripte
mkdir ~/bin
# Screenshot skripta (wayland)
ln -s $DIR/bin/screenshot ~/bin/screenshot
ln -s "$DIR/bin/screenshot" ~/bin/screenshot
# backup ukaz
ln -s $DIR/bin/backmeup ~/bin/backmeup
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
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
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
ln -s "$DIR/bin/vmpk-pa" ~/bin/vmpk-pa
# Guile
ln -s $DIR/.guile ~/.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
ln -s "$DIR/applications/dbeaver.desktop" ~/.local/share/applications/dbeaver.desktop
ln -s "$DIR/applications/dbeaver.desktop" ~/.local/share/applications/com.obsproject.Studio.desktop
ln -s "$DIR/applications/arduino2.desktop" ~/.local/share/applications/arduino2.desktop
# Emacs <3
mkdir ~/.emacs.d
ln -s $DIR/.emacs.d/init.el ~/.emacs.d/init.el
ln -s $DIR/.emacs.d/projectile-bookmarks.eld ~/.emacs.d/projectile-bookmarks.eld
ln -s $DIR/.emacs.d/bookmarks ~/.emacs.d/bookmarks
ln -s "$DIR/.emacs.d/init.el" ~/.emacs.d/init.el
ln -s "$DIR/.emacs.d/config.org" ~/.emacs.d/config.org
ln -s "$DIR/.emacs.d/sclang-helper.el" ~/.emacs.d/sclang-helper.el
# SSH (timeout)
mkdir ~/.ssh
ln -s $DIR/.ssh/config ~/.ssh/config
ln -s "$DIR/.ssh/config" ~/.ssh/config