This commit is contained in:
Daniel Bulant 2025-04-06 22:21:09 +02:00
parent 7190dc59f1
commit 18529372e3
No known key found for this signature in database
9 changed files with 14 additions and 15 deletions

View file

@ -1,7 +1,7 @@
font_family Fira Code Retina
font_features FiraCode-Retina +zero
background_opacity 0.3
shell fish
shell nu
#map ctrl+shift+c copy_to_clipboard
#map ctrl+shift+v paste_from_clipboard
tab_bar_style powerline

View file

@ -288,7 +288,7 @@ export-env {
pre_prompt: [{ null }] # run before the prompt is shown
pre_execution: [{ null }] # run before the repl input is run
env_change: {
PWD: [{|before, after| null }] # run if the PWD environment is different since the last repl input
PWD: [{ |before, after| if (ls -la | where name == ".git" | is-not-empty) { onefetch } }] # run if the PWD environment is different since the last repl input
}
display_output: { table } # run before the output of a command is drawn, example: `{ if (term size).columns >= 100 { table -e } else { table } }`
command_not_found: { null } # return an error message when a command is not found
@ -808,4 +808,7 @@ export-env {
# load oh-my-posh config
source ~/.oh-my-posh.nu
print ""
print (fastfetch --pipe false)
}

View file

@ -2,40 +2,34 @@
My dotfiles and nix setup incl. scripts for hyprland and some other goodies.
super key = windows key
Please do edit configuration of at least hyprland - default configuration is very specific to my setup (involves monitor scaling)
## Screenshots
![Screenshot of terminal](./screenshots/terminal.png)
![Screenshot of dolphin](./screenshots/dolphin.png)
![Screenshot of spotify](./screenshots/spotify.png)
![](./screenshots/kitty.png)
## Used software
I'm using NixOS.
I'm using NixOS. A lot of packages are missing, for the full list see [`home.nix`](./home.nix).
- hyprland - wayland compositor and window manager (also adds blur and rounded corners). Really barebones, see below for shortcuts (read the config file for up to date shortcuts)
- fish - shell (friendly, interactive, doesn't implement POSIX, I recommend reading it's docs first)
- ~~fish - shell (friendly, interactive, doesn't implement POSIX, I recommend reading it's docs first)~~
- nushell - shell (very different)
- fastfetch - everyone needs a fetch program
- onefetch - fetch for git repos (fish is configured to show repo details when you cd into a repo)
- kitty - terminal emulator (GPU accelerated, supports ligatures, unicode, etc)
- nano - simple text editor. I recommend editing duplicating the file to root's home directory and changing the colors there, so you always see when you're sudo editing something.
- nushell - for scripting and data management - I don't use it and it's not required for the current setup, but I'm planning to use it in the future.
- rofi - application launcher, general "chooser" (used for power menu, notification actions, etc)
- waybar - the top status bar
- hyprlock - Fancy lock screen
- spicetify - custom spotify theme
- ~~spicetify - custom spotify theme~~
- VSCode - code editor. Current theme/config is not in dotfiles here, but the theme used is Atom One Dark, and the font is Fira Code.
- dolphin - file browser
- polkit-kde-authentication-agent-1 - required for sudo gui prompts (like when you open dolphin as root)
- blueman - bluetooth app indicator
- swaybg - for showing wallpaper
- activity-watch and awatcher - for program usage statistics
- nm-applet - network manager app indicator
- swayidle - for automatic locking
- pam_kwallet_init - for storing secrets in kwallet
For base setup, only `hyprland`, `rofi`, `waybar` and `swaylock`/`swaylock-effects-git` is required.
@ -48,7 +42,7 @@ If you don't want to build hyprland yourself and instead use cache, comment out
### Lock screen
Lock screen doesn't show what you type, it just changes it's circle for each character. If you delete all the input, it will show "cleared".
Lock screen doesn't show what you type, it just changes it's circle for each character. If you delete all the input, it will show "cleared". Escape clears input.
Click the crossed eye on the status bar (next to network connection status, on the right side) to disable automatic lock screen (for playing videos, etc, as idle detection is not perfect on hyprland). If it's purple and shows normal eye, automatic lockscreen is disabled.
### Terminal
@ -107,3 +101,4 @@ My current setup is set that power button turns off the computer without prompti
### Other
ctrl+alt 1/2 is passed on to OBS as a global shortcut. You may want to change this, but it can also serve as an example of a global shortcut.
Of note, obs isn't installed - nixos tries to build it manually for some reason. I use comma to one-time-install obs (`, obs`).

View file

@ -127,7 +127,7 @@
isNormalUser = true;
description = "John";
extraGroups = [ "networkmanager" "wheel" "docker" "fuse" "video" "wireshark" "gamemode" "scanner" "lp"];
shell = pkgs.nushell;
shell = pkgs.fish;
packages = with pkgs; [
kdePackages.kate
zen-browser.packages."${system}".specific

View file

@ -251,6 +251,7 @@ in
shellAliases = {
ns = "nix-shell --run nu";
nsp = "nix-shell --run nu -p";
l = "lsd -la";
};
};
vscode = {

View file

Before

Width:  |  Height:  |  Size: 2.7 MiB

After

Width:  |  Height:  |  Size: 2.7 MiB

View file

Before

Width:  |  Height:  |  Size: 2.2 MiB

After

Width:  |  Height:  |  Size: 2.2 MiB

View file

Before

Width:  |  Height:  |  Size: 3.2 MiB

After

Width:  |  Height:  |  Size: 3.2 MiB

BIN
screenshots/kitty.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 MiB