init
This commit is contained in:
52
.gitignore
vendored
Normal file
52
.gitignore
vendored
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
blender/
|
||||||
|
cava/
|
||||||
|
Code/
|
||||||
|
composer/
|
||||||
|
dconf/
|
||||||
|
environment.d/
|
||||||
|
filezilla/
|
||||||
|
forge/
|
||||||
|
gdu/
|
||||||
|
GIMP/
|
||||||
|
git/
|
||||||
|
go/
|
||||||
|
gpu-screen-recorder/
|
||||||
|
gtk-*.0/
|
||||||
|
htop/
|
||||||
|
hypr/
|
||||||
|
lazygit/
|
||||||
|
libreoffice/
|
||||||
|
matplotlib/
|
||||||
|
matugen/
|
||||||
|
monero-project/
|
||||||
|
mpv/
|
||||||
|
nautilus/
|
||||||
|
noctalia/plugins/
|
||||||
|
obs-studio/
|
||||||
|
OpenTabletDriver/
|
||||||
|
procps/
|
||||||
|
pulse/
|
||||||
|
qBittorrent/
|
||||||
|
qt*ct/
|
||||||
|
revolution-pi-deployer/
|
||||||
|
stylix/
|
||||||
|
swww/
|
||||||
|
systemd/
|
||||||
|
Vencord/
|
||||||
|
vlc/
|
||||||
|
wal/
|
||||||
|
wallust/
|
||||||
|
kleopatrarc
|
||||||
|
kritadisplayrc
|
||||||
|
kritarc
|
||||||
|
QtProject.conf
|
||||||
|
|
||||||
|
# Files generated by theme change
|
||||||
|
swww/current-wallpaper
|
||||||
|
noctalia/colors.json
|
||||||
|
home-manager/wallpaper
|
||||||
|
home-manager/colors.yaml
|
||||||
|
nvim/lua/themes/
|
||||||
|
kitty/themes/
|
||||||
|
kitty/colors.conf
|
||||||
|
kitty/current-theme.conf
|
||||||
1
autostart/stylix-activate-gnome.desktop
Symbolic link
1
autostart/stylix-activate-gnome.desktop
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
/nix/store/vmvp8zz4lmsc9shdbcwkds15ra7jp38q-home-manager-files/.config/autostart/stylix-activate-gnome.desktop
|
||||||
1
autostart/stylix-activate-kde.desktop
Symbolic link
1
autostart/stylix-activate-kde.desktop
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
/nix/store/vmvp8zz4lmsc9shdbcwkds15ra7jp38q-home-manager-files/.config/autostart/stylix-activate-kde.desktop
|
||||||
257
btop/btop.conf
Normal file
257
btop/btop.conf
Normal file
@@ -0,0 +1,257 @@
|
|||||||
|
#? Config file for btop v. 1.4.5
|
||||||
|
|
||||||
|
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
||||||
|
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
||||||
|
color_theme = "Default"
|
||||||
|
|
||||||
|
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||||
|
theme_background = True
|
||||||
|
|
||||||
|
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||||
|
truecolor = True
|
||||||
|
|
||||||
|
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||||
|
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||||
|
force_tty = False
|
||||||
|
|
||||||
|
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
|
||||||
|
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
||||||
|
#* Use whitespace " " as separator between different presets.
|
||||||
|
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
|
||||||
|
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
|
||||||
|
|
||||||
|
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
|
||||||
|
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
|
||||||
|
vim_keys = False
|
||||||
|
|
||||||
|
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||||
|
rounded_corners = True
|
||||||
|
|
||||||
|
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
||||||
|
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||||
|
#* "block" has half the resolution of braille but uses more common characters.
|
||||||
|
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||||
|
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||||
|
graph_symbol = "braille"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_cpu = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_gpu = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_mem = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_net = "default"
|
||||||
|
|
||||||
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
|
graph_symbol_proc = "default"
|
||||||
|
|
||||||
|
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
|
||||||
|
shown_boxes = "mem proc cpu net"
|
||||||
|
|
||||||
|
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||||
|
update_ms = 500
|
||||||
|
|
||||||
|
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||||
|
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||||
|
proc_sorting = "cpu direct"
|
||||||
|
|
||||||
|
#* Reverse sorting order, True or False.
|
||||||
|
proc_reversed = False
|
||||||
|
|
||||||
|
#* Show processes as a tree.
|
||||||
|
proc_tree = False
|
||||||
|
|
||||||
|
#* Use the cpu graph colors in the process list.
|
||||||
|
proc_colors = True
|
||||||
|
|
||||||
|
#* Use a darkening gradient in the process list.
|
||||||
|
proc_gradient = True
|
||||||
|
|
||||||
|
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
||||||
|
proc_per_core = False
|
||||||
|
|
||||||
|
#* Show process memory as bytes instead of percent.
|
||||||
|
proc_mem_bytes = True
|
||||||
|
|
||||||
|
#* Show cpu graph for each process.
|
||||||
|
proc_cpu_graphs = True
|
||||||
|
|
||||||
|
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||||
|
proc_info_smaps = False
|
||||||
|
|
||||||
|
#* Show proc box on left side of screen instead of right.
|
||||||
|
proc_left = False
|
||||||
|
|
||||||
|
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||||
|
proc_filter_kernel = False
|
||||||
|
|
||||||
|
#* In tree-view, always accumulate child process resources in the parent process.
|
||||||
|
proc_aggregate = False
|
||||||
|
|
||||||
|
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
||||||
|
#* Select from a list of detected attributes from the options menu.
|
||||||
|
cpu_graph_upper = "Auto"
|
||||||
|
|
||||||
|
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
|
||||||
|
#* Select from a list of detected attributes from the options menu.
|
||||||
|
cpu_graph_lower = "Auto"
|
||||||
|
|
||||||
|
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
|
||||||
|
show_gpu_info = "Auto"
|
||||||
|
|
||||||
|
#* Toggles if the lower CPU graph should be inverted.
|
||||||
|
cpu_invert_lower = True
|
||||||
|
|
||||||
|
#* Set to True to completely disable the lower CPU graph.
|
||||||
|
cpu_single_graph = False
|
||||||
|
|
||||||
|
#* Show cpu box at bottom of screen instead of top.
|
||||||
|
cpu_bottom = False
|
||||||
|
|
||||||
|
#* Shows the system uptime in the CPU box.
|
||||||
|
show_uptime = True
|
||||||
|
|
||||||
|
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
|
||||||
|
show_cpu_watts = True
|
||||||
|
|
||||||
|
#* Show cpu temperature.
|
||||||
|
check_temp = True
|
||||||
|
|
||||||
|
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||||
|
cpu_sensor = "Auto"
|
||||||
|
|
||||||
|
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||||
|
show_coretemp = True
|
||||||
|
|
||||||
|
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
||||||
|
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
||||||
|
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
|
||||||
|
#* Example: "4:0 5:1 6:3"
|
||||||
|
cpu_core_map = ""
|
||||||
|
|
||||||
|
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
|
||||||
|
temp_scale = "celsius"
|
||||||
|
|
||||||
|
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||||
|
base_10_sizes = False
|
||||||
|
|
||||||
|
#* Show CPU frequency.
|
||||||
|
show_cpu_freq = True
|
||||||
|
|
||||||
|
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
||||||
|
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||||
|
clock_format = "%X"
|
||||||
|
|
||||||
|
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
||||||
|
background_update = True
|
||||||
|
|
||||||
|
#* Custom cpu model name, empty string to disable.
|
||||||
|
custom_cpu_name = ""
|
||||||
|
|
||||||
|
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
|
||||||
|
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
|
||||||
|
disks_filter = ""
|
||||||
|
|
||||||
|
#* Show graphs instead of meters for memory values.
|
||||||
|
mem_graphs = True
|
||||||
|
|
||||||
|
#* Show mem box below net box instead of above.
|
||||||
|
mem_below_net = False
|
||||||
|
|
||||||
|
#* Count ZFS ARC in cached and available memory.
|
||||||
|
zfs_arc_cached = True
|
||||||
|
|
||||||
|
#* If swap memory should be shown in memory box.
|
||||||
|
show_swap = True
|
||||||
|
|
||||||
|
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||||
|
swap_disk = True
|
||||||
|
|
||||||
|
#* If mem box should be split to also show disks info.
|
||||||
|
show_disks = True
|
||||||
|
|
||||||
|
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||||
|
only_physical = True
|
||||||
|
|
||||||
|
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||||
|
use_fstab = True
|
||||||
|
|
||||||
|
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||||
|
zfs_hide_datasets = False
|
||||||
|
|
||||||
|
#* Set to true to show available disk space for privileged users.
|
||||||
|
disk_free_priv = False
|
||||||
|
|
||||||
|
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||||
|
show_io_stat = True
|
||||||
|
|
||||||
|
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||||
|
io_mode = False
|
||||||
|
|
||||||
|
#* Set to True to show combined read/write io graphs in io mode.
|
||||||
|
io_graph_combined = False
|
||||||
|
|
||||||
|
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
||||||
|
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||||
|
io_graph_speeds = ""
|
||||||
|
|
||||||
|
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||||
|
net_download = 100
|
||||||
|
|
||||||
|
net_upload = 100
|
||||||
|
|
||||||
|
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||||
|
net_auto = True
|
||||||
|
|
||||||
|
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||||
|
net_sync = True
|
||||||
|
|
||||||
|
#* Starts with the Network Interface specified here.
|
||||||
|
net_iface = ""
|
||||||
|
|
||||||
|
#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes.
|
||||||
|
base_10_bitrate = "Auto"
|
||||||
|
|
||||||
|
#* Show battery stats in top right if battery is present.
|
||||||
|
show_battery = True
|
||||||
|
|
||||||
|
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||||
|
selected_battery = "Auto"
|
||||||
|
|
||||||
|
#* Show power stats of battery next to charge indicator.
|
||||||
|
show_battery_watts = True
|
||||||
|
|
||||||
|
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
||||||
|
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||||
|
log_level = "WARNING"
|
||||||
|
|
||||||
|
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
|
||||||
|
nvml_measure_pcie_speeds = True
|
||||||
|
|
||||||
|
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
|
||||||
|
rsmi_measure_pcie_speeds = True
|
||||||
|
|
||||||
|
#* Horizontally mirror the GPU graph.
|
||||||
|
gpu_mirror_graph = True
|
||||||
|
|
||||||
|
#* Custom gpu0 model name, empty string to disable.
|
||||||
|
custom_gpu_name0 = ""
|
||||||
|
|
||||||
|
#* Custom gpu1 model name, empty string to disable.
|
||||||
|
custom_gpu_name1 = ""
|
||||||
|
|
||||||
|
#* Custom gpu2 model name, empty string to disable.
|
||||||
|
custom_gpu_name2 = ""
|
||||||
|
|
||||||
|
#* Custom gpu3 model name, empty string to disable.
|
||||||
|
custom_gpu_name3 = ""
|
||||||
|
|
||||||
|
#* Custom gpu4 model name, empty string to disable.
|
||||||
|
custom_gpu_name4 = ""
|
||||||
|
|
||||||
|
#* Custom gpu5 model name, empty string to disable.
|
||||||
|
custom_gpu_name5 = ""
|
||||||
64
ccstatusline/settings.json
Normal file
64
ccstatusline/settings.json
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"lines": [
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"id": "3",
|
||||||
|
"type": "context-length",
|
||||||
|
"color": "ansi256:1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ef82dd4e-d238-4b4a-a40e-f78eb797dd75",
|
||||||
|
"type": "context-percentage",
|
||||||
|
"color": "ansi256:2",
|
||||||
|
"bold": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "5",
|
||||||
|
"type": "git-branch",
|
||||||
|
"color": "ansi256:3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "7",
|
||||||
|
"type": "git-changes",
|
||||||
|
"color": "ansi256:4"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "6ed16cdd-0125-4a2b-90eb-bd9054c56105",
|
||||||
|
"type": "block-timer",
|
||||||
|
"color": "ansi256:10",
|
||||||
|
"bold": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "70de37e7-ab8d-4314-aa3f-927f15cf8e7a",
|
||||||
|
"type": "session-cost",
|
||||||
|
"color": "ansi256:6"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
[],
|
||||||
|
[]
|
||||||
|
],
|
||||||
|
"flexMode": "full-minus-40",
|
||||||
|
"compactThreshold": 60,
|
||||||
|
"colorLevel": 2,
|
||||||
|
"defaultPadding": " ",
|
||||||
|
"inheritSeparatorColors": false,
|
||||||
|
"globalBold": false,
|
||||||
|
"powerline": {
|
||||||
|
"enabled": false,
|
||||||
|
"separators": [
|
||||||
|
""
|
||||||
|
],
|
||||||
|
"separatorInvertBackground": [
|
||||||
|
false
|
||||||
|
],
|
||||||
|
"startCaps": [
|
||||||
|
""
|
||||||
|
],
|
||||||
|
"endCaps": [
|
||||||
|
""
|
||||||
|
],
|
||||||
|
"theme": "custom",
|
||||||
|
"autoAlign": false
|
||||||
|
}
|
||||||
|
}
|
||||||
50
fastfetch/config.jsonc
Normal file
50
fastfetch/config.jsonc
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||||
|
"logo": {
|
||||||
|
"source": "/home/lusia/.config/fastfetch/logo.jpg",
|
||||||
|
"type": "kitty",
|
||||||
|
"width": 22,
|
||||||
|
"height": 11
|
||||||
|
},
|
||||||
|
"display": {
|
||||||
|
"separator": " ",
|
||||||
|
"color": {
|
||||||
|
"keys": "magenta"
|
||||||
|
},
|
||||||
|
"size": {
|
||||||
|
"ndigits": 0,
|
||||||
|
"maxPrefix": "MB"
|
||||||
|
},
|
||||||
|
"key": {
|
||||||
|
"type": "icon"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"modules": [
|
||||||
|
"break",
|
||||||
|
{
|
||||||
|
"type": "title",
|
||||||
|
"color": {
|
||||||
|
"user": "green",
|
||||||
|
"at": "red",
|
||||||
|
"host": "blue"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"os",
|
||||||
|
"kernel",
|
||||||
|
"shell",
|
||||||
|
"terminal",
|
||||||
|
"wm",
|
||||||
|
"cpu",
|
||||||
|
"memory",
|
||||||
|
"packages",
|
||||||
|
"uptime",
|
||||||
|
{
|
||||||
|
"type": "colors",
|
||||||
|
"key": "Colors",
|
||||||
|
"symbol": "circle",
|
||||||
|
"block": {
|
||||||
|
"range": [1, 6]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
BIN
fastfetch/logo.jpg
Normal file
BIN
fastfetch/logo.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 152 KiB |
15
fish/config.fish
Normal file
15
fish/config.fish
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
if status is-interactive
|
||||||
|
# Commands to run in interactive sessions can go here
|
||||||
|
end
|
||||||
|
|
||||||
|
function fish_greeting
|
||||||
|
set_color --bold magenta
|
||||||
|
echo "₊˚✧ 𝔀𝓮𝓵𝓬𝓸𝓶𝓮 𝓽𝓸 𝓯𝓲𝓼𝓱 ✧˚₊"
|
||||||
|
set_color --dim magenta
|
||||||
|
echo -n "♡ "
|
||||||
|
set_color --italic white
|
||||||
|
echo -n "\"Something tells me everything is not going to be fine.\" "
|
||||||
|
set_color --dim magenta
|
||||||
|
echo "- Twilight Sparkle ♡"
|
||||||
|
set_color normal
|
||||||
|
end
|
||||||
32
fish/fish_variables
Normal file
32
fish/fish_variables
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
# This file contains fish universal variable definitions.
|
||||||
|
# VERSION: 3.0
|
||||||
|
SETUVAR __fish_initialized:3800
|
||||||
|
SETUVAR fish_color_autosuggestion:brblack
|
||||||
|
SETUVAR fish_color_cancel:\x2dr
|
||||||
|
SETUVAR fish_color_command:blue
|
||||||
|
SETUVAR fish_color_comment:red
|
||||||
|
SETUVAR fish_color_cwd:green
|
||||||
|
SETUVAR fish_color_cwd_root:red
|
||||||
|
SETUVAR fish_color_end:green
|
||||||
|
SETUVAR fish_color_error:brred
|
||||||
|
SETUVAR fish_color_escape:brcyan
|
||||||
|
SETUVAR fish_color_history_current:\x2d\x2dbold
|
||||||
|
SETUVAR fish_color_host:normal
|
||||||
|
SETUVAR fish_color_host_remote:yellow
|
||||||
|
SETUVAR fish_color_normal:normal
|
||||||
|
SETUVAR fish_color_operator:brcyan
|
||||||
|
SETUVAR fish_color_param:cyan
|
||||||
|
SETUVAR fish_color_quote:yellow
|
||||||
|
SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
|
||||||
|
SETUVAR fish_color_search_match:white\x1e\x2d\x2dbackground\x3dbrblack
|
||||||
|
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
|
||||||
|
SETUVAR fish_color_status:red
|
||||||
|
SETUVAR fish_color_user:brgreen
|
||||||
|
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
||||||
|
SETUVAR fish_key_bindings:fish_default_key_bindings
|
||||||
|
SETUVAR fish_pager_color_completion:normal
|
||||||
|
SETUVAR fish_pager_color_description:yellow\x1e\x2di
|
||||||
|
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
|
||||||
|
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
|
||||||
|
SETUVAR fish_pager_color_selected_background:\x2dr
|
||||||
|
SETUVAR fish_user_paths:/home/lusia/\x2ecargo/bin/
|
||||||
4
fish/functions/hm-switch.fish
Normal file
4
fish/functions/hm-switch.fish
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
function hm-switch --wraps='nix flake update --flake ~/.config/home-manager && nh home switch ~/.config/home-manager' --wraps='nh home switch ~/.config/home-manager' --description 'alias hm-switch=nh home switch ~/.config/home-manager'
|
||||||
|
nh home switch ~/.config/home-manager $argv
|
||||||
|
|
||||||
|
end
|
||||||
4
fish/functions/hm-update.fish
Normal file
4
fish/functions/hm-update.fish
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
function hm-update --wraps='nix flake update --flake ~/.config/home-manager && nh home switch ~/.config/home-manager' --description 'alias hm-update=nix flake update --flake ~/.config/home-manager && nh home switch ~/.config/home-manager'
|
||||||
|
nix flake update --flake ~/.config/home-manager && nh home switch ~/.config/home-manager $argv
|
||||||
|
|
||||||
|
end
|
||||||
3
fish/functions/os-switch.fish
Normal file
3
fish/functions/os-switch.fish
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
function os-switch --wraps='nh os switch /home/lusia/.config/nixos' --description 'alias os-switch=nh os switch /home/lusia/.config/nixos'
|
||||||
|
nh os switch /home/lusia/.config/nixos $argv
|
||||||
|
end
|
||||||
3
fish/functions/os-update.fish
Normal file
3
fish/functions/os-update.fish
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
function os-update --wraps='sudo nix flake update --flake /home/lusia/.config/nixos && nh os switch /home/lusia/.config/nixos' --description 'alias os-update=sudo nix flake update --flake /home/lusia/.config/nixos && nh os switch /home/lusia/.config/nixos'
|
||||||
|
sudo nix flake update --flake /home/lusia/.config/nixos && nh os switch /home/lusia/.config/nixos $argv
|
||||||
|
end
|
||||||
4
fish/functions/wl.fish
Normal file
4
fish/functions/wl.fish
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
function wl --wraps='bash sync-colors.sh' --wraps='bash /home/lusia/Downloads/sync-colors.sh' --description 'alias wl=bash /home/lusia/Downloads/sync-colors.sh'
|
||||||
|
bash /home/lusia/Downloads/sync-colors.sh $argv
|
||||||
|
|
||||||
|
end
|
||||||
407
home-manager/flake.lock
generated
Normal file
407
home-manager/flake.lock
generated
Normal file
@@ -0,0 +1,407 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"base16": {
|
||||||
|
"inputs": {
|
||||||
|
"fromYaml": "fromYaml"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1755819240,
|
||||||
|
"narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "base16.nix",
|
||||||
|
"rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "base16.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-fish": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1754405784,
|
||||||
|
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
|
||||||
|
"owner": "tomyun",
|
||||||
|
"repo": "base16-fish",
|
||||||
|
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tomyun",
|
||||||
|
"repo": "base16-fish",
|
||||||
|
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-helix": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1760703920,
|
||||||
|
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-helix",
|
||||||
|
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-helix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-vim": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732806396,
|
||||||
|
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"firefox-gnome-theme": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1764724327,
|
||||||
|
"narHash": "sha256-OkFLrD3pFR952TrjQi1+Vdj604KLcMnkpa7lkW7XskI=",
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"rev": "66b7c635763d8e6eb86bd766de5a1e1fbfcc1047",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1763759067,
|
||||||
|
"narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"fromYaml": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731966426,
|
||||||
|
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "fromYaml",
|
||||||
|
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "fromYaml",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gnome-shell": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"host": "gitlab.gnome.org",
|
||||||
|
"lastModified": 1764524476,
|
||||||
|
"narHash": "sha256-bTmNn3Q4tMQ0J/P0O5BfTQwqEnCiQIzOGef9/aqAZvk=",
|
||||||
|
"owner": "GNOME",
|
||||||
|
"repo": "gnome-shell",
|
||||||
|
"rev": "c0e1ad9f0f703fd0519033b8f46c3267aab51a22",
|
||||||
|
"type": "gitlab"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"host": "gitlab.gnome.org",
|
||||||
|
"owner": "GNOME",
|
||||||
|
"ref": "gnome-49",
|
||||||
|
"repo": "gnome-shell",
|
||||||
|
"type": "gitlab"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765461410,
|
||||||
|
"narHash": "sha256-AVZ1y5tfTGqf5zJx6uY52KHN2pP9gGF9RMQ3meBVKIg=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "7b34e428f31ce52baabda53e52bf14002e1c0625",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765186076,
|
||||||
|
"narHash": "sha256-hM20uyap1a0M9d344I692r+ik4gTMyj60cQWO+hAYP8=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"noctalia": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765420707,
|
||||||
|
"narHash": "sha256-lX0WxWosQbm3DrZhscVTiLLpJcoZvaQaZoP+eNt75wE=",
|
||||||
|
"owner": "noctalia-dev",
|
||||||
|
"repo": "noctalia-shell",
|
||||||
|
"rev": "298b2f5c794d4641cde21cf20422224bf8a60f99",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "noctalia-dev",
|
||||||
|
"repo": "noctalia-shell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nur": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": [
|
||||||
|
"stylix",
|
||||||
|
"flake-parts"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1764773531,
|
||||||
|
"narHash": "sha256-mCBl7MD1WZ7yCG6bR9MmpPO2VydpNkWFgnslJRIT1YU=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"rev": "1d9616689e98beded059ad0384b9951e967a17fa",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"quickshell": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1764663772,
|
||||||
|
"narHash": "sha256-sHqLmm0wAt3PC4vczJeBozI1/f4rv9yp3IjkClHDXDs=",
|
||||||
|
"owner": "outfoxxed",
|
||||||
|
"repo": "quickshell",
|
||||||
|
"rev": "26531fc46ef17e9365b03770edd3fb9206fcb460",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "outfoxxed",
|
||||||
|
"repo": "quickshell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"home-manager": "home-manager",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"noctalia": "noctalia",
|
||||||
|
"quickshell": "quickshell",
|
||||||
|
"rust-overlay": "rust-overlay",
|
||||||
|
"stylix": "stylix"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rust-overlay": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765465581,
|
||||||
|
"narHash": "sha256-fCXT0aZXmTalM3NPCTedVs9xb0egBG5BOZkcrYo5PGE=",
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"rev": "99cc5667eece98bb35dcf35f7e511031a8b7a125",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"stylix": {
|
||||||
|
"inputs": {
|
||||||
|
"base16": "base16",
|
||||||
|
"base16-fish": "base16-fish",
|
||||||
|
"base16-helix": "base16-helix",
|
||||||
|
"base16-vim": "base16-vim",
|
||||||
|
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||||
|
"flake-parts": "flake-parts",
|
||||||
|
"gnome-shell": "gnome-shell",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nur": "nur",
|
||||||
|
"systems": "systems",
|
||||||
|
"tinted-foot": "tinted-foot",
|
||||||
|
"tinted-kitty": "tinted-kitty",
|
||||||
|
"tinted-schemes": "tinted-schemes",
|
||||||
|
"tinted-tmux": "tinted-tmux",
|
||||||
|
"tinted-zed": "tinted-zed"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765386911,
|
||||||
|
"narHash": "sha256-YLjQpnTZCMjCho7ZDs5O1yFVw+fDlXq4lSJDuLWHHeA=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "stylix",
|
||||||
|
"rev": "cb6bbed75eaca21deb8950c2ec0036ae5cde18ca",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "stylix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-foot": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1726913040,
|
||||||
|
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-foot",
|
||||||
|
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-foot",
|
||||||
|
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-kitty": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1735730497,
|
||||||
|
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-kitty",
|
||||||
|
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-kitty",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-schemes": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1763914658,
|
||||||
|
"narHash": "sha256-Hju0WtMf3iForxtOwXqGp3Ynipo0EYx1AqMKLPp9BJw=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"rev": "0f6be815d258e435c9b137befe5ef4ff24bea32c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-tmux": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1764465359,
|
||||||
|
"narHash": "sha256-lbSVPqLEk2SqMrnpvWuKYGCaAlfWFMA6MVmcOFJjdjE=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-tmux",
|
||||||
|
"rev": "edf89a780e239263cc691a987721f786ddc4f6aa",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-tmux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-zed": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1764464512,
|
||||||
|
"narHash": "sha256-rCD/pAhkMdCx6blsFwxIyvBJbPZZ1oL2sVFrH07lmqg=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"rev": "907dbba5fb8cf69ebfd90b00813418a412d0a29a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
50
home-manager/flake.nix
Normal file
50
home-manager/flake.nix
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
{
|
||||||
|
description = "Home Manager configuration";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
url = "github:nix-community/home-manager";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
quickshell = {
|
||||||
|
url = "github:outfoxxed/quickshell";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
noctalia = {
|
||||||
|
url = "github:noctalia-dev/noctalia-shell";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
rust-overlay = {
|
||||||
|
url = "github:oxalica/rust-overlay";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
stylix = {
|
||||||
|
url = "github:nix-community/stylix";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { nixpkgs, home-manager, rust-overlay, stylix, ... }@inputs: {
|
||||||
|
homeConfigurations.lusia = home-manager.lib.homeManagerConfiguration {
|
||||||
|
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
||||||
|
|
||||||
|
modules = [
|
||||||
|
stylix.homeModules.stylix
|
||||||
|
./noctalia.nix
|
||||||
|
./home.nix
|
||||||
|
({ pkgs, ... }: {
|
||||||
|
nixpkgs.overlays = [ rust-overlay.overlays.default ];
|
||||||
|
home.packages = [ pkgs.rustup ];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
extraSpecialArgs = { inherit inputs; };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
211
home-manager/home.nix
Normal file
211
home-manager/home.nix
Normal file
@@ -0,0 +1,211 @@
|
|||||||
|
{ config, pkgs, inputs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home.username = "lusia";
|
||||||
|
home.homeDirectory = "/home/lusia";
|
||||||
|
home.stateVersion = "24.11";
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
niri
|
||||||
|
btop
|
||||||
|
ripgrep
|
||||||
|
firefox-bin
|
||||||
|
claude-code
|
||||||
|
yazi
|
||||||
|
fastfetch
|
||||||
|
pywalfox-native
|
||||||
|
nautilus
|
||||||
|
loupe
|
||||||
|
gnome-text-editor
|
||||||
|
gnome-calculator
|
||||||
|
evince
|
||||||
|
vlc
|
||||||
|
p7zip
|
||||||
|
unzip
|
||||||
|
zip
|
||||||
|
unrar
|
||||||
|
file-roller
|
||||||
|
morewaita-icon-theme
|
||||||
|
codex
|
||||||
|
neovim
|
||||||
|
cargo-cross
|
||||||
|
filezilla
|
||||||
|
swayidle
|
||||||
|
python314
|
||||||
|
sshpass
|
||||||
|
dua
|
||||||
|
nh
|
||||||
|
nmap
|
||||||
|
lazygit
|
||||||
|
mpv
|
||||||
|
libreoffice-fresh
|
||||||
|
qbittorrent
|
||||||
|
gimp
|
||||||
|
mdcat
|
||||||
|
htop
|
||||||
|
vscode.fhs
|
||||||
|
blender
|
||||||
|
yt-dlp
|
||||||
|
ffmpeg
|
||||||
|
tor-browser
|
||||||
|
kdePackages.kleopatra
|
||||||
|
monero-gui
|
||||||
|
gnupg
|
||||||
|
pinentry-qt
|
||||||
|
libheif
|
||||||
|
exiftool
|
||||||
|
gnome-network-displays
|
||||||
|
dconf
|
||||||
|
jq
|
||||||
|
pywal
|
||||||
|
fd
|
||||||
|
openai-whisper
|
||||||
|
gparted
|
||||||
|
swww
|
||||||
|
tectonic
|
||||||
|
zathura
|
||||||
|
entr
|
||||||
|
waifu2x-converter-cpp
|
||||||
|
gnome-software
|
||||||
|
mission-center
|
||||||
|
kanshi
|
||||||
|
|
||||||
|
# Wrap PrismLauncher to fix Minecraft GLFW Wayland issues
|
||||||
|
(pkgs.symlinkJoin {
|
||||||
|
name = "prismlauncher";
|
||||||
|
paths = [ pkgs.prismlauncher ];
|
||||||
|
buildInputs = [ pkgs.makeWrapper ];
|
||||||
|
postBuild = ''
|
||||||
|
wrapProgram $out/bin/prismlauncher \
|
||||||
|
--set SDL_VIDEODRIVER "x11"
|
||||||
|
'';
|
||||||
|
})
|
||||||
|
|
||||||
|
# Wrap Krita to work with XWayland (Krita doesn't support native Wayland)
|
||||||
|
(pkgs.symlinkJoin {
|
||||||
|
name = "krita";
|
||||||
|
paths = [ pkgs.krita ];
|
||||||
|
buildInputs = [ pkgs.makeWrapper ];
|
||||||
|
postBuild = ''
|
||||||
|
wrapProgram $out/bin/krita \
|
||||||
|
--set DISPLAY ":0" \
|
||||||
|
--set QT_AUTO_SCREEN_SCALE_FACTOR "0" \
|
||||||
|
--set QT_SCALE_FACTOR "2" \
|
||||||
|
--set QT_FONT_DPI "96"
|
||||||
|
'';
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
# Set dark mode and Nautilus preferences
|
||||||
|
dconf = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
"org/gnome/desktop/interface" = {
|
||||||
|
color-scheme = "prefer-dark";
|
||||||
|
};
|
||||||
|
"org/gnome/nautilus/preferences" = {
|
||||||
|
show-image-thumbnails = "always";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# Set morewaita as the default icon theme
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
iconTheme = {
|
||||||
|
name = "MoreWaita";
|
||||||
|
package = pkgs.morewaita-icon-theme;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Stylix manages theme, commenting out manual config
|
||||||
|
# theme = {
|
||||||
|
# name = "Adwaita-dark";
|
||||||
|
# package = pkgs.gnome-themes-extra;
|
||||||
|
# };
|
||||||
|
|
||||||
|
cursorTheme = {
|
||||||
|
name = "Adwaita";
|
||||||
|
package = pkgs.adwaita-icon-theme;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Force dark mode preference for GTK3
|
||||||
|
gtk3.extraConfig = {
|
||||||
|
gtk-application-prefer-dark-theme = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Force dark mode preference for GTK4
|
||||||
|
gtk4.extraConfig = {
|
||||||
|
gtk-application-prefer-dark-theme = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.pointerCursor = {
|
||||||
|
name = "Adwaita";
|
||||||
|
package = pkgs.adwaita-icon-theme;
|
||||||
|
size = 24;
|
||||||
|
gtk.enable = true;
|
||||||
|
x11 = {
|
||||||
|
enable = true;
|
||||||
|
defaultCursor = "Adwaita";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
qt = {
|
||||||
|
enable = true;
|
||||||
|
platformTheme.name = "adwaita";
|
||||||
|
style = {
|
||||||
|
name = "adwaita-dark";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable and configure git
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
user.name = "Lukrecja";
|
||||||
|
user.email = "lusiaaa425@gmail.com";
|
||||||
|
credential.helper = "store";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Configure GPG agent with pinentry
|
||||||
|
services.gpg-agent = {
|
||||||
|
enable = true;
|
||||||
|
pinentry.package = pkgs.pinentry-qt;
|
||||||
|
enableSshSupport = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# OBS with plugins
|
||||||
|
programs.obs-studio = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
plugins = with pkgs.obs-studio-plugins; [
|
||||||
|
wlrobs
|
||||||
|
obs-backgroundremoval
|
||||||
|
obs-pipewire-audio-capture
|
||||||
|
obs-vaapi
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
# Stylix theming
|
||||||
|
stylix = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
# Wallpaper required by Stylix (even though we use swww to actually display it)
|
||||||
|
image = ./wallpaper;
|
||||||
|
|
||||||
|
# Use pywal's color scheme instead of extracting from image
|
||||||
|
# sync-colors.sh will generate colors.yaml here
|
||||||
|
base16Scheme = ./colors.yaml;
|
||||||
|
|
||||||
|
# Use dark mode
|
||||||
|
polarity = "dark";
|
||||||
|
|
||||||
|
# Disable Qt theming (it's janky and doesn't apply everywhere)
|
||||||
|
# targets.qt.enable = false;
|
||||||
|
};
|
||||||
|
}
|
||||||
18
home-manager/noctalia.nix
Normal file
18
home-manager/noctalia.nix
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
{ pkgs, inputs, ... }:
|
||||||
|
{
|
||||||
|
# import the home manager module
|
||||||
|
#imports = [
|
||||||
|
# inputs.noctalia.homeModules.default
|
||||||
|
#];
|
||||||
|
|
||||||
|
# Install the package
|
||||||
|
home.packages = [
|
||||||
|
inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default
|
||||||
|
inputs.quickshell.packages.${pkgs.stdenv.hostPlatform.system}.default
|
||||||
|
];
|
||||||
|
|
||||||
|
# configure options
|
||||||
|
#programs.noctalia-shell = {
|
||||||
|
# enable = true;
|
||||||
|
#};
|
||||||
|
}
|
||||||
6
kanshi/apply-wallpaper.sh
Executable file
6
kanshi/apply-wallpaper.sh
Executable file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
sleep 0.5
|
||||||
|
WALLPAPER=$(cat ~/.config/swww/current-wallpaper 2>/dev/null)
|
||||||
|
if [ -n "$WALLPAPER" ] && [ -f "$WALLPAPER" ]; then
|
||||||
|
swww img "$WALLPAPER"
|
||||||
|
fi
|
||||||
15
kanshi/config
Normal file
15
kanshi/config
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
profile laptop {
|
||||||
|
output eDP-1 enable
|
||||||
|
exec ~/.config/kanshi/apply-wallpaper.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
profile laptop_and_hdmi {
|
||||||
|
output eDP-1 enable
|
||||||
|
output HDMI-A-1 enable
|
||||||
|
exec ~/.config/kanshi/apply-wallpaper.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
profile {
|
||||||
|
output "*"
|
||||||
|
exec ~/.config/kanshi/apply-wallpaper.sh
|
||||||
|
}
|
||||||
25
kitty/kitty.conf
Normal file
25
kitty/kitty.conf
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# Kitty Configuration
|
||||||
|
# Include pywal colors
|
||||||
|
include ~/.cache/wal/colors-kitty.conf
|
||||||
|
|
||||||
|
# new tab in the same dir
|
||||||
|
map kitty_mod+t new_tab_with_cwd
|
||||||
|
# remove more text at once with ctrl+backspace
|
||||||
|
map ctrl+backspace send_text all \x17
|
||||||
|
# fixes mod+q not exiting the terminal instantly
|
||||||
|
confirm_os_window_close 0
|
||||||
|
|
||||||
|
# BEGIN_KITTY_THEME
|
||||||
|
# Noctalia
|
||||||
|
#include current-theme.conf
|
||||||
|
# END_KITTY_THEME
|
||||||
|
|
||||||
|
|
||||||
|
# BEGIN_KITTY_FONTS
|
||||||
|
font_family family="FiraCode Nerd Font"
|
||||||
|
bold_font auto
|
||||||
|
italic_font auto
|
||||||
|
bold_italic_font auto
|
||||||
|
# END_KITTY_FONTS
|
||||||
|
|
||||||
|
# background_opacity 0.95
|
||||||
17
mimeapps.list
Normal file
17
mimeapps.list
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
[Added Associations]
|
||||||
|
application/gzip=org.gnome.FileRoller.desktop;org.gnome.Evince.desktop;
|
||||||
|
text/markdown=org.gnome.TextEditor.desktop;
|
||||||
|
image/jpeg=org.gnome.Loupe.desktop;
|
||||||
|
image/png=org.gnome.Loupe.desktop;
|
||||||
|
text/plain=org.gnome.TextEditor.desktop;
|
||||||
|
image/heif=org.gnome.Loupe.desktop;
|
||||||
|
application/pdf=org.pwmt.zathura-pdf-mupdf.desktop;
|
||||||
|
|
||||||
|
[Default Applications]
|
||||||
|
text/markdown=org.gnome.TextEditor.desktop
|
||||||
|
image/jpeg=org.gnome.Loupe.desktop
|
||||||
|
image/png=org.gnome.Loupe.desktop
|
||||||
|
text/plain=org.gnome.TextEditor.desktop
|
||||||
|
image/heif=org.gnome.Loupe.desktop
|
||||||
|
x-scheme-handler/discord-1216669957799018608=discord-1216669957799018608.desktop
|
||||||
|
application/pdf=org.pwmt.zathura-pdf-mupdf.desktop
|
||||||
293
niri/config.kdl
Normal file
293
niri/config.kdl
Normal file
@@ -0,0 +1,293 @@
|
|||||||
|
layout {
|
||||||
|
gaps 5
|
||||||
|
background-color "transparent"
|
||||||
|
always-center-single-column
|
||||||
|
center-focused-column "never"
|
||||||
|
|
||||||
|
preset-column-widths {
|
||||||
|
proportion 0.33333
|
||||||
|
proportion 0.5
|
||||||
|
proportion 0.66667
|
||||||
|
}
|
||||||
|
|
||||||
|
default-column-width { proportion 0.5; }
|
||||||
|
|
||||||
|
focus-ring {
|
||||||
|
// off
|
||||||
|
width 1
|
||||||
|
active-color "#ffffff33"
|
||||||
|
}
|
||||||
|
|
||||||
|
border {
|
||||||
|
off
|
||||||
|
width 1
|
||||||
|
active-color "#555"
|
||||||
|
inactive-color "#222"
|
||||||
|
}
|
||||||
|
|
||||||
|
shadow {
|
||||||
|
off
|
||||||
|
softness 20
|
||||||
|
spread 5
|
||||||
|
offset x=0 y=5
|
||||||
|
}
|
||||||
|
|
||||||
|
tab-indicator {
|
||||||
|
width 2
|
||||||
|
gap -5
|
||||||
|
gaps-between-tabs 5
|
||||||
|
corner-radius 10
|
||||||
|
active-color "#fff"
|
||||||
|
inactive-color "#ffffff55"
|
||||||
|
}
|
||||||
|
|
||||||
|
insert-hint {
|
||||||
|
color "#ffffff22"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//cursor {
|
||||||
|
// xcursor-theme "Plasma-Overdose"
|
||||||
|
// xcursor-size 64
|
||||||
|
//}
|
||||||
|
|
||||||
|
prefer-no-csd
|
||||||
|
|
||||||
|
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
|
||||||
|
|
||||||
|
layer-rule {
|
||||||
|
match namespace="^swww-daemon$"
|
||||||
|
place-within-backdrop true
|
||||||
|
}
|
||||||
|
|
||||||
|
overview {
|
||||||
|
workspace-shadow {
|
||||||
|
off
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
animations {
|
||||||
|
window-open {
|
||||||
|
spring damping-ratio=1.0 stiffness=700 epsilon=0.0001
|
||||||
|
}
|
||||||
|
window-close {
|
||||||
|
spring damping-ratio=1.0 stiffness=700 epsilon=0.1
|
||||||
|
}
|
||||||
|
window-resize {
|
||||||
|
spring damping-ratio=1.0 stiffness=800 epsilon=0.001
|
||||||
|
}
|
||||||
|
window-movement {
|
||||||
|
spring damping-ratio=1.0 stiffness=600 epsilon=0.0001
|
||||||
|
}
|
||||||
|
workspace-switch {
|
||||||
|
spring damping-ratio=1.0 stiffness=800 epsilon=0.00001
|
||||||
|
}
|
||||||
|
horizontal-view-movement {
|
||||||
|
spring damping-ratio=1.0 stiffness=700 epsilon=0.0001
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Open the Firefox picture-in-picture player as floating by default.
|
||||||
|
window-rule {
|
||||||
|
match app-id=r#"firefox$"# title="^Picture-in-Picture$"
|
||||||
|
open-floating true
|
||||||
|
}
|
||||||
|
|
||||||
|
// Example: enable rounded corners for all windows.
|
||||||
|
window-rule {
|
||||||
|
geometry-corner-radius 20
|
||||||
|
clip-to-geometry true
|
||||||
|
}
|
||||||
|
|
||||||
|
window-rule {
|
||||||
|
geometry-corner-radius 20
|
||||||
|
clip-to-geometry true
|
||||||
|
}
|
||||||
|
|
||||||
|
window-rule {
|
||||||
|
match app-id="kitty"
|
||||||
|
opacity 0.9
|
||||||
|
}
|
||||||
|
|
||||||
|
window-rule {
|
||||||
|
match app-id="code"
|
||||||
|
opacity 0.95
|
||||||
|
}
|
||||||
|
|
||||||
|
layer-rule {
|
||||||
|
match namespace="^quickshell-overview$"
|
||||||
|
}
|
||||||
|
|
||||||
|
binds {
|
||||||
|
// Core Noctalia binds
|
||||||
|
Mod+Space { spawn "noctalia-shell" "ipc" "call" "launcher" "toggle"; }
|
||||||
|
Mod+S { spawn "noctalia-shell" "ipc" "call" "sidePanel" "toggle"; }
|
||||||
|
Mod+Comma { spawn "noctalia-shell" "ipc" "call" "settings" "toggle"; }
|
||||||
|
|
||||||
|
// Audio controls
|
||||||
|
XF86AudioRaiseVolume { spawn "noctalia-shell" "ipc" "call" "volume" "increase"; }
|
||||||
|
XF86AudioLowerVolume { spawn "noctalia-shell" "ipc" "call" "volume" "decrease"; }
|
||||||
|
XF86AudioMute { spawn "noctalia-shell" "ipc" "call" "volume" "muteOutput"; }
|
||||||
|
|
||||||
|
// Brightness controls
|
||||||
|
XF86MonBrightnessUp { spawn "noctalia-shell" "ipc" "call" "brightness" "increase"; }
|
||||||
|
XF86MonBrightnessDown { spawn "noctalia-shell" "ipc" "call" "brightness" "decrease"; }
|
||||||
|
|
||||||
|
// Utility shortcuts
|
||||||
|
//Mod+V { spawn "noctalia-shell" "ipc" "call" "launcher" "clipboard"; }
|
||||||
|
//Mod+C { spawn "noctalia-shell" "ipc" "call" "launcher" "calculator"; }
|
||||||
|
Mod+L { spawn "noctalia-shell" "ipc" "call" "lockScreen" "lock"; }
|
||||||
|
|
||||||
|
// Mod-Shift-/, which is usually the same as Mod-?,
|
||||||
|
// shows a list of important hotkeys.
|
||||||
|
Mod+Shift+Slash { show-hotkey-overlay; }
|
||||||
|
|
||||||
|
// Suggested binds for running programs: terminal, app launcher, screen locker.
|
||||||
|
Mod+T { spawn "kitty"; }
|
||||||
|
//Mod+Enter { spawn "kitty"; }
|
||||||
|
Mod+D { spawn "ignis" "toggle-window" "Launcher"; }
|
||||||
|
//Mod+L { spawn "hyprlock"; }
|
||||||
|
Mod+E { spawn "nautilus"; }
|
||||||
|
Mod+Escape { spawn "ignis" "toggle-window" "PowerMenu"; }
|
||||||
|
Mod+I { spawn "ignis" "toggle-window" "Settings"; }
|
||||||
|
|
||||||
|
// Example volume keys mappings for PipeWire & WirePlumber.
|
||||||
|
// The allow-when-locked=true property makes them work even when the session is locked.
|
||||||
|
//XF86AudioRaiseVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"; }
|
||||||
|
//XF86AudioLowerVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"; }
|
||||||
|
//XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
|
||||||
|
XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; }
|
||||||
|
|
||||||
|
Mod+Q { close-window; }
|
||||||
|
|
||||||
|
Mod+Left { focus-column-left; }
|
||||||
|
Mod+Down { focus-window-down; }
|
||||||
|
Mod+Up { focus-window-up; }
|
||||||
|
Mod+Right { focus-column-right; }
|
||||||
|
|
||||||
|
Mod+Ctrl+Left { move-column-left; }
|
||||||
|
Mod+Ctrl+Down { move-window-down; }
|
||||||
|
Mod+Ctrl+Up { move-window-up; }
|
||||||
|
Mod+Ctrl+Right { move-column-right; }
|
||||||
|
|
||||||
|
Mod+Home { focus-column-first; }
|
||||||
|
Mod+End { focus-column-last; }
|
||||||
|
Mod+Ctrl+Home { move-column-to-first; }
|
||||||
|
Mod+Ctrl+End { move-column-to-last; }
|
||||||
|
|
||||||
|
Mod+Shift+Left { focus-monitor-left; }
|
||||||
|
Mod+Shift+Down { focus-monitor-down; }
|
||||||
|
Mod+Shift+Up { focus-monitor-up; }
|
||||||
|
Mod+Shift+Right { focus-monitor-right; }
|
||||||
|
|
||||||
|
Mod+Shift+Ctrl+Left { move-column-to-monitor-left; }
|
||||||
|
Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }
|
||||||
|
Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }
|
||||||
|
Mod+Shift+Ctrl+Right { move-column-to-monitor-right; }
|
||||||
|
|
||||||
|
Mod+Page_Down { focus-workspace-down; }
|
||||||
|
Mod+Page_Up { focus-workspace-up; }
|
||||||
|
Mod+Ctrl+Page_Down { move-column-to-workspace-down; }
|
||||||
|
Mod+Ctrl+Page_Up { move-column-to-workspace-up; }
|
||||||
|
|
||||||
|
Mod+Shift+Page_Down { move-workspace-down; }
|
||||||
|
Mod+Shift+Page_Up { move-workspace-up; }
|
||||||
|
|
||||||
|
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
|
||||||
|
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
|
||||||
|
Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
|
||||||
|
Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }
|
||||||
|
|
||||||
|
Mod+WheelScrollRight { focus-column-right; }
|
||||||
|
Mod+WheelScrollLeft { focus-column-left; }
|
||||||
|
Mod+Ctrl+WheelScrollRight { move-column-right; }
|
||||||
|
Mod+Ctrl+WheelScrollLeft { move-column-left; }
|
||||||
|
|
||||||
|
// Usually scrolling up and down with Shift in applications results in
|
||||||
|
// horizontal scrolling; these binds replicate that.
|
||||||
|
Mod+Shift+WheelScrollDown { focus-column-right; }
|
||||||
|
Mod+Shift+WheelScrollUp { focus-column-left; }
|
||||||
|
Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
|
||||||
|
Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }
|
||||||
|
|
||||||
|
Mod+1 { focus-workspace 1; }
|
||||||
|
Mod+2 { focus-workspace 2; }
|
||||||
|
Mod+3 { focus-workspace 3; }
|
||||||
|
Mod+4 { focus-workspace 4; }
|
||||||
|
Mod+5 { focus-workspace 5; }
|
||||||
|
Mod+6 { focus-workspace 6; }
|
||||||
|
Mod+7 { focus-workspace 7; }
|
||||||
|
Mod+8 { focus-workspace 8; }
|
||||||
|
Mod+9 { focus-workspace 9; }
|
||||||
|
Mod+Ctrl+1 { move-column-to-workspace 1; }
|
||||||
|
Mod+Ctrl+2 { move-column-to-workspace 2; }
|
||||||
|
Mod+Ctrl+3 { move-column-to-workspace 3; }
|
||||||
|
Mod+Ctrl+4 { move-column-to-workspace 4; }
|
||||||
|
Mod+Ctrl+5 { move-column-to-workspace 5; }
|
||||||
|
Mod+Ctrl+6 { move-column-to-workspace 6; }
|
||||||
|
Mod+Ctrl+7 { move-column-to-workspace 7; }
|
||||||
|
Mod+Ctrl+8 { move-column-to-workspace 8; }
|
||||||
|
Mod+Ctrl+9 { move-column-to-workspace 9; }
|
||||||
|
|
||||||
|
Mod+BracketLeft { consume-or-expel-window-left; }
|
||||||
|
Mod+BracketRight { consume-or-expel-window-right; }
|
||||||
|
|
||||||
|
// Consume one window from the right to the bottom of the focused column.
|
||||||
|
//Mod+Comma { consume-window-into-column; }
|
||||||
|
// Expel the bottom window from the focused column to the right.
|
||||||
|
Mod+Period { expel-window-from-column; }
|
||||||
|
|
||||||
|
Mod+R { switch-preset-column-width; }
|
||||||
|
Mod+Shift+R { switch-preset-window-height; }
|
||||||
|
Mod+Ctrl+R { reset-window-height; }
|
||||||
|
Mod+F { maximize-column; }
|
||||||
|
Mod+Shift+F { fullscreen-window; }
|
||||||
|
Mod+C { center-column; }
|
||||||
|
Mod+W { toggle-column-tabbed-display; }
|
||||||
|
|
||||||
|
Mod+Minus { set-column-width "-10%"; }
|
||||||
|
Mod+Equal { set-column-width "+10%"; }
|
||||||
|
|
||||||
|
// Finer height adjustments when in column with other windows.
|
||||||
|
Mod+Shift+Minus { set-window-height "-10%"; }
|
||||||
|
Mod+Shift+Equal { set-window-height "+10%"; }
|
||||||
|
|
||||||
|
// Move the focused window between the floating and the tiling layout.
|
||||||
|
Mod+V { toggle-window-floating; }
|
||||||
|
Mod+Shift+V { switch-focus-between-floating-and-tiling; }
|
||||||
|
|
||||||
|
Mod+Shift+S { screenshot; }
|
||||||
|
Ctrl+Print { screenshot-screen; }
|
||||||
|
Alt+Print { screenshot-window; }
|
||||||
|
|
||||||
|
Mod+Shift+Alt+R { spawn "ignis" "run-command" "recorder-record-screen"; }
|
||||||
|
Mod+Alt+R { spawn "ignis" "run-command" "recorder-record-portal"; }
|
||||||
|
Ctrl+Shift+Escape { spawn "missioncenter"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
hotkey-overlay {
|
||||||
|
skip-at-startup
|
||||||
|
}
|
||||||
|
|
||||||
|
input {
|
||||||
|
touchpad {
|
||||||
|
tap
|
||||||
|
natural-scroll
|
||||||
|
}
|
||||||
|
keyboard {
|
||||||
|
xkb {
|
||||||
|
layout "pl"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
output "eDP-1" {
|
||||||
|
mode "2880x1800@120.000"
|
||||||
|
//mode "1440x900@120.000"
|
||||||
|
//scale 1.0
|
||||||
|
scale 2.0
|
||||||
|
}
|
||||||
|
//spawn-at-startup "ignis" "init"
|
||||||
|
spawn-at-startup "swww-daemon"
|
||||||
|
spawn-at-startup "kanshi"
|
||||||
|
spawn-at-startup "noctalia-shell"
|
||||||
316
nixos/configuration.nix
Normal file
316
nixos/configuration.nix
Normal file
@@ -0,0 +1,316 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ # Include the results of the hardware scan.
|
||||||
|
./hardware-configuration.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
# Use the systemd-boot EFI boot loader.
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
boot.resumeDevice = "/dev/mapper/luksroot";
|
||||||
|
# Pin Linux kernel to 6.12
|
||||||
|
boot.kernelPackages = pkgs.linuxPackages_6_12;
|
||||||
|
|
||||||
|
boot.extraModprobeConfig = ''
|
||||||
|
options mt7921_common disable_clc=1
|
||||||
|
options atkbd reset=1 softrepeat=1
|
||||||
|
options i8042 nomux=1 reset=1 nopnp=1 kbdreset=1 direct=1 dumbkbd=1
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Kernel parameters for power saving
|
||||||
|
boot.kernelParams = [
|
||||||
|
# CRITICAL FIX: Disable ACPI for i8042 (ASUS BIOS bug workaround)
|
||||||
|
"i8042.noacpi" # Disable buggy ASUS ACPI keyboard controller
|
||||||
|
"i8042.reset=1" # Force reset i8042
|
||||||
|
"i8042.nomux=1" # No multiplexing
|
||||||
|
"i8042.nopnp=1" # Ignore PnP detection
|
||||||
|
"atkbd.softrepeat=1" # Software key repeat
|
||||||
|
"amd_pstate=active" # Use AMD P-State driver for better power management
|
||||||
|
"amd_pstate.shared_mem=1"
|
||||||
|
"pcie_aspm.policy=powersupersave" # Aggressive PCIe power management
|
||||||
|
"amdgpu.gpu_recovery=1" # Enable automatic GPU recovery
|
||||||
|
#"amdgpu.runpm=0" # Disable runtime PM (major hang cause)
|
||||||
|
###"amdgpu.dcdebugmask=0x400"
|
||||||
|
#"amdgpu.dcdebugmask=0x10" # Disable PSR (panel self-refresh)
|
||||||
|
#"amdgpu.ppfeaturemask=0xf7fff" # Disable GFXOFF
|
||||||
|
];
|
||||||
|
|
||||||
|
# Disable TPM
|
||||||
|
systemd.tpm2.enable = false;
|
||||||
|
boot.initrd.systemd.tpm2.enable = false;
|
||||||
|
|
||||||
|
#swapDevices = [{ file = "/swap/swapfile"; }];
|
||||||
|
|
||||||
|
# Override btrfs mount options from hardware-configuration.nix
|
||||||
|
fileSystems."/" = {
|
||||||
|
options = [ "subvol=@" "compress=zstd" "space_cache=v2" "noatime"
|
||||||
|
"autodefrag" "ssd" "discard=async" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/home" = {
|
||||||
|
options = [ "subvol=@home" "compress=zstd" "space_cache=v2" "noatime"
|
||||||
|
"autodefrag" "ssd" "discard=async" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/var/log" = {
|
||||||
|
options = [ "subvol=@log" "compress=zstd" "space_cache=v2" "noatime"
|
||||||
|
"autodefrag" "ssd" "discard=async" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/swap" = {
|
||||||
|
options = [ "subvol=@swap" "noatime" "ssd" "discard=async" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable NetworkManager and set network host name
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
networking.hostName = "lusia-laptop";
|
||||||
|
|
||||||
|
# NetworkManager power saving for WiFi
|
||||||
|
networking.networkmanager.wifi.powersave = true;
|
||||||
|
|
||||||
|
# Enable Tailscale
|
||||||
|
services.tailscale.enable = true;
|
||||||
|
|
||||||
|
# Trust the Tailscale interface
|
||||||
|
networking.firewall.trustedInterfaces = [ "tailscale0" ];
|
||||||
|
|
||||||
|
# Disable reverse path filtering for Tailscale ╎│
|
||||||
|
boot.kernel.sysctl."net.ipv4.conf.tailscale0.rp_filter" = 0;
|
||||||
|
|
||||||
|
# Enable resolved
|
||||||
|
services.resolved.enable = true;
|
||||||
|
|
||||||
|
# OpenVPN services
|
||||||
|
# VSTech VPN (with DNS for bgs.local domain)
|
||||||
|
services.openvpn.servers.vstech = {
|
||||||
|
config = ''
|
||||||
|
client
|
||||||
|
remote 51.83.143.81
|
||||||
|
proto udp
|
||||||
|
port 649
|
||||||
|
dev tun
|
||||||
|
topology subnet
|
||||||
|
ca /home/lusia/VSTech-vpn/ca.crt
|
||||||
|
cert /home/lusia/VSTech-vpn/Klient251.crt
|
||||||
|
key /home/lusia/VSTech-vpn/Klient251.key
|
||||||
|
tls-crypt /home/lusia/VSTech-vpn/ta.key
|
||||||
|
|
||||||
|
auth sha512
|
||||||
|
data-ciphers aes-256-cbc
|
||||||
|
data-ciphers-fallback aes-256-cbc
|
||||||
|
key-direction 1
|
||||||
|
keepalive 10 120
|
||||||
|
'';
|
||||||
|
updateResolvConf = false;
|
||||||
|
|
||||||
|
# Manually set DNS after connection
|
||||||
|
up = ''
|
||||||
|
${pkgs.systemd}/bin/resolvectl dns $dev 10.10.10.1
|
||||||
|
${pkgs.systemd}/bin/resolvectl domain $dev bgs.local
|
||||||
|
'';
|
||||||
|
|
||||||
|
down = ''
|
||||||
|
${pkgs.systemd}/bin/resolvectl revert $dev
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
# CAT VPN
|
||||||
|
services.openvpn.servers.cat = {
|
||||||
|
config = ''
|
||||||
|
client
|
||||||
|
remote 79.133.193.211
|
||||||
|
proto tcp
|
||||||
|
port 1194
|
||||||
|
dev tun
|
||||||
|
topology subnet
|
||||||
|
ca /home/lusia/vpn/ca.crt
|
||||||
|
cert /home/lusia/vpn/client18.crt
|
||||||
|
key /home/lusia/vpn/client18.key
|
||||||
|
|
||||||
|
auth sha256
|
||||||
|
data-ciphers AES-256-CBC
|
||||||
|
key-direction 1
|
||||||
|
'';
|
||||||
|
updateResolvConf = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable upower service
|
||||||
|
services.upower.enable = true;
|
||||||
|
|
||||||
|
# Set your time zone.
|
||||||
|
time.timeZone = "Europe/Warsaw";
|
||||||
|
|
||||||
|
# Select internationalisation properties.
|
||||||
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
console = {
|
||||||
|
keyMap = "pl";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable niri
|
||||||
|
# programs.niri.enable = true;
|
||||||
|
|
||||||
|
# Enable fish
|
||||||
|
programs.fish.enable = true;
|
||||||
|
|
||||||
|
# Enable greetd with tuigreet
|
||||||
|
services.greetd = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
default_session = {
|
||||||
|
command = "${pkgs.tuigreet}/bin/tuigreet --time --cmd niri-session";
|
||||||
|
user = "greeter";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Essential for niri
|
||||||
|
security.polkit.enable = true;
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
|
# XDG Portal for file pickers or screen sharing
|
||||||
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
extraPortals = [ pkgs.xdg-desktop-portal-gtk
|
||||||
|
pkgs.xdg-desktop-portal-gnome ];
|
||||||
|
config = {
|
||||||
|
common = {
|
||||||
|
default = [ "gtk" ];
|
||||||
|
"org.freedesktop.impl.portal.ScreenCast" = [ "gnome" ];
|
||||||
|
"org.freedesktop.impl.portal.Screenshot" = [ "gnome" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable dconf
|
||||||
|
programs.dconf.enable = true;
|
||||||
|
|
||||||
|
users.users.lusia = {
|
||||||
|
isNormalUser = true;
|
||||||
|
description = "Lukrecja";
|
||||||
|
extraGroups = [ "wheel" "networkmanager" "docker" ];
|
||||||
|
initialPassword = "pass";
|
||||||
|
shell = pkgs.fish;
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.enableAllFirmware = true;
|
||||||
|
services.openssh.enable = true;
|
||||||
|
security.sudo.enable = true;
|
||||||
|
|
||||||
|
# Enable xwayland
|
||||||
|
programs.xwayland.enable = true;
|
||||||
|
|
||||||
|
# Set a session variable for icon theme
|
||||||
|
environment.sessionVariables = rec {
|
||||||
|
QT_QPA_PLATFORMTHEME = "qt5ct";
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
git
|
||||||
|
curl
|
||||||
|
wget
|
||||||
|
vim
|
||||||
|
fish
|
||||||
|
kitty
|
||||||
|
#asusctl
|
||||||
|
powertop # For monitoring power consumption
|
||||||
|
openvpn
|
||||||
|
nodejs
|
||||||
|
gnumake
|
||||||
|
gcc
|
||||||
|
cmake
|
||||||
|
xwayland-satellite
|
||||||
|
busybox
|
||||||
|
libdecor
|
||||||
|
file
|
||||||
|
cifs-utils
|
||||||
|
samba
|
||||||
|
gvfs
|
||||||
|
];
|
||||||
|
|
||||||
|
# Fonts
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-cjk-sans
|
||||||
|
noto-fonts-color-emoji
|
||||||
|
pkgs.nerd-fonts.fira-code
|
||||||
|
];
|
||||||
|
|
||||||
|
# For SMB shares
|
||||||
|
services.gvfs.enable = true;
|
||||||
|
|
||||||
|
# Printers
|
||||||
|
services.avahi = {
|
||||||
|
enable = true;
|
||||||
|
nssmdns4 = true;
|
||||||
|
openFirewall = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.printing = {
|
||||||
|
enable = true;
|
||||||
|
drivers = with pkgs; [
|
||||||
|
cups-filters
|
||||||
|
cups-browsed
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable Flatpaks
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
|
||||||
|
# Enable Docker
|
||||||
|
virtualisation.docker.enable = true;
|
||||||
|
virtualisation.docker.storageDriver = "btrfs";
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
|
||||||
|
# Enable Bluetooth (but it will be blocked by default to save power)
|
||||||
|
hardware.bluetooth.enable = true;
|
||||||
|
hardware.bluetooth.powerOnBoot = false; # Don't power on bluetooth at boot
|
||||||
|
|
||||||
|
# Enable OpenTabletDriver
|
||||||
|
hardware.opentabletdriver.enable = true;
|
||||||
|
hardware.uinput.enable = true;
|
||||||
|
boot.kernelModules = [ "uinput" ];
|
||||||
|
|
||||||
|
# Enable PPD for power options
|
||||||
|
services.power-profiles-daemon.enable = true;
|
||||||
|
|
||||||
|
# Enable AMD GPU graphics acceleration
|
||||||
|
hardware.graphics = {
|
||||||
|
enable = true;
|
||||||
|
enable32Bit = true; # For 32-bit applications/games
|
||||||
|
};
|
||||||
|
|
||||||
|
# Open ports in the firewall.
|
||||||
|
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||||
|
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||||
|
# Or disable the firewall altogether.
|
||||||
|
# networking.firewall.enable = false;
|
||||||
|
|
||||||
|
# Copy the NixOS configuration file and link it from the resulting system
|
||||||
|
# (/run/current-system/configuration.nix). This is useful in case you
|
||||||
|
# accidentally delete configuration.nix.
|
||||||
|
# system.copySystemConfiguration = true;
|
||||||
|
|
||||||
|
# This option defines the first version of NixOS you have installed on this particular machine,
|
||||||
|
# and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
|
||||||
|
#
|
||||||
|
# Most users should NEVER change this value after the initial install, for any reason,
|
||||||
|
# even if you've upgraded your system to a new NixOS release.
|
||||||
|
#
|
||||||
|
# This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
|
||||||
|
# so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
|
||||||
|
# to actually do that.
|
||||||
|
#
|
||||||
|
# This value being lower than the current NixOS release does NOT mean your system is
|
||||||
|
# out of date, out of support, or vulnerable.
|
||||||
|
#
|
||||||
|
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
|
||||||
|
# and migrated your data accordingly.
|
||||||
|
#
|
||||||
|
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
|
||||||
|
system.stateVersion = "24.11"; # Did you read the comment?
|
||||||
|
|
||||||
|
}
|
||||||
61
nixos/flake.lock
generated
Normal file
61
nixos/flake.lock
generated
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765461410,
|
||||||
|
"narHash": "sha256-AVZ1y5tfTGqf5zJx6uY52KHN2pP9gGF9RMQ3meBVKIg=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "7b34e428f31ce52baabda53e52bf14002e1c0625",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "home-manager",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1764950072,
|
||||||
|
"narHash": "sha256-BmPWzogsG2GsXZtlT+MTcAWeDK5hkbGRZTeZNW42fwA=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "f61125a668a320878494449750330ca58b78c557",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1765311797,
|
||||||
|
"narHash": "sha256-mSD5Ob7a+T2RNjvPvOA1dkJHGVrNVl8ZOrAwBjKBDQo=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "09eb77e94fa25202af8f3e81ddc7353d9970ac1b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-25.11",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"home-manager": "home-manager",
|
||||||
|
"nixpkgs": "nixpkgs_2"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
18
nixos/flake.nix
Normal file
18
nixos/flake.nix
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
{
|
||||||
|
description = "NixOS configuration";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = inputs@{ nixpkgs, home-manager, ... }: {
|
||||||
|
nixosConfigurations = {
|
||||||
|
lusia-laptop = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
modules = [
|
||||||
|
./configuration.nix
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
59
nixos/hardware-configuration.nix
Normal file
59
nixos/hardware-configuration.nix
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/f240d6d8-b1e2-418d-96ed-9b9c11ab4ea9";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=@" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
boot.initrd.luks.devices."luksroot".device = "/dev/disk/by-uuid/a5725fbc-c25f-4e29-aa8d-3808b85ee586";
|
||||||
|
|
||||||
|
fileSystems."/home" =
|
||||||
|
{ device = "/dev/disk/by-uuid/f240d6d8-b1e2-418d-96ed-9b9c11ab4ea9";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=@home" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/var/log" =
|
||||||
|
{ device = "/dev/disk/by-uuid/f240d6d8-b1e2-418d-96ed-9b9c11ab4ea9";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=@log" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/532C-C315";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [ "fmask=0022" "dmask=0022" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/swap" =
|
||||||
|
{ device = "/dev/disk/by-uuid/f240d6d8-b1e2-418d-96ed-9b9c11ab4ea9";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=@swap" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
||||||
13
nixos/home.nix
Normal file
13
nixos/home.nix
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home.username = "lusia";
|
||||||
|
home.homeDirectory = "/home/lusia";
|
||||||
|
home.stateVersion = "24.11";
|
||||||
|
|
||||||
|
programs.kitty = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
}
|
||||||
15
noctalia/plugins.json
Normal file
15
noctalia/plugins.json
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"sources": [
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"name": "Official Noctalia Plugins",
|
||||||
|
"url": "https://github.com/noctalia-dev/noctalia-plugins"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"states": {
|
||||||
|
"catwalk": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"version": 1
|
||||||
|
}
|
||||||
477
noctalia/settings.json
Normal file
477
noctalia/settings.json
Normal file
@@ -0,0 +1,477 @@
|
|||||||
|
{
|
||||||
|
"appLauncher": {
|
||||||
|
"customLaunchPrefix": "",
|
||||||
|
"customLaunchPrefixEnabled": false,
|
||||||
|
"enableClipPreview": true,
|
||||||
|
"enableClipboardHistory": false,
|
||||||
|
"pinnedExecs": [
|
||||||
|
],
|
||||||
|
"position": "center",
|
||||||
|
"showCategories": true,
|
||||||
|
"sortByMostUsed": true,
|
||||||
|
"terminalCommand": "kitty -e",
|
||||||
|
"useApp2Unit": false,
|
||||||
|
"viewMode": "list"
|
||||||
|
},
|
||||||
|
"audio": {
|
||||||
|
"cavaFrameRate": 60,
|
||||||
|
"externalMixer": "pwvucontrol || pavucontrol",
|
||||||
|
"mprisBlacklist": [
|
||||||
|
],
|
||||||
|
"preferredPlayer": "",
|
||||||
|
"visualizerQuality": "high",
|
||||||
|
"visualizerType": "linear",
|
||||||
|
"volumeOverdrive": false,
|
||||||
|
"volumeStep": 5
|
||||||
|
},
|
||||||
|
"bar": {
|
||||||
|
"backgroundOpacity": 0,
|
||||||
|
"capsuleOpacity": 1,
|
||||||
|
"density": "default",
|
||||||
|
"exclusive": true,
|
||||||
|
"floating": false,
|
||||||
|
"marginHorizontal": 0.25,
|
||||||
|
"marginVertical": 0.25,
|
||||||
|
"monitors": [
|
||||||
|
],
|
||||||
|
"outerCorners": true,
|
||||||
|
"position": "top",
|
||||||
|
"showCapsule": true,
|
||||||
|
"widgets": {
|
||||||
|
"center": [
|
||||||
|
],
|
||||||
|
"left": [
|
||||||
|
{
|
||||||
|
"diskPath": "/",
|
||||||
|
"id": "SystemMonitor",
|
||||||
|
"showCpuTemp": true,
|
||||||
|
"showCpuUsage": true,
|
||||||
|
"showDiskUsage": false,
|
||||||
|
"showMemoryAsPercent": false,
|
||||||
|
"showMemoryUsage": true,
|
||||||
|
"showNetworkStats": true,
|
||||||
|
"usePrimaryColor": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"hideMode": "hidden",
|
||||||
|
"hideWhenIdle": false,
|
||||||
|
"id": "MediaMini",
|
||||||
|
"maxWidth": 145,
|
||||||
|
"scrollingMode": "hover",
|
||||||
|
"showAlbumArt": false,
|
||||||
|
"showArtistFirst": true,
|
||||||
|
"showProgressRing": true,
|
||||||
|
"showVisualizer": false,
|
||||||
|
"useFixedWidth": false,
|
||||||
|
"visualizerType": "linear"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"right": [
|
||||||
|
{
|
||||||
|
"id": "plugin:catwalk"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"hideMode": "alwaysExpanded",
|
||||||
|
"icon": "heart",
|
||||||
|
"id": "CustomButton",
|
||||||
|
"leftClickExec": "bash /home/lusia/Downloads/sync-colors.sh --random",
|
||||||
|
"leftClickUpdateText": false,
|
||||||
|
"maxTextLength": {
|
||||||
|
"horizontal": 10,
|
||||||
|
"vertical": 10
|
||||||
|
},
|
||||||
|
"middleClickExec": "",
|
||||||
|
"middleClickUpdateText": false,
|
||||||
|
"parseJson": false,
|
||||||
|
"rightClickExec": "bash /home/lusia/Downloads/sync-colors.sh --random --light",
|
||||||
|
"rightClickUpdateText": false,
|
||||||
|
"showIcon": true,
|
||||||
|
"textCollapse": "",
|
||||||
|
"textCommand": "",
|
||||||
|
"textIntervalMs": 3000,
|
||||||
|
"textStream": false,
|
||||||
|
"wheelDownExec": "",
|
||||||
|
"wheelDownUpdateText": false,
|
||||||
|
"wheelExec": "",
|
||||||
|
"wheelMode": "unified",
|
||||||
|
"wheelUpExec": "",
|
||||||
|
"wheelUpUpdateText": false,
|
||||||
|
"wheelUpdateText": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"hideWhenZero": true,
|
||||||
|
"id": "NotificationHistory",
|
||||||
|
"showUnreadBadge": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"deviceNativePath": "",
|
||||||
|
"displayMode": "onhover",
|
||||||
|
"id": "Battery",
|
||||||
|
"showNoctaliaPerformance": false,
|
||||||
|
"showPowerProfiles": false,
|
||||||
|
"warningThreshold": 30
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"displayMode": "onhover",
|
||||||
|
"id": "WiFi"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"displayMode": "onhover",
|
||||||
|
"id": "Bluetooth"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"displayMode": "onhover",
|
||||||
|
"id": "Volume"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"displayMode": "onhover",
|
||||||
|
"id": "Brightness"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"customFont": "",
|
||||||
|
"formatHorizontal": "HH:mm:ss",
|
||||||
|
"formatVertical": "HH mm - dd MM",
|
||||||
|
"id": "Clock",
|
||||||
|
"useCustomFont": false,
|
||||||
|
"usePrimaryColor": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"colorizeDistroLogo": false,
|
||||||
|
"colorizeSystemIcon": "none",
|
||||||
|
"customIconPath": "",
|
||||||
|
"enableColorization": false,
|
||||||
|
"icon": "dots",
|
||||||
|
"id": "ControlCenter",
|
||||||
|
"useDistroLogo": false
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"brightness": {
|
||||||
|
"brightnessStep": 5,
|
||||||
|
"enableDdcSupport": false,
|
||||||
|
"enforceMinimum": true
|
||||||
|
},
|
||||||
|
"calendar": {
|
||||||
|
"cards": [
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "timer-card"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "weather-card"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "calendar-header-card"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "calendar-month-card"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"colorSchemes": {
|
||||||
|
"darkMode": true,
|
||||||
|
"generateTemplatesForPredefined": true,
|
||||||
|
"manualSunrise": "06:30",
|
||||||
|
"manualSunset": "18:30",
|
||||||
|
"matugenSchemeType": "scheme-neutral",
|
||||||
|
"predefinedScheme": "Monochrome",
|
||||||
|
"schedulingMode": "off",
|
||||||
|
"useWallpaperColors": false
|
||||||
|
},
|
||||||
|
"controlCenter": {
|
||||||
|
"cards": [
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "profile-card"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "shortcuts-card"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "audio-card"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "weather-card"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"id": "media-sysmon-card"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"position": "close_to_bar_button",
|
||||||
|
"shortcuts": {
|
||||||
|
"left": [
|
||||||
|
{
|
||||||
|
"id": "WiFi"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "Bluetooth"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ScreenRecorder"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "WallpaperSelector"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"right": [
|
||||||
|
{
|
||||||
|
"id": "Notifications"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "PowerProfile"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "KeepAwake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "NightLight"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dock": {
|
||||||
|
"backgroundOpacity": 1,
|
||||||
|
"colorizeIcons": false,
|
||||||
|
"deadOpacity": 0.6,
|
||||||
|
"displayMode": "always_visible",
|
||||||
|
"enabled": false,
|
||||||
|
"floatingRatio": 1,
|
||||||
|
"inactiveIndicators": false,
|
||||||
|
"monitors": [
|
||||||
|
],
|
||||||
|
"onlySameOutput": true,
|
||||||
|
"pinnedApps": [
|
||||||
|
],
|
||||||
|
"pinnedStatic": false,
|
||||||
|
"size": 1
|
||||||
|
},
|
||||||
|
"general": {
|
||||||
|
"allowPanelsOnScreenWithoutBar": true,
|
||||||
|
"animationDisabled": false,
|
||||||
|
"animationSpeed": 1,
|
||||||
|
"avatarImage": "/home/lusia/Downloads/lusia.jpg",
|
||||||
|
"boxRadiusRatio": 1,
|
||||||
|
"compactLockScreen": true,
|
||||||
|
"dimmerOpacity": 0.6,
|
||||||
|
"enableShadows": true,
|
||||||
|
"forceBlackScreenCorners": true,
|
||||||
|
"iRadiusRatio": 1,
|
||||||
|
"language": "",
|
||||||
|
"lockOnSuspend": true,
|
||||||
|
"radiusRatio": 1,
|
||||||
|
"scaleRatio": 1,
|
||||||
|
"screenRadiusRatio": 1,
|
||||||
|
"shadowDirection": "bottom_right",
|
||||||
|
"shadowOffsetX": 2,
|
||||||
|
"shadowOffsetY": 3,
|
||||||
|
"showHibernateOnLockScreen": false,
|
||||||
|
"showScreenCorners": true
|
||||||
|
},
|
||||||
|
"hooks": {
|
||||||
|
"darkModeChange": "",
|
||||||
|
"enabled": false,
|
||||||
|
"wallpaperChange": ""
|
||||||
|
},
|
||||||
|
"location": {
|
||||||
|
"analogClockInCalendar": false,
|
||||||
|
"firstDayOfWeek": 1,
|
||||||
|
"name": "Poznań",
|
||||||
|
"showCalendarEvents": true,
|
||||||
|
"showCalendarWeather": true,
|
||||||
|
"showWeekNumberInCalendar": false,
|
||||||
|
"use12hourFormat": false,
|
||||||
|
"useFahrenheit": false,
|
||||||
|
"weatherEnabled": true,
|
||||||
|
"weatherShowEffects": true
|
||||||
|
},
|
||||||
|
"network": {
|
||||||
|
"wifiEnabled": true
|
||||||
|
},
|
||||||
|
"nightLight": {
|
||||||
|
"autoSchedule": true,
|
||||||
|
"dayTemp": "6500",
|
||||||
|
"enabled": false,
|
||||||
|
"forced": false,
|
||||||
|
"manualSunrise": "06:30",
|
||||||
|
"manualSunset": "18:30",
|
||||||
|
"nightTemp": "4000"
|
||||||
|
},
|
||||||
|
"notifications": {
|
||||||
|
"backgroundOpacity": 1,
|
||||||
|
"criticalUrgencyDuration": 15,
|
||||||
|
"enableKeyboardLayoutToast": true,
|
||||||
|
"enabled": true,
|
||||||
|
"location": "top_right",
|
||||||
|
"lowUrgencyDuration": 3,
|
||||||
|
"monitors": [
|
||||||
|
],
|
||||||
|
"normalUrgencyDuration": 8,
|
||||||
|
"overlayLayer": true,
|
||||||
|
"respectExpireTimeout": false,
|
||||||
|
"sounds": {
|
||||||
|
"criticalSoundFile": "",
|
||||||
|
"enabled": false,
|
||||||
|
"excludedApps": "discord,firefox,chrome,chromium,edge",
|
||||||
|
"lowSoundFile": "",
|
||||||
|
"normalSoundFile": "",
|
||||||
|
"separateSounds": false,
|
||||||
|
"volume": 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"osd": {
|
||||||
|
"autoHideMs": 2000,
|
||||||
|
"backgroundOpacity": 1,
|
||||||
|
"enabled": true,
|
||||||
|
"enabledTypes": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
],
|
||||||
|
"location": "top_right",
|
||||||
|
"monitors": [
|
||||||
|
],
|
||||||
|
"overlayLayer": true
|
||||||
|
},
|
||||||
|
"screenRecorder": {
|
||||||
|
"audioCodec": "opus",
|
||||||
|
"audioSource": "default_output",
|
||||||
|
"colorRange": "limited",
|
||||||
|
"directory": "/home/lusia/Videos",
|
||||||
|
"frameRate": 60,
|
||||||
|
"quality": "very_high",
|
||||||
|
"showCursor": true,
|
||||||
|
"videoCodec": "h264",
|
||||||
|
"videoSource": "portal"
|
||||||
|
},
|
||||||
|
"sessionMenu": {
|
||||||
|
"countdownDuration": 10000,
|
||||||
|
"enableCountdown": true,
|
||||||
|
"position": "center",
|
||||||
|
"powerOptions": [
|
||||||
|
{
|
||||||
|
"action": "lock",
|
||||||
|
"command": "",
|
||||||
|
"countdownEnabled": true,
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "suspend",
|
||||||
|
"command": "",
|
||||||
|
"countdownEnabled": true,
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "reboot",
|
||||||
|
"command": "",
|
||||||
|
"countdownEnabled": true,
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "logout",
|
||||||
|
"command": "",
|
||||||
|
"countdownEnabled": true,
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "shutdown",
|
||||||
|
"command": "",
|
||||||
|
"countdownEnabled": true,
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "hibernate",
|
||||||
|
"command": "",
|
||||||
|
"countdownEnabled": true,
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"showHeader": true
|
||||||
|
},
|
||||||
|
"settingsVersion": 26,
|
||||||
|
"systemMonitor": {
|
||||||
|
"cpuCriticalThreshold": 90,
|
||||||
|
"cpuPollingInterval": 3000,
|
||||||
|
"cpuWarningThreshold": 80,
|
||||||
|
"criticalColor": "",
|
||||||
|
"diskCriticalThreshold": 90,
|
||||||
|
"diskPollingInterval": 3000,
|
||||||
|
"diskWarningThreshold": 80,
|
||||||
|
"memCriticalThreshold": 90,
|
||||||
|
"memPollingInterval": 3000,
|
||||||
|
"memWarningThreshold": 80,
|
||||||
|
"networkPollingInterval": 3000,
|
||||||
|
"tempCriticalThreshold": 90,
|
||||||
|
"tempPollingInterval": 3000,
|
||||||
|
"tempWarningThreshold": 80,
|
||||||
|
"useCustomColors": false,
|
||||||
|
"warningColor": ""
|
||||||
|
},
|
||||||
|
"templates": {
|
||||||
|
"alacritty": false,
|
||||||
|
"cava": false,
|
||||||
|
"code": false,
|
||||||
|
"discord": false,
|
||||||
|
"emacs": false,
|
||||||
|
"enableUserTemplates": true,
|
||||||
|
"foot": false,
|
||||||
|
"fuzzel": false,
|
||||||
|
"ghostty": false,
|
||||||
|
"gtk": false,
|
||||||
|
"kcolorscheme": false,
|
||||||
|
"kitty": false,
|
||||||
|
"niri": false,
|
||||||
|
"pywalfox": false,
|
||||||
|
"qt": false,
|
||||||
|
"spicetify": false,
|
||||||
|
"telegram": false,
|
||||||
|
"vicinae": false,
|
||||||
|
"walker": false,
|
||||||
|
"wezterm": false
|
||||||
|
},
|
||||||
|
"ui": {
|
||||||
|
"fontDefault": "Roboto",
|
||||||
|
"fontDefaultScale": 1,
|
||||||
|
"fontFixed": "DejaVu Sans Mono",
|
||||||
|
"fontFixedScale": 1,
|
||||||
|
"panelBackgroundOpacity": 1,
|
||||||
|
"panelsAttachedToBar": true,
|
||||||
|
"settingsPanelAttachToBar": false,
|
||||||
|
"tooltipsEnabled": true
|
||||||
|
},
|
||||||
|
"wallpaper": {
|
||||||
|
"directory": "/home/lusia/Pictures/Wallpapers",
|
||||||
|
"enableMultiMonitorDirectories": false,
|
||||||
|
"enabled": false,
|
||||||
|
"fillColor": "#000000",
|
||||||
|
"fillMode": "crop",
|
||||||
|
"hideWallpaperFilenames": false,
|
||||||
|
"monitorDirectories": [
|
||||||
|
],
|
||||||
|
"overviewEnabled": false,
|
||||||
|
"panelPosition": "follow_bar",
|
||||||
|
"randomEnabled": false,
|
||||||
|
"randomIntervalSec": 300,
|
||||||
|
"recursiveSearch": false,
|
||||||
|
"setWallpaperOnAllMonitors": true,
|
||||||
|
"transitionDuration": 1500,
|
||||||
|
"transitionEdgeSmoothness": 0.05,
|
||||||
|
"transitionType": "random",
|
||||||
|
"useWallhaven": false,
|
||||||
|
"wallhavenCategories": "111",
|
||||||
|
"wallhavenOrder": "desc",
|
||||||
|
"wallhavenPurity": "100",
|
||||||
|
"wallhavenQuery": "madoka",
|
||||||
|
"wallhavenResolutionHeight": "",
|
||||||
|
"wallhavenResolutionMode": "atleast",
|
||||||
|
"wallhavenResolutionWidth": "",
|
||||||
|
"wallhavenSorting": "relevance"
|
||||||
|
}
|
||||||
|
}
|
||||||
6
nvim/.stylua.toml
Normal file
6
nvim/.stylua.toml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
column_width = 120
|
||||||
|
line_endings = "Unix"
|
||||||
|
indent_type = "Spaces"
|
||||||
|
indent_width = 2
|
||||||
|
quote_style = "AutoPreferDouble"
|
||||||
|
call_parentheses = "None"
|
||||||
24
nvim/LICENSE
Normal file
24
nvim/LICENSE
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
This is free and unencumbered software released into the public domain.
|
||||||
|
|
||||||
|
Anyone is free to copy, modify, publish, use, compile, sell, or
|
||||||
|
distribute this software, either in source code form or as a compiled
|
||||||
|
binary, for any purpose, commercial or non-commercial, and by any
|
||||||
|
means.
|
||||||
|
|
||||||
|
In jurisdictions that recognize copyright laws, the author or authors
|
||||||
|
of this software dedicate any and all copyright interest in the
|
||||||
|
software to the public domain. We make this dedication for the benefit
|
||||||
|
of the public at large and to the detriment of our heirs and
|
||||||
|
successors. We intend this dedication to be an overt act of
|
||||||
|
relinquishment in perpetuity of all present and future rights to this
|
||||||
|
software under copyright law.
|
||||||
|
|
||||||
|
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 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.
|
||||||
|
|
||||||
|
For more information, please refer to <https://unlicense.org>
|
||||||
9
nvim/README.md
Normal file
9
nvim/README.md
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
**This repo is supposed to be used as config by NvChad users!**
|
||||||
|
|
||||||
|
- The main nvchad repo (NvChad/NvChad) is used as a plugin by this repo.
|
||||||
|
- So you just import its modules , like `require "nvchad.options" , require "nvchad.mappings"`
|
||||||
|
- So you can delete the .git from this repo ( when you clone it locally ) or fork it :)
|
||||||
|
|
||||||
|
# Credits
|
||||||
|
|
||||||
|
1) Lazyvim starter https://github.com/LazyVim/starter as nvchad's starter was inspired by Lazyvim's . It made a lot of things easier!
|
||||||
37
nvim/init.lua
Normal file
37
nvim/init.lua
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
vim.g.base46_cache = vim.fn.stdpath "data" .. "/base46/"
|
||||||
|
vim.g.mapleader = " "
|
||||||
|
|
||||||
|
-- bootstrap lazy and all plugins
|
||||||
|
local lazypath = vim.fn.stdpath "data" .. "/lazy/lazy.nvim"
|
||||||
|
|
||||||
|
if not vim.uv.fs_stat(lazypath) then
|
||||||
|
local repo = "https://github.com/folke/lazy.nvim.git"
|
||||||
|
vim.fn.system { "git", "clone", "--filter=blob:none", repo, "--branch=stable", lazypath }
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
|
||||||
|
local lazy_config = require "configs.lazy"
|
||||||
|
|
||||||
|
-- load plugins
|
||||||
|
require("lazy").setup({
|
||||||
|
{
|
||||||
|
"NvChad/NvChad",
|
||||||
|
lazy = false,
|
||||||
|
branch = "v2.5",
|
||||||
|
import = "nvchad.plugins",
|
||||||
|
},
|
||||||
|
|
||||||
|
{ import = "plugins" },
|
||||||
|
}, lazy_config)
|
||||||
|
|
||||||
|
-- load theme
|
||||||
|
dofile(vim.g.base46_cache .. "defaults")
|
||||||
|
dofile(vim.g.base46_cache .. "statusline")
|
||||||
|
|
||||||
|
require "options"
|
||||||
|
require "autocmds"
|
||||||
|
|
||||||
|
vim.schedule(function()
|
||||||
|
require "mappings"
|
||||||
|
end)
|
||||||
29
nvim/lazy-lock.json
Normal file
29
nvim/lazy-lock.json
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"LuaSnip": { "branch": "master", "commit": "73813308abc2eaeff2bc0d3f2f79270c491be9d7" },
|
||||||
|
"NvChad": { "branch": "v2.5", "commit": "f107fabe11ac8013dc3435ecd5382bee872b1584" },
|
||||||
|
"base46": { "branch": "v3.0", "commit": "db58475d3fd2a16f9b1467d6895e3c4c195ed7dd" },
|
||||||
|
"cmp-async-path": { "branch": "main", "commit": "0ed1492f59e730c366d261a5ad822fa37e44c325" },
|
||||||
|
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||||
|
"cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" },
|
||||||
|
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
|
||||||
|
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||||
|
"conform.nvim": { "branch": "master", "commit": "fbcb4fa7f34bfea9be702ffff481a8e336ebf6ed" },
|
||||||
|
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||||
|
"gitsigns.nvim": { "branch": "main", "commit": "1ee5c1fd068c81f9dd06483e639c2aa4587dc197" },
|
||||||
|
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
|
||||||
|
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||||
|
"mason.nvim": { "branch": "main", "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" },
|
||||||
|
"menu": { "branch": "main", "commit": "7a0a4a2896b715c066cfbe320bdc048091874cc6" },
|
||||||
|
"minty": { "branch": "main", "commit": "aafc9e8e0afe6bf57580858a2849578d8d8db9e0" },
|
||||||
|
"nvim-autopairs": { "branch": "master", "commit": "23320e75953ac82e559c610bec5a90d9c6dfa743" },
|
||||||
|
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
||||||
|
"nvim-lspconfig": { "branch": "master", "commit": "ac98db2f9f06a56498ec890a96928774eae412c3" },
|
||||||
|
"nvim-tree.lua": { "branch": "master", "commit": "e397756d2a79d74314ea4cd3efc41300e91c0ff0" },
|
||||||
|
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||||
|
"nvim-web-devicons": { "branch": "master", "commit": "b8221e42cf7287c4dcde81f232f58d7b947c210d" },
|
||||||
|
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||||
|
"telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" },
|
||||||
|
"ui": { "branch": "v3.0", "commit": "03b9718140375e7f3f5e4f3e04bc2b6c907440ec" },
|
||||||
|
"volt": { "branch": "main", "commit": "620de1321f275ec9d80028c68d1b88b409c0c8b1" },
|
||||||
|
"which-key.nvim": { "branch": "main", "commit": "b4177e3eaf15fe5eb8357ebac2286d488be1ed00" }
|
||||||
|
}
|
||||||
1
nvim/lua/autocmds.lua
Normal file
1
nvim/lua/autocmds.lua
Normal file
@@ -0,0 +1 @@
|
|||||||
|
require "nvchad.autocmds"
|
||||||
24
nvim/lua/chadrc.lua
Normal file
24
nvim/lua/chadrc.lua
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
-- This file needs to have same structure as nvconfig.lua
|
||||||
|
-- https://github.com/NvChad/ui/blob/v3.0/lua/nvconfig.lua
|
||||||
|
-- Please read that file to know all available options :(
|
||||||
|
|
||||||
|
---@type ChadrcConfig
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
M.base46 = {
|
||||||
|
theme = "pywal",
|
||||||
|
|
||||||
|
-- hl_override = {
|
||||||
|
-- Comment = { italic = true },
|
||||||
|
-- ["@comment"] = { italic = true },
|
||||||
|
-- },
|
||||||
|
}
|
||||||
|
|
||||||
|
-- M.nvdash = { load_on_startup = true }
|
||||||
|
-- M.ui = {
|
||||||
|
-- tabufline = {
|
||||||
|
-- lazyload = false
|
||||||
|
-- }
|
||||||
|
-- }
|
||||||
|
|
||||||
|
return M
|
||||||
16
nvim/lua/configs/conform.lua
Normal file
16
nvim/lua/configs/conform.lua
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
local options = {
|
||||||
|
formatters_by_ft = {
|
||||||
|
lua = { "stylua" },
|
||||||
|
rust = { "rustfmt" },
|
||||||
|
-- css = { "prettier" },
|
||||||
|
-- html = { "prettier" },
|
||||||
|
},
|
||||||
|
|
||||||
|
-- format_on_save = {
|
||||||
|
-- -- These options will be passed to conform.format()
|
||||||
|
-- timeout_ms = 500,
|
||||||
|
-- lsp_fallback = true,
|
||||||
|
-- },
|
||||||
|
}
|
||||||
|
|
||||||
|
return options
|
||||||
47
nvim/lua/configs/lazy.lua
Normal file
47
nvim/lua/configs/lazy.lua
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
return {
|
||||||
|
defaults = { lazy = true },
|
||||||
|
install = { colorscheme = { "nvchad" } },
|
||||||
|
|
||||||
|
ui = {
|
||||||
|
icons = {
|
||||||
|
ft = "",
|
||||||
|
lazy = " ",
|
||||||
|
loaded = "",
|
||||||
|
not_loaded = "",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
performance = {
|
||||||
|
rtp = {
|
||||||
|
disabled_plugins = {
|
||||||
|
"2html_plugin",
|
||||||
|
"tohtml",
|
||||||
|
"getscript",
|
||||||
|
"getscriptPlugin",
|
||||||
|
"gzip",
|
||||||
|
"logipat",
|
||||||
|
"netrw",
|
||||||
|
"netrwPlugin",
|
||||||
|
"netrwSettings",
|
||||||
|
"netrwFileHandlers",
|
||||||
|
"matchit",
|
||||||
|
"tar",
|
||||||
|
"tarPlugin",
|
||||||
|
"rrhelper",
|
||||||
|
"spellfile_plugin",
|
||||||
|
"vimball",
|
||||||
|
"vimballPlugin",
|
||||||
|
"zip",
|
||||||
|
"zipPlugin",
|
||||||
|
"tutor",
|
||||||
|
"rplugin",
|
||||||
|
"syntax",
|
||||||
|
"synmenu",
|
||||||
|
"optwin",
|
||||||
|
"compiler",
|
||||||
|
"bugreport",
|
||||||
|
"ftplugin",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
34
nvim/lua/configs/lspconfig.lua
Normal file
34
nvim/lua/configs/lspconfig.lua
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
require("nvchad.configs.lspconfig").defaults()
|
||||||
|
|
||||||
|
local servers = { "html", "cssls", "rust_analyzer" }
|
||||||
|
vim.lsp.enable(servers)
|
||||||
|
|
||||||
|
-- Configure rust-analyzer with enhanced settings
|
||||||
|
vim.lsp.config.rust_analyzer = {
|
||||||
|
cmd = { "rust-analyzer" },
|
||||||
|
filetypes = { "rust" },
|
||||||
|
root_markers = { "Cargo.toml", "rust-project.json" },
|
||||||
|
settings = {
|
||||||
|
["rust-analyzer"] = {
|
||||||
|
cargo = {
|
||||||
|
allFeatures = true,
|
||||||
|
loadOutDirsFromCheck = true,
|
||||||
|
buildScripts = {
|
||||||
|
enable = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
checkOnSave = true,
|
||||||
|
check = {
|
||||||
|
command = "clippy",
|
||||||
|
},
|
||||||
|
procMacro = {
|
||||||
|
enable = true,
|
||||||
|
},
|
||||||
|
diagnostics = {
|
||||||
|
enable = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
-- read :h vim.lsp.config for changing options of lsp servers
|
||||||
10
nvim/lua/mappings.lua
Normal file
10
nvim/lua/mappings.lua
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
require "nvchad.mappings"
|
||||||
|
|
||||||
|
-- add yours here
|
||||||
|
|
||||||
|
local map = vim.keymap.set
|
||||||
|
|
||||||
|
map("n", ";", ":", { desc = "CMD enter command mode" })
|
||||||
|
map("i", "jk", "<ESC>")
|
||||||
|
|
||||||
|
-- map({ "n", "i", "v" }, "<C-s>", "<cmd> w <cr>")
|
||||||
6
nvim/lua/options.lua
Normal file
6
nvim/lua/options.lua
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
require "nvchad.options"
|
||||||
|
|
||||||
|
-- add yours here!
|
||||||
|
|
||||||
|
-- local o = vim.o
|
||||||
|
-- o.cursorlineopt ='both' -- to enable cursorline!
|
||||||
65
nvim/lua/plugins/init.lua
Normal file
65
nvim/lua/plugins/init.lua
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
return {
|
||||||
|
{
|
||||||
|
"stevearc/conform.nvim",
|
||||||
|
-- event = 'BufWritePre', -- uncomment for format on save
|
||||||
|
opts = require "configs.conform",
|
||||||
|
},
|
||||||
|
|
||||||
|
-- These are some examples, uncomment them if you want to see them work!
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
config = function()
|
||||||
|
require "configs.lspconfig"
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- test new blink
|
||||||
|
-- { import = "nvchad.blink.lazyspec" },
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
opts = {
|
||||||
|
ensure_installed = {
|
||||||
|
"vim", "lua", "vimdoc",
|
||||||
|
"html", "css", "rust", "toml"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-telescope/telescope.nvim",
|
||||||
|
opts = {
|
||||||
|
defaults = {
|
||||||
|
file_ignore_patterns = {}, -- Don't ignore any patterns by default
|
||||||
|
},
|
||||||
|
pickers = {
|
||||||
|
find_files = {
|
||||||
|
hidden = true,
|
||||||
|
no_ignore = true, -- Show files ignored by .gitignore
|
||||||
|
no_ignore_parent = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-tree/nvim-tree.lua",
|
||||||
|
opts = {
|
||||||
|
filters = {
|
||||||
|
dotfiles = false,
|
||||||
|
git_ignored = false, -- Show files ignored by .gitignore
|
||||||
|
},
|
||||||
|
view = {
|
||||||
|
adaptive_size = false,
|
||||||
|
},
|
||||||
|
renderer = {
|
||||||
|
highlight_git = true,
|
||||||
|
icons = {
|
||||||
|
show = {
|
||||||
|
git = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user