Compare commits

..

34 Commits

Author SHA1 Message Date
Sojus07
c3aba30c34 add yt-dlp 2025-04-11 02:30:51 +02:00
Sojus07
160ea2abc7 pepega 2025-04-02 15:16:52 +02:00
Sojus07
4747ba1c58 pepega 2025-04-02 15:01:09 +02:00
Sojus07
a4a76bd91f MonkaS 2025-03-27 22:58:48 +01:00
Sojus07
9999dc3baf add yt-dlp 2025-03-27 22:40:59 +01:00
Sojus07
009edeb259 removed yt-dlp 2025-03-27 22:33:05 +01:00
Sojus07
617119491f Add Adwaita and dconf 2025-03-19 18:27:28 +01:00
Sojus07
76bb9c4d60 DUHHHH 2025-03-16 19:41:33 +01:00
Sojus07
fb10bb05eb Add Chromium setting 2025-03-12 16:59:11 +01:00
Sojus07
bfaf0a1b9c Add Chromium 2025-03-12 13:43:16 +01:00
Sojus07
9c00f3c466 Add package hackrf 2025-03-12 13:39:54 +01:00
Sojus07
5823b2d534 ADD HACKRF and radio.nix 2025-03-12 13:27:36 +01:00
Sojus07
f67ce54e8a YEAH 2025-03-08 23:24:13 +01:00
Sojus07
c6bf052da6 YEAH 2025-03-03 12:46:38 +01:00
Sojus07
a7a9e9fd6a YEAH 2025-03-02 14:55:49 +01:00
Sojus07
89f10fbf63 SKIBIDI TOILET 2025-02-25 22:35:08 +01:00
Sojus07
ec50143a97 SKIBIDI TOILET 2025-02-25 22:33:40 +01:00
Sojus07
68f9f0afb0 SKIBIDI TOILET 2025-02-25 22:10:36 +01:00
Sojus07
eb10424ccf Add DHCPCD 2025-02-25 17:54:49 +01:00
Sojus07
21feb914f0 Add STUFF to hwc.nix 2025-02-25 15:39:49 +01:00
Sojus07
40e02f8ece Disabled Firewall 2025-02-25 15:38:36 +01:00
Sojus07
5834779d2b Enabled Firewall 2025-02-25 14:24:00 +01:00
Sojus07
f1a7bf0b6b kekl 2025-02-23 16:55:41 +01:00
Sojus07
5443a41016 kekl 2025-02-23 14:35:21 +01:00
Sojus07
20ff1d16dd kekl 2025-02-20 02:22:28 +01:00
Sojus07
3c0a5834b0 kekl 2025-02-18 23:39:33 +01:00
Sojus07
42130edad6 kekl 2025-02-18 23:30:47 +01:00
Sojus07
510f3b41db kekl 2025-02-18 22:13:01 +01:00
Sojus07
2c8b799325 kekl 2025-02-18 22:10:07 +01:00
Sojus07
a68b5786e5 kekl 2025-02-18 22:07:53 +01:00
Sojus07
4da8df94ac kekl 2025-02-18 22:01:49 +01:00
Sojus07
3e2891be28 kekl 2025-02-10 22:26:51 +01:00
Sojus07
7fe306b681 PogChamp 2025-02-10 22:23:32 +01:00
Sojus07
30a2d59adf PogChamp 2025-02-10 13:23:38 +01:00
42 changed files with 325 additions and 2620 deletions

2100
flake.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -14,10 +14,10 @@
home-manager, home-manager,
nvf, nvf,
}: { }: {
nixosConfigurations.default = nixpkgs.lib.nixosSystem { nixosConfigurations.sputnik = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ modules = [
./hosts/computer/configuration.nix ./hosts/sputnik/configuration.nix
nvf.nixosModules.default nvf.nixosModules.default
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {
@ -30,10 +30,10 @@
]; ];
}; };
nixosConfigurations.laptop = nixpkgs.lib.nixosSystem { nixosConfigurations.meteor = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ modules = [
./hosts/laptop/configuration.nix ./hosts/meteor/configuration.nix
nvf.nixosModules.default nvf.nixosModules.default
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {

View File

@ -1,18 +0,0 @@
{ config, pkgs, ... }:
{
networking = {
hostName = "poggers";
networkmanager.enable = true;
firewall = {
enable = true;
allowedTCPPorts = [
80
1337
8080
3000
8000
];
};
};
}

View File

@ -1,123 +0,0 @@
{ config, pkgs, ... }:
{
environment.systemPackages = with pkgs; [
# System utilities
unzip
yt-dlp
inetutils
git
wget
curl
dosfstools
ntfs3g
usbutils
alsa-utils
pavucontrol
flameshot
feh
gnumake
tree
gdb
vscode
neovide
# Command-line utilities
neofetch
fastfetch
onefetch
vim
weechat
ranger
eza
fzf
htop
btop
jq
# Development & compilers
rustup
python3
python312Packages.pip
nodejs
gccgo14
go
dotnet-sdk
bear
# Android development
android-tools
android-udev-rules
android-studio-tools
# Windows compatibility
wine
winetricks
# Embedded & hardware development
espup
esphome
esptool
espflash
minicom
pulseview
cp210x-program
arduino-ide
arduino-cli
flashrom
binwalk
chirp
picocom
pwndbg
minipro
ethtool
# Language servers (LSPs)
nixd
arduino-language-server
# Libraries
python312Packages.pyserial
python312Packages.meshtastic
# Virtualization
qemu
# Software Defined Radio (SDR)
noaa-apt
wsjtx
qsstv
gpredict
sdrangel
sdrpp
gnuradio
cubicsdr
gqrx
multimon-ng
# Miscellaneous
cava
vesktop
pacman
wf-recorder
qbittorrent
];
fonts = {
fontconfig.enable = true;
packages = with pkgs; [
terminus-nerdfont
noto-fonts
noto-fonts-emoji
liberation_ttf
fira-code
fira-code-symbols
fantasque-sans-mono
mplus-outline-fonts.githubRelease
dina-font
proggyfonts
pkgs.nerd-fonts._0xproto
pkgs.nerd-fonts.droid-sans-mono
];
};
}

View File

@ -3,5 +3,6 @@
imports = [ imports = [
./windowManager/dwm/default.nix ./windowManager/dwm/default.nix
./editors/nvim/default.nix ./editors/nvim/default.nix
./system/default.nix
]; ];
} }

View File

@ -72,6 +72,7 @@
}; };
}; };
lsp = { lsp = {
lspkind.enable = true;
trouble = { trouble = {
enable = true; enable = true;
}; };

View File

@ -1,59 +1,77 @@
local cmp = require("cmp") local cmp = require("cmp")
local lspkind = require("lspkind")
vim.opt.completeopt = { "menu", "menuone", "noinsert", "noselect" } vim.opt.completeopt = { "menu", "menuone", "noinsert", "noselect" }
cmp.setup({ cmp.setup({
snippet = { formatting = {
expand = function(args) format = function(entry, vim_item)
require('luasnip').lsp_expand(args.body) vim_item.menu = ({
end, nvim_lsp = "[LSP]",
}, buffer = "[BUF]",
sorting = { path = "[PATH]",
comparators = { luasnip = "[SNIP]",
cmp.config.compare.offset, nvim_lua = "[LUA]",
cmp.config.compare.exact, })[entry.source.name]
cmp.config.compare.recently_used,
cmp.config.compare.kind,
cmp.config.compare.sort_text,
cmp.config.compare.length,
cmp.config.compare.order,
},
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
mapping = cmp.mapping.preset.insert({
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback) vim_item.kind = lspkind.symbolic(vim_item.kind, { mode = "symbol" })
if cmp.visible() then return vim_item
cmp.select_prev_item() end,
else },
fallback() sorting = {
end comparators = {
end, { "i", "s" }), cmp.config.compare.offset,
cmp.config.compare.exact,
["<C-b>"] = cmp.mapping.scroll_docs(-4), cmp.config.compare.recently_used,
["<C-f>"] = cmp.mapping.scroll_docs(4), cmp.config.compare.kind,
["<C-Space>"] = cmp.mapping.complete(), cmp.config.compare.sort_text,
["<C-e>"] = cmp.mapping.abort(), cmp.config.compare.length,
["<C-Left>"] = cmp.mapping.abort(), cmp.config.compare.order,
["<CR>"] = cmp.mapping.confirm({ select = false }),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'luasnip' },
{ name = 'buffer' },
{ name = 'path' },
{ name = 'nvim_lua' },
{ name = 'emoji' },
}),
highlight = {
default = "Subtle"
}, },
},
window = {
completion = {
autocomplete = true,
col_offset = -3,
side_padding = 0,
},
completion = cmp.config.window.bordered({
winhighlight = "Normal:Pmenu,FloatBorder:Pmenu,CursorLine:PmenuSel,Search:None",
}),
documentation = cmp.config.window.bordered({
winhighlight = "Normal:Pmenu,FloatBorder:Pmenu,CursorLine:PmenuSel,Search:None",
}),
},
mapping = cmp.mapping.preset.insert({
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
else
fallback()
end
end, { "i", "s" }),
["<C-b>"] = cmp.mapping.scroll_docs(-4),
["<C-f>"] = cmp.mapping.scroll_docs(4),
["<C-Space>"] = cmp.mapping.complete(),
["<C-e>"] = cmp.mapping.abort(),
["<C-Left>"] = cmp.mapping.abort(),
["<CR>"] = cmp.mapping.confirm({ select = false }),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'luasnip' },
{ name = 'buffer' },
{ name = 'path' },
{ name = 'nvim_lua' },
}),
}) })

View File

@ -1,11 +1,11 @@
vim.opt.shiftwidth = 4 vim.opt.shiftwidth = 2
vim.opt.tabstop = 4 vim.opt.tabstop = 2
vim.opt.cursorline = true vim.opt.cursorline = true
vim.opt.cursorcolumn = true vim.opt.cursorcolumn = true
vim.opt.expandtab = true vim.opt.expandtab = true
vim.opt.autoindent = true vim.opt.autoindent = true
vim.opt.smartindent = true vim.opt.smartindent = true
vim.opt.softtabstop = 4 vim.opt.softtabstop = 2
vim.opt.relativenumber = true vim.opt.relativenumber = true
vim.diagnostic.config({ vim.diagnostic.config({

View File

@ -5,6 +5,7 @@
}: { }: {
imports = [ imports = [
./nix ./nix
./../windowManager/sway/default.nix
]; ];
home = { home = {
enableNixpkgsReleaseCheck = false; enableNixpkgsReleaseCheck = false;
@ -23,8 +24,11 @@
".wp/wolf.png".source = ./raw/wp/wolf.png; ".wp/wolf.png".source = ./raw/wp/wolf.png;
".wp/nixos_dark.png".source = ./raw/wp/nixos_dark.png; ".wp/nixos_dark.png".source = ./raw/wp/nixos_dark.png;
".wp/GABE_Windows.png".source = ./raw/wp/GABE_Windows.png; ".wp/GABE_Windows.png".source = ./raw/wp/GABE_Windows.png;
".wp/skulls.png".source = ./raw/wp/skulls.png;
".wp/soyuz.png".source = ./raw/wp/soyuz.png; ".wp/soyuz.png".source = ./raw/wp/soyuz.png;
".wp/bridge.png".source = ./raw/wp/bridge.png;
".wp/skulls.png".source = ./raw/wp/skulls.png;
".wp/purple_plants.png".source = ./raw/wp/purple_plants.png;
".wp/black_hole.png".source = ./raw/wp/black_hole.png;
}; };
}; };
} }

View File

@ -1,7 +1,6 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
imports = [ imports = [
../../windowManager/sway/default.nix
./alacritty.nix ./alacritty.nix
./shell.nix ./shell.nix
./git.nix ./git.nix

View File

@ -14,14 +14,12 @@
type "pipewire" type "pipewire"
name "Pipewire Output" name "Pipewire Output"
} }
audio_output { audio_output {
type "fifo" type "fifo"
name "Visualizer feed" name "Visualizer feed"
path "/tmp/mpd.fifo" path "/tmp/mpd.fifo"
format "44100:16:2" format "44100:16:2"
} }
''; '';
}; };
}; };
@ -29,32 +27,58 @@
programs = { programs = {
ncmpcpp = { ncmpcpp = {
enable = true; enable = true;
package = pkgs.ncmpcpp.override { visualizerSupport = true; };
mpdMusicDir = "/home/fabian/.music"; mpdMusicDir = "/home/fabian/.music";
bindings = [
];
settings = { settings = {
ncmpcpp_directory = "~/.ncmpcpp";
mpd_host = "localhost";
mpd_port = 6600; mpd_port = 6600;
header_window_color = "cyan"; mpd_crossfade_time = 2;
progressbar_look = ""; mouse_support = "yes";
visualizer_color = "cyan";
visualizer_look = "";
now_playing_prefix = "󰮯 ";
visualizer_type = "wave";
song_status_format = " $2%a $4$3 $8%t $4$3 $5%b ";
autocenter_mode = "yes";
centered_cursor = "yes";
display_bitrate = "no";
enable_window_title = "no";
follow_now_playing_lyrics = "yes";
ignore_leading_the = "yes";
empty_tag_marker = "";
visualizer_data_source = "/tmp/mpd.fifo"; visualizer_data_source = "/tmp/mpd.fifo";
visualizer_output_name = "my_fifo"; visualizer_output_name = "my_fifo";
header_visibility = false; visualizer_in_stereo = "no";
statusbar_visibility = true; visualizer_type = "spectrum";
titles_visibility = true; visualizer_look = "";
visualizer_color = "7, 5, 4, 3";
startup_screen = "browser";
startup_slave_screen = "visualizer";
playlist_disable_highlight_delay = "1";
now_playing_prefix = "$8$b ";
song_list_format = "{$2%a$9} $1|$9 {$5%t$9} $R {$6%b$9} $1|$9 {$2%l$9}";
song_library_format = "{%n - }{%t}|{%f}";
song_status_format = "$b{$6%a$9 $1|$9} {$7%t$9} $1|$9 {$2%b$9} $1|$9 {$6%y$9} $1|$9";
song_window_title_format = "{%a-%t}";
song_columns_list_format = "(6)[magenta]{l} (30)[red]{a} (30)[blue]{b} (53)[magenta]{t}";
playlist_display_mode = "classic";
titles_visibility = "no";
browser_display_mode = "columns";
incremental_seeking = "yes";
autocenter_mode = "yes";
header_visibility = "no";
statusbar_visibility = "yes";
cyclic_scrolling = "yes";
display_bitrate = "yes";
ignore_leading_the = "yes";
enable_window_title = "yes";
progressbar_look = ":: ";
user_interface = "alternative";
alternative_header_first_line_format = "{$b$2%a$9} $1|$9 {$5%t$9}";
alternative_header_second_line_format = "{$6%b$9} $1|$9 {$2(%y)$9}";
alternative_ui_separator_color = "black";
playlist_separate_albums = "no";
colors_enabled = "yes";
empty_tag_color = "blue";
header_window_color = "black";
volume_color = "black";
display_volume_level = "yes";
state_line_color = "cyan";
state_flags_color = "red";
main_window_color = "blue";
color1 = "white";
color2 = "blue";
progressbar_color = "black";
statusbar_color = "black";
window_border_color = "red";
active_window_border = "red";
}; };
}; };
}; };

View File

@ -24,8 +24,7 @@
cp = "cp -rv"; cp = "cp -rv";
mv = "mv -v"; mv = "mv -v";
mkdir = "mkdir -pv"; mkdir = "mkdir -pv";
update-default = "sudo nixos-rebuild switch --flake /etc/nixos#default --impure"; update = "sudo nixos-rebuild switch --flake /etc/nixos --impure";
update-laptop = "sudo nixos-rebuild switch --flake /etc/nixos#laptop --impure";
}; };
plugins = [ plugins = [
{ {
@ -46,39 +45,5 @@
} }
]; ];
}; };
bash = {
enable = false;
enableCompletion = true;
sessionVariables = {
DEVKITPRO = "/opt/devkitpro";
DEVKITPPC = "/opt/devkitpro/devkitPPC";
DEVKITA64 = "/opt/devkitpro/devkitA64";
DEVKITARM = "/opt/devkitpro/devkitARM";
PATH = "/opt/devkitpro/tools/bin:$PATH";
};
shellAliases = {
http = "python3 -m http.server";
rm = "rm $@ -v -I";
ls = "${pkgs.eza}/bin/eza -l --icons";
cp = "cp -rv";
mv = "mv -v";
mkdir = "mkdir -pv";
update = "doas nixos-rebuild switch";
};
shellOptions = [
"histappend"
"checkwinsize"
"extglob"
"globstar"
"checkjobs"
];
initExtra = ''
PS1="(\u) % "
eval "$(fzf --bash)"
complete -cf doas
'';
};
}; };
} }

View File

@ -3,16 +3,13 @@
programs = { programs = {
tmux = { tmux = {
enable = true; enable = true;
plugins = with pkgs; [
tmuxPlugins.net-speed
tmuxPlugins.cpu
tmuxPlugins.battery
tmuxPlugins.gruvbox
];
disableConfirmationPrompt = true; disableConfirmationPrompt = true;
mouse = true; mouse = true;
keyMode = "vi"; keyMode = "vi";
extraConfig = '' extraConfig = ''
if "test ! -d ~/.tmux/plugins/tpm" \
"run 'git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm && ~/.tmux/plugins/tpm/bin/install_plugins'"
unbind C-b unbind C-b
set-option -g prefix C-a set-option -g prefix C-a
bind-key C-a send-prefix bind-key C-a send-prefix
@ -30,24 +27,45 @@
bind -n M-Up select-pane -U bind -n M-Up select-pane -U
bind -n M-Down select-pane -D bind -n M-Down select-pane -D
#setw -g window-status-current-format "[ #W ]" set -g status-left-length 100
#setw -g window-status-format "#W"
set-option -s status-interval 1
set -g status-right-length 100 set -g status-right-length 100
set -g @net_speed_interfaces "wg0-mullvad"
set -g @download_speed_format "%1s"
set -g @upload_speed_format "%1s"
set -g @net_speed_format "D:%1s U:%1s"
set -g status-right '#{battery_icon} #{battery_percentage} [󰈀 #{net_speed}] [ #{cpu_percentage}] [ %H:%M] '
run-shell ${pkgs.tmuxPlugins.net-speed}/share/tmux-plugins/net-speed/net_speed.tmux
run-shell ${pkgs.tmuxPlugins.cpu}/share/tmux-plugins/cpu/cpu.tmux
run-shell ${pkgs.tmuxPlugins.battery}/share/tmux-plugins/battery/battery.tmux
set -g status-position top set -g status-position top
#set-option -g status-style bg=default
### NOVA ###
set -g @plugin 'o0th/tmux-nova'
set -g @nova-nerdfonts true
set -g @nova-pane-active-border-style "#44475a"
set -g @nova-pane-border-style "#282a36"
set -g @nova-status-style-bg "#121212"
set -g @nova-status-style-fg "#d8dee9"
set -g @nova-status-style-active-bg "#af87ff"
set -g @nova-status-style-active-fg "#121212"
set -g @nova-status-style-double-bg "#2d3540"
set -g @nova-pane "#I#{?pane_in_mode, #{pane_mode},} #W"
set -g @nova-segment-mode "#{?client_prefix,Ω,ω}"
set -g @nova-segment-mode-colors "#af87ff #121212"
set -g @nova-segment-whoami "#(whoami)@#h"
set -g @nova-segment-whoami-colors "#af87ff #121212"
set -g @nova-segment-date " %H:%M:%S"
set -g @nova-segment-date-colors "#87afff #121212"
set -g @nova-rows 0
set -g @nova-segments-0-left "mode"
set -g @nova-segments-0-right "date whoami "
### END ###
run-shell ~/.tmux/plugins/tmux-nova/nova.tmux
run '~/.tmux/plugins/tpm/tpm'
''; '';
}; };
}; };

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 MiB

View File

@ -1,17 +0,0 @@
[options]
HoldPkg = pacman glibc
Architecture = auto
UseSyslog
Color
ILoveCandy
CheckSpace
VerbosePkgLists
ParallelDownloads = 5
SigLevel = Never
LocalFileSigLevel = Optional
[dkp-libs]
Server = https://pkg.devkitpro.org/packages
[dkp-linux]
Server = https://pkg.devkitpro.org/packages/linux/$arch/

View File

@ -0,0 +1,17 @@
{ config, pkgs, ... }:
{
environment.systemPackages = with pkgs; [
chromium
];
programs.chromium = {
enable = true;
extensions = [
"eimadpbcbfnmbkopoojfekhnkhdbieeh" # Dark Reader
];
extraOpts = {
"BrowserSignin" = 0;
"SyncDisabled" = true;
"PasswordManagerEnabled" = false;
};
};
}

View File

@ -4,8 +4,6 @@
... ...
}: { }: {
imports = [ imports = [
./nvim/default.nix
./networking.nix ./networking.nix
./users.nix ./users.nix
./services.nix ./services.nix
@ -16,5 +14,7 @@
./virt.nix ./virt.nix
./boot.nix ./boot.nix
./hw.nix ./hw.nix
./radio.nix
./chromium.nix
]; ];
} }

View File

@ -1,5 +1,9 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
environment.systemPackages = with pkgs; [
hackrf
];
hardware = { hardware = {
bluetooth = { bluetooth = {
enable = true; enable = true;
@ -7,9 +11,5 @@
graphics = { graphics = {
enable = true; enable = true;
}; };
rtl-sdr = {
enable = true;
};
}; };
} }

View File

@ -1,13 +1,24 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
environment.systemPackages = with pkgs; [
iperf3
speedtest-cli
dhcpcd
];
services = {
iperf3 = {
enable = true;
};
};
networking = { networking = {
hostName = "poggers";
networkmanager.enable = true; networkmanager.enable = true;
firewall = { firewall = {
enable = true; enable = false;
allowedTCPPorts = [ allowedTCPPorts = [
80 80
1337 1337
5001
8080 8080
3000 3000
8000 8000

View File

@ -3,7 +3,6 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# System utilities # System utilities
unzip unzip
yt-dlp
inetutils inetutils
git git
wget wget
@ -33,6 +32,7 @@
htop htop
btop btop
jq jq
ffmpeg
# Development & compilers # Development & compilers
rustup rustup
@ -67,7 +67,6 @@
binwalk binwalk
chirp chirp
picocom picocom
pwndbg
minipro minipro
ethtool ethtool
@ -93,6 +92,7 @@
cubicsdr cubicsdr
gqrx gqrx
multimon-ng multimon-ng
stellarium
# Miscellaneous # Miscellaneous
cava cava
@ -100,12 +100,14 @@
pacman pacman
wf-recorder wf-recorder
qbittorrent qbittorrent
superTuxKart
adwaita-icon-theme
]; ];
fonts = { fonts = {
fontconfig.enable = true; fontconfig.enable = true;
packages = with pkgs; [ packages = with pkgs; [
noto-fonts noto-fonts
noto-fonts-emoji noto-fonts-emoji
liberation_ttf liberation_ttf

View File

@ -1,15 +1,11 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
hardware = { hardware = {
bluetooth = {
enable = true;
};
graphics = {
enable = true;
};
rtl-sdr = { rtl-sdr = {
enable = true; enable = true;
}; };
hackrf = {
enable = true;
};
}; };
} }

View File

@ -1,17 +0,0 @@
{ config, pkgs, ... }:
{
boot = {
loader = {
systemd-boot = {
enable = true;
extraEntries = {
"mint.conf" = ''
title Linux Mint
efi /EFI/ubuntu/shimx64.efi
'';
};
};
};
supportedFilesystems = [ "ntfs" ];
};
}

View File

@ -1,20 +0,0 @@
{
config,
pkgs,
...
}: {
imports = [
../../../../default/windowManager/dwm/default.nix
../../../../default/editors/nvim/default.nix
./networking.nix
./users.nix
./services.nix
./firefox.nix
./pkgs.nix
./sec.nix
./virt.nix
./boot.nix
./hw.nix
./fingerprint.nix
];
}

View File

@ -1,6 +0,0 @@
{ config, pkgs, ... }:
{
services.fprintd = {
enable = true;
};
}

View File

@ -1,78 +0,0 @@
{ config, pkgs, ... }:
let
lock-false = {
Value = false;
Status = "locked";
};
lock-true = {
Value = true;
Status = "locked";
};
in
{
programs = {
firefox = {
enable = true;
languagePacks = [ "en-US" ];
policies = {
DisableTelemetry = true;
DisableFirefoxStudies = true;
EnableTrackingProtection = {
Value = true;
Locked = true;
Cryptomining = true;
Fingerprinting = true;
};
DisablePocket = true;
DisableFirefoxAccounts = true;
DisableAccounts = true;
DisableFirefoxScreenshots = true;
OverrideFirstRunPage = "";
OverridePostUpdatePage = "";
DontCheckDefaultBrowser = true;
DisplayBookmarksToolbar = "newtab";
DisplayMenuBar = "default-off";
SearchBar = "unified";
ExtensionSettings = {
"uBlock0@raymondhill.net" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
installation_mode = "force_installed";
};
"78272b6fa58f4a1abaac99321d503a20@proton.me" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/proton-pass/latest.xpi";
installation_mode = "force_installed";
};
"addon@darkreader.org" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/darkreader/latest.xpi";
installation_mode = "force_installed";
};
"{f5bcc922-5c09-4ba5-9611-d7931812785c}" = {
install_url = "https://addons.mozilla.org/firefox/downloads/file/4354513/oxocarbon-1.0.xpi";
installation_mode = "force_installed";
};
};
};
preferences = {
"browser.contentblocking.category" = true;
"extensions.pocket.enabled" = false;
"extensions.screenshots.disabled" = true;
"browser.topsites.contile.enabled" = false;
"browser.formfill.enable" = false;
"browser.search.suggest.enabled" = false;
"browser.search.suggest.enabled.private" = false;
"browser.urlbar.suggest.searches" = false;
"browser.urlbar.showSearchSuggestionsFirst" = false;
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
"browser.newtabpage.activity-stream.feeds.snippets" = false;
"browser.newtabpage.activity-stream.section.highlights.includePocket" = false;
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false;
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false;
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = false;
"browser.newtabpage.activity-stream.showSponsored" = false;
"browser.newtabpage.activity-stream.system.showSponsored" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
};
};
};
}

View File

@ -1,25 +0,0 @@
{ config, pkgs, ... }:
{
security = {
rtkit = {
enable = true;
};
polkit = {
enable = true;
};
doas = {
enable = true;
extraRules = [
{
users = [ "fabian" ];
noPass = true;
keepEnv = true;
}
];
};
};
environment.systemPackages = with pkgs; [
polkit
polkit_gnome
];
}

View File

@ -1,20 +0,0 @@
{ config, pkgs, ... }:
{
services = {
libinput = {
enable = true;
};
pipewire = {
enable = true;
pulse.enable = true;
wireplumber.enable = true;
};
mullvad-vpn = {
enable = true;
package = pkgs.mullvad-vpn;
};
sdrplayApi = {
enable = true;
};
};
}

View File

@ -1,25 +0,0 @@
{ config, pkgs, ... }:
{
users = {
defaultUserShell = pkgs.fish;
users = {
fabian = {
useDefaultShell = true;
shell = pkgs.fish;
isNormalUser = true;
initialPassword = "1601";
extraGroups = [
"wheel"
"docker"
"audio"
"video"
"dialout"
"plugdev"
"adbusers"
"kvm"
"dialout"
];
};
};
};
}

View File

@ -1,9 +0,0 @@
{ config, pkgs, ... }:
{
virtualisation = {
docker = {
enable = true;
};
};
}

View File

@ -5,9 +5,11 @@
... ...
}: }:
{ {
networking.hostName = "meteor";
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
./modules/default.nix ../default/default.nix
]; ];
nixpkgs = { nixpkgs = {
@ -58,9 +60,25 @@
environment.etc = { environment.etc = {
"makepkg.conf".source = "${pkgs.pacman}/etc/makepkg.conf"; "makepkg.conf".source = "${pkgs.pacman}/etc/makepkg.conf";
"pacman.conf".source = ../default/raw/pacman.conf; "pacman.conf".text = ''
[options]
HoldPkg = pacman glibc
UseSyslog
Color
ILoveCandy
CheckSpace
VerbosePkgLists
ParallelDownloads = 5
SigLevel = Never
[dkp-libs]
Server = https://pkg.devkitpro.org/packages
[dkp-linux]
Server = https://pkg.devkitpro.org/packages/linux/x86_64/
'';
}; };
system.stateVersion = "unstable"; system.stateVersion = "25.05";
} }

View File

@ -0,0 +1,38 @@
# 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 = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-label/NIXROOT";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-label/ESP";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
};
fileSystems."/media/STUFF" =
{ device = "/dev/disk/by-label/STUFF";
fsType = "ext4";
};
swapDevices = [ ];
networking.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -5,9 +5,11 @@
... ...
}: }:
{ {
networking.hostName = "sputnik";
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
./modules/default.nix ../default/default.nix
]; ];
nixpkgs = { nixpkgs = {
@ -48,13 +50,33 @@
programs = { programs = {
nix-ld.enable = true; nix-ld.enable = true;
fish.enable = true; fish.enable = true;
dconf = {
enable = true;
};
}; };
environment.etc = { environment.etc = {
"makepkg.conf".source = "${pkgs.pacman}/etc/makepkg.conf"; "makepkg.conf".source = "${pkgs.pacman}/etc/makepkg.conf";
"pacman.conf".source = ../default/raw/pacman.conf; "pacman.conf".text = ''
[options]
HoldPkg = pacman glibc
UseSyslog
Color
ILoveCandy
CheckSpace
VerbosePkgLists
ParallelDownloads = 5
SigLevel = Never
[dkp-libs]
Server = https://pkg.devkitpro.org/packages
[dkp-linux]
Server = https://pkg.devkitpro.org/packages/linux/x86_64/
'';
}; };
system.stateVersion = "unstable"; system.stateVersion = "25.05";
} }

View File

@ -8,21 +8,25 @@
[ (modulesPath + "/installer/scan/not-detected.nix") [ (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ]; boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = fileSystems."/" =
{ device = "/dev/disk/by-uuid/76e9b32a-249f-4827-ad98-9bc467952cfd"; { device = "/dev/disk/by-label/NIXROOT";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/2A44-4B06"; { device = "/dev/disk/by-uuid/9AA3-DC16";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ]; options = [ "fmask=0022" "dmask=0022" ];
}; };
fileSystems."/media/STUFF" =
{ device = "/dev/disk/by-label/STUFF";
fsType = "ext4";
};
swapDevices = [ ]; swapDevices = [ ];
@ -31,9 +35,10 @@
# still possible to use this option, but it's recommended to use it in conjunction # 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`. # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true; networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true; # networking.interfaces.enp2s0f0u1.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true; # networking.interfaces.enp6s0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp5s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
} }