mirror of
https://github.com/danbulant/dotfiles
synced 2026-05-19 04:18:55 +00:00
continued setup
This commit is contained in:
parent
2fb8c5ba0a
commit
58da34cc73
12 changed files with 353 additions and 21 deletions
|
|
@ -6,11 +6,10 @@ if status is-interactive
|
||||||
echo
|
echo
|
||||||
onefetch
|
onefetch
|
||||||
end
|
end
|
||||||
test -f .nvmrc && nvm use > /dev/null
|
# test -f .nvmrc && nvm use > /dev/null
|
||||||
end
|
end
|
||||||
#fastfetch -l arch
|
|
||||||
echo -e "\n"
|
echo -e "\n"
|
||||||
fastfetch -l arch --color-keys (set_color "09BC8A" | string sub -s 3 -e -1) --color-title (set_color "75DDDD" | string sub -s 3 -e -1)
|
fastfetch --color-keys (set_color "09BC8A" | string sub -s 3 -e -1) --color-title (set_color "75DDDD" | string sub -s 3 -e -1)
|
||||||
test -f .nvmrc && nvm use > /dev/null
|
test -f .nvmrc && nvm use > /dev/null
|
||||||
end
|
end
|
||||||
set PATH $PATH $HOME/.cargo/bin $HOME/.local/share/pnpm $HOME/.local/bin $HOME/.spicetify $HOME/.bun/bin
|
set PATH $PATH $HOME/.cargo/bin $HOME/.local/share/pnpm $HOME/.local/bin $HOME/.spicetify $HOME/.bun/bin
|
||||||
|
|
@ -38,7 +37,7 @@ fish_ssh_agent
|
||||||
#end
|
#end
|
||||||
# <<< conda initialize <<<
|
# <<< conda initialize <<<
|
||||||
|
|
||||||
eval (/home/linuxbrew/.linuxbrew/bin/brew shellenv)
|
# eval (/home/linuxbrew/.linuxbrew/bin/brew shellenv)
|
||||||
set -x PERL5LIB "/home/dan/perl5/lib/perl5:$PERL5LIB";
|
set -x PERL5LIB "/home/dan/perl5/lib/perl5:$PERL5LIB";
|
||||||
set -x PERL_LOCAL_LIB_ROOT "/home/dan/perl5:$PERL_LOCAL_LIB_ROOT";
|
set -x PERL_LOCAL_LIB_ROOT "/home/dan/perl5:$PERL_LOCAL_LIB_ROOT";
|
||||||
set -x PERL_MB_OPT "--install_base \"/home/dan/perl5\"";
|
set -x PERL_MB_OPT "--install_base \"/home/dan/perl5\"";
|
||||||
14
.config/hypr/hypridle.conf
Normal file
14
.config/hypr/hypridle.conf
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
general {
|
||||||
|
lock_cmd = hyprlock # dbus/sysd lock command (loginctl lock-session)
|
||||||
|
unlock_cmd = pkill -USR1 hyprlock # same as above, but unlock
|
||||||
|
before_sleep_cmd = hyprlock # command ran before sleep
|
||||||
|
# after_sleep_cmd = notify-send "Awake!" # command ran after sleep
|
||||||
|
ignore_dbus_inhibit = false # whether to ignore dbus-sent idle-inhibit requests (used by e.g. firefox or steam)
|
||||||
|
ignore_systemd_inhibit = false # whether to ignore systemd-inhibit --what=idle inhibitors
|
||||||
|
}
|
||||||
|
|
||||||
|
listener {
|
||||||
|
timeout = 500 # in seconds
|
||||||
|
on-timeout = hyprlock # command to run when timeout has passed
|
||||||
|
# on-resume = notify-send "Welcome back!" # command to run when activity is detected after timeout has fired.
|
||||||
|
}
|
||||||
|
|
@ -6,10 +6,10 @@
|
||||||
#autogenerated = 1 # remove this line to remove the warning
|
#autogenerated = 1 # remove this line to remove the warning
|
||||||
|
|
||||||
#env=LIBSEAT_BACKEND,seatd
|
#env=LIBSEAT_BACKEND,seatd
|
||||||
env = HYPRLAND_LOG_WLR,1
|
# env = HYPRLAND_LOG_WLR,1
|
||||||
#env = WLR_DRM_DEVICES,$HOME/.config/hypr/nvidia:$HOME/.config/hypr/amd
|
#env = WLR_DRM_DEVICES,$HOME/.config/hypr/nvidia:$HOME/.config/hypr/amd
|
||||||
#env = WLR_DRM_DEVICES,$HOME/.config/hypr/amd:$HOME/.config/hypr/nvidia
|
#env = WLR_DRM_DEVICES,$HOME/.config/hypr/amd:$HOME/.config/hypr/nvidia
|
||||||
env = WLR_DRM_DEVICES,$HOME/.config/hypr/amd-render:$HOME/.config/hypr/nvidia-render
|
# env = WLR_DRM_DEVICES,$HOME/.config/hypr/amd-render:$HOME/.config/hypr/nvidia-render
|
||||||
#env = LIBVA_DRIVER_NAME,nvidia
|
#env = LIBVA_DRIVER_NAME,nvidia
|
||||||
#env = XDG_SESSION_TYPE,wayland
|
#env = XDG_SESSION_TYPE,wayland
|
||||||
#env = GBM_BACKEND,nvidia-drm
|
#env = GBM_BACKEND,nvidia-drm
|
||||||
|
|
@ -43,7 +43,7 @@ exec-once=swaybg -m fill -i ~/.config/hypr/wallpapers/sunflowers.jpg
|
||||||
exec-once=waybar
|
exec-once=waybar
|
||||||
exec-once=blueman-applet
|
exec-once=blueman-applet
|
||||||
exec-once=dunst
|
exec-once=dunst
|
||||||
exec-once=udev-block-notify
|
# exec-once=udev-block-notify
|
||||||
#exec-once=~/.config/hypr/scripts/sleep.sh
|
#exec-once=~/.config/hypr/scripts/sleep.sh
|
||||||
exec-once=echo us > /tmp/kb_layout
|
exec-once=echo us > /tmp/kb_layout
|
||||||
#exec-once=hyprctl setcursor Sweet 30
|
#exec-once=hyprctl setcursor Sweet 30
|
||||||
|
|
@ -53,9 +53,11 @@ exec-once=kdeconnect-indicator
|
||||||
|
|
||||||
#$swaylock = swaylock --screenshots --clock --indicator --effect-blur 6x6 --fade-in 0.2 --ring-color 4e9dc2 --key-hl-color 71b0ce
|
#$swaylock = swaylock --screenshots --clock --indicator --effect-blur 6x6 --fade-in 0.2 --ring-color 4e9dc2 --key-hl-color 71b0ce
|
||||||
$swaylock = hyprlock
|
$swaylock = hyprlock
|
||||||
|
exec-once=hypridle
|
||||||
|
|
||||||
exec-once=swayidle -w timeout 300 '$swaylock --grace 2' before-sleep '$swaylock'
|
# exec-once=swayidle -w timeout 300 '$swaylock --grace 2' before-sleep '$swaylock'
|
||||||
exec-once=/usr/lib/pam_kwallet_init
|
# Needs repackaging...
|
||||||
|
# exec-once=/usr/lib/pam_kwallet_init
|
||||||
|
|
||||||
env = QT_QPA_PLATFORMTHEME,qt5ct
|
env = QT_QPA_PLATFORMTHEME,qt5ct
|
||||||
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||||
|
|
@ -238,7 +240,7 @@ bind = SUPER, P, exec, pkill rofi || $dir/rofi/bin/powermenu
|
||||||
$mainMod = SUPER
|
$mainMod = SUPER
|
||||||
|
|
||||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||||
bind = $mainMod, T, exec, warp-terminal #kitty
|
bind = $mainMod, T, exec, kitty
|
||||||
bind=$mainMod,K,exec,kitty
|
bind=$mainMod,K,exec,kitty
|
||||||
bind=SUPER,B,exec,vivaldi-stable
|
bind=SUPER,B,exec,vivaldi-stable
|
||||||
bind = $mainMod, Q, killactive,
|
bind = $mainMod, Q, killactive,
|
||||||
|
|
@ -313,7 +315,8 @@ bind = ALT, tab, cyclenext,
|
||||||
bind = ALT+SHIFT, tab, cyclenext, prev
|
bind = ALT+SHIFT, tab, cyclenext, prev
|
||||||
|
|
||||||
bind = ,Print,exec,grim - | wl-copy
|
bind = ,Print,exec,grim - | wl-copy
|
||||||
bind = SUPER+SHIFT,S,exec,grim -g "$(slurp)" - | wl-copy
|
bind = SUPER+SHIFT,S,exec,spectacle --copy-image --region --background # no gui
|
||||||
|
# bind = SUPER+SHIFT,S,exec,grim -g "$(slurp)" - | wl-copy
|
||||||
bind = SUPER, L,exec,$swaylock
|
bind = SUPER, L,exec,$swaylock
|
||||||
|
|
||||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||||
|
|
|
||||||
50
.config/hypr/hyprlock.conf
Normal file
50
.config/hypr/hyprlock.conf
Normal file
|
|
@ -0,0 +1,50 @@
|
||||||
|
general {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
background {
|
||||||
|
monitor =
|
||||||
|
path = screenshot
|
||||||
|
color = rgba(25, 20, 20, .2)
|
||||||
|
|
||||||
|
# all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
|
||||||
|
blur_passes = 4 # 0 disables blurring
|
||||||
|
blur_size = 7
|
||||||
|
noise = 0.0117
|
||||||
|
contrast = 0.8916
|
||||||
|
brightness = 0.8172
|
||||||
|
vibrancy = 0.1696
|
||||||
|
vibrancy_darkness = 0.0
|
||||||
|
}
|
||||||
|
|
||||||
|
input-field {
|
||||||
|
monitor =
|
||||||
|
size = 200, 50
|
||||||
|
outline_thickness = 3
|
||||||
|
dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8
|
||||||
|
dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0
|
||||||
|
dots_center = false
|
||||||
|
dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
|
||||||
|
outer_color = rgb(151515)
|
||||||
|
inner_color = rgb(200, 200, 200)
|
||||||
|
font_color = rgb(10, 10, 10)
|
||||||
|
fade_on_empty = true
|
||||||
|
fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered.
|
||||||
|
placeholder_text = <i>Password</i> # Text rendered in the input box when it's empty.
|
||||||
|
hide_input = false
|
||||||
|
rounding = -1 # -1 means complete rounding (circle/oval)
|
||||||
|
check_color = rgb(204, 136, 34)
|
||||||
|
fail_color = rgb(204, 34, 34) # if authentication failed, changes outer_color and fail message color
|
||||||
|
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i> # can be set to empty
|
||||||
|
fail_timeout = 2000 # milliseconds before fail_text and fail_color disappears
|
||||||
|
fail_transition = 300 # transition time in ms between normal outer_color and fail_color
|
||||||
|
capslock_color = -1
|
||||||
|
numlock_color = -1
|
||||||
|
bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above)
|
||||||
|
invert_numlock = false # change color if numlock is off
|
||||||
|
swap_font_color = false # see below
|
||||||
|
|
||||||
|
position = 0, -20
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
font_family Fira Code Retina
|
font_family Fira Code Retina
|
||||||
font_features FiraCode-Retina +zero
|
font_features FiraCode-Retina +zero
|
||||||
background_opacity 0.1
|
background_opacity 0.3
|
||||||
shell fish
|
shell fish
|
||||||
#map ctrl+shift+c copy_to_clipboard
|
#map ctrl+shift+c copy_to_clipboard
|
||||||
#map ctrl+shift+v paste_from_clipboard
|
#map ctrl+shift+v paste_from_clipboard
|
||||||
|
|
|
||||||
|
|
@ -59,11 +59,11 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
"custom/weather": {
|
"custom/weather": {
|
||||||
"exec": "python ~/.config/waybar/weather.py",
|
"exec": "python ~/.config/waybar/weather.py",
|
||||||
"restart-interval": 300,
|
"restart-interval": 300,
|
||||||
"return-type": "json",
|
"return-type": "json",
|
||||||
"on-click": "xdg-open https://weather.com/en-IN/weather/today/l/c3e96d6cc4965fc54f88296b54449571c4107c73b9638c16aafc83575b4ddf2e"
|
"on-click": "xdg-open https://weather.com/en-IN/weather/today/l/c3e96d6cc4965fc54f88296b54449571c4107c73b9638c16aafc83575b4ddf2e"
|
||||||
// "format-alt": "{alt}",
|
// "format-alt": "{alt}",
|
||||||
},
|
},
|
||||||
"custom/spotify": {
|
"custom/spotify": {
|
||||||
"exec": "python ~/.config/waybar/player.py",
|
"exec": "python ~/.config/waybar/player.py",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
# Dotfiles
|
# Dotfiles
|
||||||
|
|
||||||
My dotfiles. Moved from KDE plasma config to hyprland.
|
My dotfiles and nix setup incl. scripts for hyprland and some other goodies.
|
||||||
|
|
||||||
super key = windows key
|
super key = windows key
|
||||||
|
|
||||||
|
|
@ -14,7 +14,7 @@ Please do edit configuration of at least hyprland - default configuration is ver
|
||||||
|
|
||||||
## Used software
|
## Used software
|
||||||
|
|
||||||
I'm using Arch linux.
|
I'm using NixOS.
|
||||||
|
|
||||||
- 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)
|
- 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)
|
||||||
|
|
@ -25,13 +25,12 @@ I'm using Arch linux.
|
||||||
- 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.
|
- 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)
|
- rofi - application launcher, general "chooser" (used for power menu, notification actions, etc)
|
||||||
- waybar - the top status bar
|
- waybar - the top status bar
|
||||||
- lightly (AUR) - QT theme, set it via `qt5ct`. Adds blur to *most* QT apps, but mainly also improves the general look and feal of QT apps. Some blur is broken on wayland.
|
|
||||||
- hyprlock - Fancy lock screen
|
- 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.
|
- 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
|
- dolphin - file browser
|
||||||
- polkit-kde-authentication-agent-1 - required for sudo gui prompts (like when you open dolphin as root)
|
- polkit-kde-authentication-agent-1 - required for sudo gui prompts (like when you open dolphin as root)
|
||||||
- blueman-applet - bluetooth app indicator
|
- blueman - bluetooth app indicator
|
||||||
- swaybg - for showing wallpaper
|
- swaybg - for showing wallpaper
|
||||||
- activity-watch and awatcher - for program usage statistics
|
- activity-watch and awatcher - for program usage statistics
|
||||||
- nm-applet - network manager app indicator
|
- nm-applet - network manager app indicator
|
||||||
|
|
|
||||||
164
configuration.nix
Normal file
164
configuration.nix
Normal file
|
|
@ -0,0 +1,164 @@
|
||||||
|
# Edit this configuration file to define what should be installed on
|
||||||
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
|
|
||||||
|
{ config, pkgs, ... }:
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ # Include the results of the hardware scan.
|
||||||
|
./hardware-configuration.nix
|
||||||
|
<home-manager/nixos>
|
||||||
|
];
|
||||||
|
|
||||||
|
# Bootloader.
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
boot.supportedFilesystems = [ "ntfs" ];
|
||||||
|
|
||||||
|
networking.hostName = "lenovo-nix";
|
||||||
|
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||||
|
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||||
|
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
time.timeZone = "Europe/Prague";
|
||||||
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
i18n.extraLocaleSettings = {
|
||||||
|
LC_ADDRESS = "cs_CZ.UTF-8";
|
||||||
|
LC_IDENTIFICATION = "cs_CZ.UTF-8";
|
||||||
|
LC_MEASUREMENT = "cs_CZ.UTF-8";
|
||||||
|
LC_MONETARY = "cs_CZ.UTF-8";
|
||||||
|
LC_NAME = "cs_CZ.UTF-8";
|
||||||
|
LC_NUMERIC = "cs_CZ.UTF-8";
|
||||||
|
LC_PAPER = "cs_CZ.UTF-8";
|
||||||
|
LC_TELEPHONE = "cs_CZ.UTF-8";
|
||||||
|
LC_TIME = "cs_CZ.UTF-8";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.xserver.enable = false;
|
||||||
|
services.displayManager.sddm.enable = true;
|
||||||
|
services.displayManager.sddm.wayland.enable = true;
|
||||||
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
services.xserver = {
|
||||||
|
xkb = {
|
||||||
|
layout = "us";
|
||||||
|
variant = "";
|
||||||
|
};
|
||||||
|
#libinput.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.printing.enable = true;
|
||||||
|
|
||||||
|
hardware.pulseaudio.enable = false;
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
#jack.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.dan = {
|
||||||
|
isNormalUser = true;
|
||||||
|
description = "John";
|
||||||
|
extraGroups = [ "networkmanager" "wheel" ];
|
||||||
|
packages = with pkgs; [
|
||||||
|
kdePackages.kate
|
||||||
|
# thunderbird
|
||||||
|
];
|
||||||
|
};
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.users.dan = import ./home.nix;
|
||||||
|
|
||||||
|
# Other defaults are set in home.nix
|
||||||
|
environment.sessionVariables.DEFAULT_BROWSER = "firefox";
|
||||||
|
|
||||||
|
programs.firefox.enable = true;
|
||||||
|
programs.hyprland.enable = true;
|
||||||
|
programs.hyprlock.enable = true;
|
||||||
|
services.hypridle.enable = true;
|
||||||
|
programs.fish.enable = true;
|
||||||
|
services.openssh.enable = true;
|
||||||
|
services.tailscale = {
|
||||||
|
enable = true;
|
||||||
|
useRoutingFeatures = "both";
|
||||||
|
openFirewall = true;
|
||||||
|
extraUpFlags = [ "--advertise-exit-node" ];
|
||||||
|
};
|
||||||
|
hardware.opentabletdriver.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
git
|
||||||
|
nvtopPackages.full
|
||||||
|
btop
|
||||||
|
lshw
|
||||||
|
];
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
# The nvidia fun part
|
||||||
|
hardware.opengl.enable = true;
|
||||||
|
services.xserver.videoDrivers = ["nvidia"];
|
||||||
|
|
||||||
|
hardware.nvidia = {
|
||||||
|
prime = {
|
||||||
|
# hardware specific, beware!
|
||||||
|
amdgpuBusId = "PCI:01:00:0";
|
||||||
|
nvidiaBusId = "PCI:06:00:0";
|
||||||
|
|
||||||
|
offload = {
|
||||||
|
enable = true;
|
||||||
|
enableOffloadCmd = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# Modesetting is required.
|
||||||
|
modesetting.enable = true;
|
||||||
|
|
||||||
|
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
|
||||||
|
# Enable this if you have graphical corruption issues or application crashes after waking
|
||||||
|
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
|
||||||
|
# of just the bare essentials.
|
||||||
|
powerManagement.enable = false;
|
||||||
|
|
||||||
|
# Fine-grained power management. Turns off GPU when not in use.
|
||||||
|
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
|
||||||
|
powerManagement.finegrained = false;
|
||||||
|
|
||||||
|
# Use the NVidia open source kernel module (not to be confused with the
|
||||||
|
# independent third-party "nouveau" open source driver).
|
||||||
|
# Support is limited to the Turing and later architectures. Full list of
|
||||||
|
# supported GPUs is at:
|
||||||
|
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
|
||||||
|
# Only available from driver 515.43.04+
|
||||||
|
# Currently alpha-quality/buggy, so false is currently the recommended setting.
|
||||||
|
open = false;
|
||||||
|
|
||||||
|
# Enable the Nvidia settings menu,
|
||||||
|
# accessible via `nvidia-settings`.
|
||||||
|
nvidiaSettings = true;
|
||||||
|
|
||||||
|
# Optionally, you may need to select the appropriate driver version for your specific GPU.
|
||||||
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||||
|
};
|
||||||
|
|
||||||
|
security.polkit.enable = true;
|
||||||
|
|
||||||
|
# Open ports in the firewall.
|
||||||
|
networking.firewall.allowedTCPPorts = [
|
||||||
|
57621 # Spotify app discovery
|
||||||
|
];
|
||||||
|
networking.firewall.allowedUDPPorts = [
|
||||||
|
5353 # Google cast discovery
|
||||||
|
];
|
||||||
|
# Or disable the firewall altogether.
|
||||||
|
# networking.firewall.enable = false;
|
||||||
|
|
||||||
|
# This value determines the NixOS release from which the default
|
||||||
|
# settings for stateful data, like file locations and database versions
|
||||||
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||||
|
# this value at the release version of the first install of this system.
|
||||||
|
# Before changing this value read the documentation for this option
|
||||||
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
|
system.stateVersion = "24.05"; # Did you read the comment?
|
||||||
|
}
|
||||||
94
home.nix
Normal file
94
home.nix
Normal file
|
|
@ -0,0 +1,94 @@
|
||||||
|
{ pkgs, ...}: {
|
||||||
|
home = {
|
||||||
|
stateVersion = "24.05";
|
||||||
|
|
||||||
|
packages = with pkgs; [
|
||||||
|
grc
|
||||||
|
onefetch
|
||||||
|
fira-code
|
||||||
|
kitty
|
||||||
|
nushell
|
||||||
|
rofi-wayland
|
||||||
|
rustup
|
||||||
|
discord
|
||||||
|
spotify
|
||||||
|
spicetify-cli
|
||||||
|
meslo-lgs-nf
|
||||||
|
waybar
|
||||||
|
chromium
|
||||||
|
firefox
|
||||||
|
dunst
|
||||||
|
sccache
|
||||||
|
discord
|
||||||
|
spotify
|
||||||
|
spicetify-cli
|
||||||
|
meslo-lgs-nf
|
||||||
|
blueman
|
||||||
|
swaybg
|
||||||
|
activitywatch
|
||||||
|
networkmanagerapplet
|
||||||
|
kubectl
|
||||||
|
duf
|
||||||
|
dust
|
||||||
|
jetbrains.rust-rover
|
||||||
|
jetbrains.webstorm
|
||||||
|
mongodb-compass
|
||||||
|
hashcat
|
||||||
|
tldr
|
||||||
|
dunst
|
||||||
|
grim
|
||||||
|
slurp
|
||||||
|
wl-clipboard
|
||||||
|
|
||||||
|
strace
|
||||||
|
ghidra
|
||||||
|
python3
|
||||||
|
];
|
||||||
|
};
|
||||||
|
programs = {
|
||||||
|
fish = {
|
||||||
|
enable = true;
|
||||||
|
interactiveShellInit = ''
|
||||||
|
set fish_greeting # Disable greeting
|
||||||
|
'';
|
||||||
|
shellInit = ''
|
||||||
|
source ~/.config/fish/config-old.fish
|
||||||
|
'';
|
||||||
|
plugins = with pkgs.fishPlugins; [
|
||||||
|
{ name = "grc"; src = grc.src; }
|
||||||
|
{ name = "tide"; src = tide.src; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
vscode = {
|
||||||
|
enable = true;
|
||||||
|
extensions = with pkgs.vscode-extensions; [
|
||||||
|
|
||||||
|
];
|
||||||
|
};
|
||||||
|
git = {
|
||||||
|
enable = true;
|
||||||
|
userName = "Daniel Bulant";
|
||||||
|
userEmail = "danbulant@gmail.com";
|
||||||
|
};
|
||||||
|
btop.enable = true;
|
||||||
|
bat.enable = true;
|
||||||
|
lsd.enable = true;
|
||||||
|
fastfetch.enable = true;
|
||||||
|
mise.enable = true;
|
||||||
|
direnv.enable = true;
|
||||||
|
# firefox.enable = true;
|
||||||
|
};
|
||||||
|
services.kdeconnect.enable = true;
|
||||||
|
services.kdeconnect.indicator = true;
|
||||||
|
xdg.mimeApps = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
defaultApplications = {
|
||||||
|
"text/html" = "firefox.desktop";
|
||||||
|
"x-scheme-handler/http" = "firefox.desktop";
|
||||||
|
"x-scheme-handler/https" = "firefox.desktop";
|
||||||
|
"x-scheme-handler/about" = "firefox.desktop";
|
||||||
|
"x-scheme-handler/unknown" = "firefox.desktop";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
3
setup-nix-channels.sh
Normal file
3
setup-nix-channels.sh
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
sudo nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager
|
||||||
|
sudo nix-channel --add https://github.com/NixOS/nixos-hardware/archive/master.tar.gz nixos-hardware
|
||||||
|
sudo nix-channel --update
|
||||||
5
sync-nix.sh
Executable file
5
sync-nix.sh
Executable file
|
|
@ -0,0 +1,5 @@
|
||||||
|
echo "Copying configurations"
|
||||||
|
cp .config/* ~/.config/ -r
|
||||||
|
sudo cp configuration.nix /etc/nixos/configuration.nix
|
||||||
|
sudo cp home.nix /etc/nixos/home.nix
|
||||||
|
sudo nixos-rebuild switch
|
||||||
1
upgrade-nix.sh
Normal file
1
upgrade-nix.sh
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
sudo nixos-rebuild --upgrade switch
|
||||||
Loading…
Reference in a new issue