changes
This commit is contained in:
parent
4e452106cc
commit
74e4e7d6f8
47 changed files with 1151 additions and 757 deletions
3
.idea/.gitignore
vendored
Normal file
3
.idea/.gitignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# Default ignored files
|
||||||
|
/shelf/
|
||||||
|
/workspace.xml
|
10
.idea/codeStyles/Project.xml
Normal file
10
.idea/codeStyles/Project.xml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
<component name="ProjectCodeStyleConfiguration">
|
||||||
|
<code_scheme name="Project" version="173">
|
||||||
|
<option name="OTHER_INDENT_OPTIONS">
|
||||||
|
<value>
|
||||||
|
<option name="INDENT_SIZE" value="2" />
|
||||||
|
<option name="TAB_SIZE" value="2" />
|
||||||
|
</value>
|
||||||
|
</option>
|
||||||
|
</code_scheme>
|
||||||
|
</component>
|
5
.idea/codeStyles/codeStyleConfig.xml
Normal file
5
.idea/codeStyles/codeStyleConfig.xml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<component name="ProjectCodeStyleConfiguration">
|
||||||
|
<state>
|
||||||
|
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
|
||||||
|
</state>
|
||||||
|
</component>
|
36
.idea/inspectionProfiles/Project_Default.xml
Normal file
36
.idea/inspectionProfiles/Project_Default.xml
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
<component name="InspectionProjectProfileManager">
|
||||||
|
<profile version="1.0">
|
||||||
|
<option name="myName" value="Project Default" />
|
||||||
|
<inspection_tool class="GrazieInspection" enabled="false" level="GRAMMAR_ERROR" enabled_by_default="false" />
|
||||||
|
<inspection_tool class="HtmlUnknownAttribute" enabled="true" level="WARNING" enabled_by_default="true">
|
||||||
|
<option name="myValues">
|
||||||
|
<value>
|
||||||
|
<list size="1">
|
||||||
|
<item index="0" class="java.lang.String" itemvalue="href" />
|
||||||
|
</list>
|
||||||
|
</value>
|
||||||
|
</option>
|
||||||
|
<option name="myCustomValuesEnabled" value="true" />
|
||||||
|
</inspection_tool>
|
||||||
|
<inspection_tool class="LanguageDetectionInspection" enabled="false" level="WARNING" enabled_by_default="false" />
|
||||||
|
<inspection_tool class="PyBroadExceptionInspection" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
|
||||||
|
<inspection_tool class="PyPackageRequirementsInspection" enabled="true" level="WARNING" enabled_by_default="true">
|
||||||
|
<option name="ignoredPackages">
|
||||||
|
<value>
|
||||||
|
<list size="2">
|
||||||
|
<item index="0" class="java.lang.String" itemvalue="pygame" />
|
||||||
|
<item index="1" class="java.lang.String" itemvalue="pyrex" />
|
||||||
|
</list>
|
||||||
|
</value>
|
||||||
|
</option>
|
||||||
|
</inspection_tool>
|
||||||
|
<inspection_tool class="PyPep8Inspection" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
|
||||||
|
<inspection_tool class="PyPep8NamingInspection" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
|
||||||
|
<inspection_tool class="PyShadowingBuiltinsInspection" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
|
||||||
|
<inspection_tool class="SpellCheckingInspection" enabled="false" level="TYPO" enabled_by_default="false">
|
||||||
|
<option name="processCode" value="true" />
|
||||||
|
<option name="processLiterals" value="true" />
|
||||||
|
<option name="processComments" value="true" />
|
||||||
|
</inspection_tool>
|
||||||
|
</profile>
|
||||||
|
</component>
|
6
.idea/inspectionProfiles/profiles_settings.xml
Normal file
6
.idea/inspectionProfiles/profiles_settings.xml
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<component name="InspectionProjectProfileManager">
|
||||||
|
<settings>
|
||||||
|
<option name="USE_PROJECT_PROFILE" value="false" />
|
||||||
|
<version value="1.0" />
|
||||||
|
</settings>
|
||||||
|
</component>
|
7
.idea/misc.xml
Normal file
7
.idea/misc.xml
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="Black">
|
||||||
|
<option name="sdkName" value="Python 3.12 (django_projektwlasny)" />
|
||||||
|
</component>
|
||||||
|
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.12 (django_projektwlasny)" project-jdk-type="Python SDK" />
|
||||||
|
</project>
|
8
.idea/modules.xml
Normal file
8
.idea/modules.xml
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/.idea/nix.iml" filepath="$PROJECT_DIR$/.idea/nix.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
8
.idea/nix.iml
Normal file
8
.idea/nix.iml
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module type="PYTHON_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager">
|
||||||
|
<content url="file://$MODULE_DIR$" />
|
||||||
|
<orderEntry type="inheritedJdk" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
</component>
|
||||||
|
</module>
|
6
.idea/vcs.xml
Normal file
6
.idea/vcs.xml
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
|
@ -1,210 +1,9 @@
|
||||||
{ pkgs, ...}:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
./programs
|
||||||
|
./services
|
||||||
|
./misc
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
|
||||||
loader = {
|
|
||||||
timeout = 2;
|
|
||||||
grub = {
|
|
||||||
enable = true;
|
|
||||||
device = "/dev/disk/by-id/ata-Samsung_SSD_860_EVO_500GB_S4CNNE0M700172J";
|
|
||||||
gfxmodeBios = "auto"; # 1920x1080 did not work
|
|
||||||
splashImage = null;
|
|
||||||
font = null;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
# doesn't even work, todo when fixed: remove xrandr from i3 autostart
|
|
||||||
kernelParams = [
|
|
||||||
"video=DP-3:1920x1080@240"
|
|
||||||
"video=HDMI-3:1920x1080@75"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
|
||||||
|
|
||||||
nixpkgs.config.permittedInsecurePackages = [
|
|
||||||
"freeimage-unstable-2021-11-01"
|
|
||||||
"openssl-1.1.1w"
|
|
||||||
];
|
|
||||||
|
|
||||||
networking.hostName = "krizej-pc";
|
|
||||||
networking.networkmanager.enable = true;
|
|
||||||
|
|
||||||
time.timeZone = "Europe/Warsaw";
|
|
||||||
|
|
||||||
# services.libinput = {
|
|
||||||
# enable = true;
|
|
||||||
# touchpad = {
|
|
||||||
# naturalScrolling = false; # it's reversed on my laptop for some reason
|
|
||||||
# tapping = true;
|
|
||||||
# tappingButtonMap = "lmr";
|
|
||||||
# scrollMethod = "edge";
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
|
|
||||||
programs.sway.enable = true;
|
|
||||||
|
|
||||||
services = {
|
|
||||||
xserver = {
|
|
||||||
enable = true;
|
|
||||||
xkb.layout = "pl";
|
|
||||||
|
|
||||||
windowManager.i3.enable = true;
|
|
||||||
|
|
||||||
displayManager = {
|
|
||||||
sessionCommands = ''
|
|
||||||
xrandr --output DP-3 --mode 1920x1080 --rate 239.76 --primary
|
|
||||||
xrandr --output HDMI-3 --mode 1920x1080 --rate 74.97 --right-of DP-3
|
|
||||||
xset r rate 180 50
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
autoRepeatDelay = 180;
|
|
||||||
autoRepeatInterval = 50;
|
|
||||||
};
|
|
||||||
|
|
||||||
displayManager = {
|
|
||||||
defaultSession = "none+i3";
|
|
||||||
sddm = {
|
|
||||||
enable = true;
|
|
||||||
theme = "sddm-i3-theme";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
fonts = {
|
|
||||||
enableDefaultPackages = true;
|
|
||||||
packages = with pkgs; [
|
|
||||||
jetbrains-mono
|
|
||||||
dejavu_fonts
|
|
||||||
corefonts
|
|
||||||
vistafonts
|
|
||||||
];
|
|
||||||
fontconfig.defaultFonts = {
|
|
||||||
serif = [ "JetBrains Mono NL" ];
|
|
||||||
sansSerif = [ "JetBrains Mono NL" ];
|
|
||||||
monospace = [ "JetBrains Mono NL" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sound.enable = true;
|
|
||||||
hardware.pulseaudio.enable = true;
|
|
||||||
|
|
||||||
# fucking stupid android shit man
|
|
||||||
# users.groups.plugdev.members = [ "krizej" ];
|
|
||||||
# services.udev.extraRules = ''
|
|
||||||
# SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="2e76", MODE="0666", GROUP="plugdev"
|
|
||||||
# '';
|
|
||||||
|
|
||||||
users.users.krizej = {
|
|
||||||
isNormalUser = true;
|
|
||||||
extraGroups = [ "wheel" ];
|
|
||||||
shell = pkgs.fish;
|
|
||||||
};
|
|
||||||
|
|
||||||
qt = {
|
|
||||||
enable = true;
|
|
||||||
platformTheme = "gnome";
|
|
||||||
style = "adwaita-dark";
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.nano.enable = false;
|
|
||||||
programs.dconf.enable = true;
|
|
||||||
|
|
||||||
# any-nix-shell
|
|
||||||
programs.fish.enable = true;
|
|
||||||
programs.fish.promptInit = ''
|
|
||||||
${pkgs.any-nix-shell}/bin/any-nix-shell fish --info-right | source
|
|
||||||
'';
|
|
||||||
|
|
||||||
programs.steam = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
ed # is the standard text editor.
|
|
||||||
vim
|
|
||||||
file
|
|
||||||
wget
|
|
||||||
btop
|
|
||||||
git
|
|
||||||
gcc
|
|
||||||
unzip
|
|
||||||
python311
|
|
||||||
python39
|
|
||||||
ripgrep
|
|
||||||
gnomeExtensions.user-themes
|
|
||||||
xdg-user-dirs
|
|
||||||
man-pages
|
|
||||||
man-pages-posix
|
|
||||||
ntfs3g
|
|
||||||
gnumake
|
|
||||||
xclip
|
|
||||||
tcl
|
|
||||||
pkg-config
|
|
||||||
fish
|
|
||||||
tree
|
|
||||||
openssl_1_1
|
|
||||||
sddm-i3-theme
|
|
||||||
];
|
|
||||||
|
|
||||||
documentation = {
|
|
||||||
enable = true;
|
|
||||||
dev.enable = true;
|
|
||||||
doc.enable = false;
|
|
||||||
info.enable = false;
|
|
||||||
man = {
|
|
||||||
enable = true;
|
|
||||||
generateCaches = false;
|
|
||||||
man-db.enable = false;
|
|
||||||
mandoc.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.gnupg.agent = {
|
|
||||||
enable = true;
|
|
||||||
enableSSHSupport = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.openssh.enable = true;
|
|
||||||
|
|
||||||
security.sudo.extraConfig = ''
|
|
||||||
Defaults pwfeedback
|
|
||||||
'';
|
|
||||||
|
|
||||||
hardware = {
|
|
||||||
opengl = {
|
|
||||||
enable = true;
|
|
||||||
driSupport = true;
|
|
||||||
driSupport32Bit = true;
|
|
||||||
extraPackages = with pkgs; [
|
|
||||||
mesa
|
|
||||||
amdvlk
|
|
||||||
libdrm
|
|
||||||
libva
|
|
||||||
vaapiVdpau
|
|
||||||
libvdpau-va-gl
|
|
||||||
rocmPackages.clr.icd
|
|
||||||
];
|
|
||||||
extraPackages32 = with pkgs; [
|
|
||||||
driversi686Linux.mesa
|
|
||||||
driversi686Linux.amdvlk
|
|
||||||
driversi686Linux.vaapiVdpau
|
|
||||||
driversi686Linux.libvdpau-va-gl
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
boot.initrd.kernelModules = [ "amdgpu" ];
|
|
||||||
|
|
||||||
environment.sessionVariables = {
|
|
||||||
AMD_VULKAN_ICD = "RADV";
|
|
||||||
};
|
|
||||||
|
|
||||||
nixpkgs.overlays = import ./pkgs pkgs;
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
|
||||||
system.stateVersion = "23.11";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
18
flake.lock
18
flake.lock
|
@ -7,11 +7,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718243258,
|
"lastModified": 1719827439,
|
||||||
"narHash": "sha256-abBpj2VU8p6qlRzTU8o22q68MmOaZ4v8zZ4UlYl5YRU=",
|
"narHash": "sha256-tneHOIv1lEavZ0vQ+rgz67LPNCgOZVByYki3OkSshFU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "8d5e27b4807d25308dfe369d5a923d87e7dbfda3",
|
"rev": "59ce796b2563e19821361abbe2067c3bb4143a7d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -22,11 +22,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718318537,
|
"lastModified": 1719848872,
|
||||||
"narHash": "sha256-4Zu0RYRcAY/VWuu6awwq4opuiD//ahpc2aFHg2CWqFY=",
|
"narHash": "sha256-H3+EC5cYuq+gQW8y0lSrrDZfH71LB4DAf+TDFyvwCNA=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e9ee548d90ff586a6471b4ae80ae9cfcbceb3420",
|
"rev": "00d80d13810dbfea8ab4ed1009b09100cca86ba8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -38,11 +38,11 @@
|
||||||
},
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715942738,
|
"lastModified": 1719938409,
|
||||||
"narHash": "sha256-85fVkx0bFqblV89A/KLGuJd0IsxCT0wOTIFBQWM1p0o=",
|
"narHash": "sha256-GzmLs/YaKAzpTQr9u4VpU0ISGtBluAyx9qTZC/86wb4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "cbe245e7ed40f92a6d40bb4a458f9003bbe612d7",
|
"rev": "1ec5b968d5751a0c817b7e56974059d01b348bf2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
11
flake.nix
11
flake.nix
|
@ -14,18 +14,11 @@
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
{ nixpkgs.overlays = [ nur.overlay ]; }
|
{ nixpkgs.overlays = [ nur.overlay ]; }
|
||||||
./configuration.nix
|
|
||||||
nur.nixosModules.nur
|
nur.nixosModules.nur
|
||||||
home-manager.nixosModules.home-manager {
|
home-manager.nixosModules.home-manager
|
||||||
home-manager = {
|
./configuration.nix
|
||||||
useGlobalPkgs = true;
|
|
||||||
useUserPackages = true;
|
|
||||||
users.krizej = import ./home.nix;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,12 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./dunst.nix
|
./documentation.nix
|
||||||
./flameshot.nix
|
./networking.nix
|
||||||
./picom.nix
|
./nix.nix
|
||||||
|
./sudo.nix
|
||||||
|
./system.nix
|
||||||
|
./theme.nix
|
||||||
|
./xdg.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
documentation = {
|
||||||
|
enable = true;
|
||||||
|
dev.enable = true;
|
||||||
|
doc.enable = false;
|
||||||
|
info.enable = false;
|
||||||
|
man = {
|
||||||
|
enable = true;
|
||||||
|
generateCaches = false;
|
||||||
|
man-db.enable = false;
|
||||||
|
mandoc.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
home-manager.users.krizej.home.sessionVariables = {
|
||||||
|
# c docs first
|
||||||
|
"MANSECT" = "2:3:3p:3type:1:1p:n:l:8:0:0p:5:4:9:6:7";
|
||||||
|
};
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
man-pages
|
||||||
|
man-pages-posix
|
||||||
|
];
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
networking.hostName = "krizej-pc";
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
}
|
|
@ -1,12 +1,11 @@
|
||||||
{ ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
|
||||||
nixpkgs.config.permittedInsecurePackages = [
|
nixpkgs.config.permittedInsecurePackages = [
|
||||||
"freeimage-unstable-2021-11-01"
|
"freeimage-unstable-2021-11-01"
|
||||||
"openssl-1.1.1w"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
nixpkgs.overlays = import ./pkgs pkgs;
|
nixpkgs.overlays = import ../pkgs pkgs;
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
security.sudo.extraConfig = ''
|
||||||
|
Defaults pwfeedback
|
||||||
|
'';
|
||||||
|
}
|
|
@ -0,0 +1,44 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
boot = {
|
||||||
|
loader = {
|
||||||
|
timeout = 2;
|
||||||
|
grub = {
|
||||||
|
enable = true;
|
||||||
|
device = "/dev/disk/by-id/ata-Samsung_SSD_860_EVO_500GB_S4CNNE0M700172J";
|
||||||
|
gfxmodeBios = "auto"; # 1920x1080 did not work, this doesn't either
|
||||||
|
splashImage = null;
|
||||||
|
font = null;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# this doesn't even work
|
||||||
|
kernelParams = [
|
||||||
|
"video=DP-3:1920x1080@240"
|
||||||
|
"video=HDMI-1:1920x1080@75"
|
||||||
|
];
|
||||||
|
initrd.kernelModules = [ "amdgpu" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
time.timeZone = "Europe/Warsaw";
|
||||||
|
|
||||||
|
sound.enable = true;
|
||||||
|
hardware.pulseaudio.enable = true;
|
||||||
|
|
||||||
|
system.stateVersion = "23.11";
|
||||||
|
|
||||||
|
users.users.krizej = {
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = ["wheel" "input"];
|
||||||
|
};
|
||||||
|
home-manager = {
|
||||||
|
useGlobalPkgs = true;
|
||||||
|
useUserPackages = true;
|
||||||
|
users.krizej = rec {
|
||||||
|
home.stateVersion = "23.11";
|
||||||
|
home.username = "krizej";
|
||||||
|
home.homeDirectory = "/home/krizej";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.ntfs3g ];
|
||||||
|
}
|
|
@ -0,0 +1,45 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
environment.systemPackages = [
|
||||||
|
pkgs.gnomeExtensions.user-themes
|
||||||
|
];
|
||||||
|
|
||||||
|
fonts = {
|
||||||
|
enableDefaultPackages = true;
|
||||||
|
packages = with pkgs; [
|
||||||
|
jetbrains-mono
|
||||||
|
];
|
||||||
|
fontconfig.defaultFonts = {
|
||||||
|
serif = [ "JetBrains Mono NL" ];
|
||||||
|
sansSerif = [ "JetBrains Mono NL" ];
|
||||||
|
monospace = [ "JetBrains Mono NL" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
qt = {
|
||||||
|
enable = true;
|
||||||
|
platformTheme = "gnome";
|
||||||
|
style = "adwaita-dark";
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.users.krizej = {
|
||||||
|
home.pointerCursor = {
|
||||||
|
gtk.enable = true;
|
||||||
|
x11.enable = true;
|
||||||
|
name = "aero-drop";
|
||||||
|
package = pkgs.win7-cursors;
|
||||||
|
};
|
||||||
|
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
iconTheme = {
|
||||||
|
name = "Arc";
|
||||||
|
package = pkgs.arc-icon-theme;
|
||||||
|
};
|
||||||
|
theme = {
|
||||||
|
name = "Arc-Mono";
|
||||||
|
package = pkgs.arc-mono-gtk-theme;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,9 +1,10 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
let
|
let
|
||||||
HOME = config.home-manager.users.krizej.home.homeDirectory;
|
HOME = config.home-manager.users.krizej.home.homeDirectory;
|
||||||
in {
|
in {
|
||||||
home-manager.users.krizej = {
|
home-manager.users.krizej = {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
xdg-user-dirs
|
||||||
xdg-desktop-portal
|
xdg-desktop-portal
|
||||||
xdg-desktop-portal-gnome
|
xdg-desktop-portal-gnome
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,17 +1,18 @@
|
||||||
{ lib, stdenv
|
{
|
||||||
, fetchFromGitHub
|
lib,
|
||||||
, sassc
|
stdenv,
|
||||||
, meson
|
fetchFromGitHub,
|
||||||
, ninja
|
sassc,
|
||||||
, glib
|
meson,
|
||||||
, gnome
|
ninja,
|
||||||
, gtk-engine-murrine
|
glib,
|
||||||
, inkscape
|
gnome,
|
||||||
, cinnamon
|
gtk-engine-murrine,
|
||||||
, makeFontsConf
|
inkscape,
|
||||||
, python3
|
cinnamon,
|
||||||
|
makeFontsConf,
|
||||||
|
python3,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "arc-theme";
|
pname = "arc-theme";
|
||||||
version = "i don't care";
|
version = "i don't care";
|
||||||
|
|
|
@ -1,4 +1,8 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
pname = "darkcold-gtk-theme";
|
pname = "darkcold-gtk-theme";
|
||||||
version = "v5.1.0";
|
version = "v5.1.0";
|
||||||
|
@ -27,4 +31,3 @@ stdenv.mkDerivation {
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -12,4 +12,3 @@ pkgs: [
|
||||||
sddm-i3-theme = pkgs.callPackage ./sddm-i3-theme.nix {};
|
sddm-i3-theme = pkgs.callPackage ./sddm-i3-theme.nix {};
|
||||||
})
|
})
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,8 @@
|
||||||
{ lib, stdenv, fetchFromGitea }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitea,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
pname = "e17gtk-revolved";
|
pname = "e17gtk-revolved";
|
||||||
version = "2023-06-13";
|
version = "2023-06-13";
|
||||||
|
@ -27,4 +31,3 @@ stdenv.mkDerivation {
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,22 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, curl, expat
|
{
|
||||||
, jansson, libpng, libjpeg, libGLU, libGL
|
lib,
|
||||||
, libsndfile, libXxf86vm, pcre, pkg-config, SDL2
|
stdenv,
|
||||||
, vim, speex }:
|
fetchFromGitHub,
|
||||||
|
curl,
|
||||||
|
expat,
|
||||||
|
jansson,
|
||||||
|
libpng,
|
||||||
|
libjpeg,
|
||||||
|
libGLU,
|
||||||
|
libGL,
|
||||||
|
libsndfile,
|
||||||
|
libXxf86vm,
|
||||||
|
pcre,
|
||||||
|
pkg-config,
|
||||||
|
SDL2,
|
||||||
|
vim,
|
||||||
|
speex,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "ezquake";
|
pname = "ezquake";
|
||||||
version = "3.6.5";
|
version = "3.6.5";
|
||||||
|
@ -17,7 +31,19 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
nativeBuildInputs = [pkg-config];
|
nativeBuildInputs = [pkg-config];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
expat curl jansson libpng libjpeg libGLU libGL libsndfile libXxf86vm pcre SDL2 vim speex
|
expat
|
||||||
|
curl
|
||||||
|
jansson
|
||||||
|
libpng
|
||||||
|
libjpeg
|
||||||
|
libGLU
|
||||||
|
libGL
|
||||||
|
libsndfile
|
||||||
|
libXxf86vm
|
||||||
|
pcre
|
||||||
|
SDL2
|
||||||
|
vim
|
||||||
|
speex
|
||||||
];
|
];
|
||||||
|
|
||||||
installPhase = with lib; let
|
installPhase = with lib; let
|
||||||
|
|
|
@ -1,4 +1,10 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, gtk3, hicolor-icon-theme }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
gtk3,
|
||||||
|
hicolor-icon-theme,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
pname = "oxylite-icon-theme";
|
pname = "oxylite-icon-theme";
|
||||||
version = "2024-04-22";
|
version = "2024-04-22";
|
||||||
|
@ -47,4 +53,3 @@ stdenv.mkDerivation {
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,8 @@
|
||||||
{ lib, stdenv, fetchzip }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchzip,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "sddm-i3-theme";
|
pname = "sddm-i3-theme";
|
||||||
version = "1";
|
version = "1";
|
||||||
|
|
|
@ -1,4 +1,7 @@
|
||||||
{ lib, pkgs }:
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
}:
|
||||||
pkgs.vimUtils.buildVimPlugin {
|
pkgs.vimUtils.buildVimPlugin {
|
||||||
name = "vim-darcula-theme";
|
name = "vim-darcula-theme";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
|
|
|
@ -1,4 +1,8 @@
|
||||||
{ lib, stdenv, fetchzip }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchzip,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "win7-cursors";
|
pname = "win7-cursors";
|
||||||
version = "1";
|
version = "1";
|
||||||
|
@ -28,4 +32,3 @@ stdenv.mkDerivation rec {
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,8 @@
|
||||||
{ lib, stdenv, fetchFromGitHub }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
pname = "winvista-cursors";
|
pname = "winvista-cursors";
|
||||||
version = "1";
|
version = "1";
|
||||||
|
@ -23,4 +27,3 @@ stdenv.mkDerivation {
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,12 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, cmake, python3, xorg, shadows ? false }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
cmake,
|
||||||
|
python3,
|
||||||
|
xorg,
|
||||||
|
shadows ? false,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "winxp-cursors";
|
pname = "winxp-cursors";
|
||||||
version = "2023-11-22";
|
version = "2023-11-22";
|
||||||
|
@ -14,7 +22,10 @@ stdenv.mkDerivation rec {
|
||||||
nativeBuildInputs = [cmake python3 xorg.xcursorgen];
|
nativeBuildInputs = [cmake python3 xorg.xcursorgen];
|
||||||
dontUseCmakeConfigure = true;
|
dontUseCmakeConfigure = true;
|
||||||
|
|
||||||
cursor_variant = if shadows then "with-shadow" else "no-shadow";
|
cursor_variant =
|
||||||
|
if shadows
|
||||||
|
then "with-shadow"
|
||||||
|
else "no-shadow";
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
cd packaging
|
cd packaging
|
||||||
|
@ -38,4 +49,3 @@ stdenv.mkDerivation rec {
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,11 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, cmake, python3, gtk3 }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
cmake,
|
||||||
|
python3,
|
||||||
|
gtk3,
|
||||||
|
}:
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
pname = "winxp-icons";
|
pname = "winxp-icons";
|
||||||
version = "2024-03-27";
|
version = "2024-03-27";
|
||||||
|
@ -37,4 +44,3 @@ stdenv.mkDerivation {
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,13 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
|
home-manager.users.krizej.programs.alacritty = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
font.size = 10;
|
font.size = 10;
|
||||||
window.padding = { x = 2; y = 2; };
|
window.padding = {
|
||||||
|
x = 2;
|
||||||
|
y = 2;
|
||||||
|
};
|
||||||
cursor = {
|
cursor = {
|
||||||
style = {
|
style = {
|
||||||
shape = "Beam";
|
shape = "Beam";
|
||||||
|
@ -39,4 +43,5 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
# TODO: this shit ain't working
|
||||||
|
home-manager.users.krizej.programs.autorandr = {
|
||||||
enable = true;
|
enable = true;
|
||||||
hooks.postswitch = {
|
hooks.postswitch = {
|
||||||
"notify-i3" = "${pkgs.i3}/bin/i3-msg restart";
|
"notify-i3" = "${pkgs.i3}/bin/i3-msg restart";
|
||||||
|
@ -27,8 +29,5 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,16 +1,87 @@
|
||||||
[
|
{ pkgs, ... }:
|
||||||
# i3 is not here because it goes into xsession.windowManager instead of into programs
|
{
|
||||||
"home-manager"
|
imports = [
|
||||||
"firefox"
|
./alacritty.nix
|
||||||
"alacritty"
|
./autorandr.nix
|
||||||
"fish"
|
./firefox.nix
|
||||||
"eza"
|
./fish.nix
|
||||||
"yt-dlp"
|
./git.nix
|
||||||
"rofi"
|
./i3.nix
|
||||||
"autorandr"
|
./ssh.nix
|
||||||
"i3status"
|
./vim.nix
|
||||||
"ssh"
|
];
|
||||||
"git"
|
|
||||||
"vim"
|
|
||||||
]
|
|
||||||
|
|
||||||
|
config = {
|
||||||
|
programs = {
|
||||||
|
dconf.enable = true;
|
||||||
|
steam.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
ed # is the standard text editor.
|
||||||
|
ripgrep
|
||||||
|
eza
|
||||||
|
file
|
||||||
|
tree
|
||||||
|
btop
|
||||||
|
unzip
|
||||||
|
wget
|
||||||
|
gcc
|
||||||
|
gnumake
|
||||||
|
pkg-config
|
||||||
|
python39
|
||||||
|
];
|
||||||
|
|
||||||
|
# maybe i can just put it into the packages but idk whatever
|
||||||
|
home-manager.users.krizej.programs = {
|
||||||
|
home-manager.enable = true;
|
||||||
|
eza.enable = true;
|
||||||
|
yt-dlp.enable = true;
|
||||||
|
};
|
||||||
|
home-manager.users.krizej.home.packages = with pkgs; [
|
||||||
|
fortune
|
||||||
|
|
||||||
|
xarchiver
|
||||||
|
gvfs
|
||||||
|
yad
|
||||||
|
pcmanfm
|
||||||
|
|
||||||
|
pavucontrol
|
||||||
|
pamixer
|
||||||
|
|
||||||
|
element-desktop
|
||||||
|
discord
|
||||||
|
|
||||||
|
gamemode
|
||||||
|
ezquake
|
||||||
|
vkquake
|
||||||
|
ericw-tools
|
||||||
|
trenchbroom
|
||||||
|
r2modman
|
||||||
|
|
||||||
|
libreoffice-qt
|
||||||
|
gimp
|
||||||
|
sqlitebrowser
|
||||||
|
feh
|
||||||
|
|
||||||
|
wineWowPackages.stable
|
||||||
|
winetricks
|
||||||
|
|
||||||
|
gdb
|
||||||
|
ccls
|
||||||
|
clang-tools
|
||||||
|
tcl
|
||||||
|
|
||||||
|
gpu-screen-recorder # todo: config this shit so it works
|
||||||
|
gpu-screen-recorder-gtk
|
||||||
|
obs-studio
|
||||||
|
|
||||||
|
jetbrains.pycharm-community
|
||||||
|
jetbrains.clion
|
||||||
|
(pkgs.writeShellScriptBin "clion-nix" ''
|
||||||
|
cd ~/projects/$1
|
||||||
|
nix-shell --run "clion ."
|
||||||
|
'')
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
home-manager.users.krizej.programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
policies = {
|
policies = {
|
||||||
DisableTelemetry = true;
|
DisableTelemetry = true;
|
||||||
|
@ -53,10 +54,11 @@
|
||||||
definedAliases = ["@sx"];
|
definedAliases = ["@sx"];
|
||||||
};
|
};
|
||||||
|
|
||||||
"Wikipedia (en)".metaData.alias = "@w";
|
|
||||||
# searx sometimes sucks
|
# searx sometimes sucks
|
||||||
"Google".metaData.alias = "@g";
|
"Google".metaData.alias = "@g";
|
||||||
|
|
||||||
|
"Wikipedia (en)".metaData.alias = "@w";
|
||||||
|
|
||||||
"Nix Packages" = {
|
"Nix Packages" = {
|
||||||
urls = [{template = "https://search.nixos.org/packages?channel=unstable&query={searchTerms}";}];
|
urls = [{template = "https://search.nixos.org/packages?channel=unstable&query={searchTerms}";}];
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
@ -92,4 +94,5 @@
|
||||||
"services.sync.prefs.sync.extensions.activeThemeID" = "false";
|
"services.sync.prefs.sync.extensions.activeThemeID" = "false";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
{...}:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
environment.systemPackages = [ pkgs.fish ];
|
||||||
|
programs.fish.enable = true;
|
||||||
|
users.users.krizej.shell = pkgs.fish;
|
||||||
|
|
||||||
|
programs.fish.promptInit = ''
|
||||||
|
${pkgs.any-nix-shell}/bin/any-nix-shell fish --info-right | source
|
||||||
|
'';
|
||||||
|
|
||||||
|
home-manager.users.krizej.programs.fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
|
@ -16,6 +25,72 @@
|
||||||
|
|
||||||
functions = {
|
functions = {
|
||||||
"fish_greeting" = "fortune";
|
"fish_greeting" = "fortune";
|
||||||
"fish_prompt" = builtins.readFile ../files/prompt.fish;
|
"fish_prompt" = ''
|
||||||
|
# name: Informative Vcs
|
||||||
|
# author: Mariusz Smykula <mariuszs at gmail.com>
|
||||||
|
|
||||||
|
# function fish_prompt --description 'Write out the prompt'
|
||||||
|
set -l last_pipestatus $pipestatus
|
||||||
|
set -lx __fish_last_status $status # Export for __fish_print_pipestatus.
|
||||||
|
|
||||||
|
if not set -q __fish_git_prompt_show_informative_status
|
||||||
|
set -g __fish_git_prompt_show_informative_status 1
|
||||||
|
end
|
||||||
|
if not set -q __fish_git_prompt_hide_untrackedfiles
|
||||||
|
set -g __fish_git_prompt_hide_untrackedfiles 1
|
||||||
|
end
|
||||||
|
if not set -q __fish_git_prompt_color_branch
|
||||||
|
set -g __fish_git_prompt_color_branch magenta --bold
|
||||||
|
end
|
||||||
|
if not set -q __fish_git_prompt_showupstream
|
||||||
|
set -g __fish_git_prompt_showupstream informative
|
||||||
|
end
|
||||||
|
if not set -q __fish_git_prompt_color_dirtystate
|
||||||
|
set -g __fish_git_prompt_color_dirtystate blue
|
||||||
|
end
|
||||||
|
if not set -q __fish_git_prompt_color_stagedstate
|
||||||
|
set -g __fish_git_prompt_color_stagedstate yellow
|
||||||
|
end
|
||||||
|
if not set -q __fish_git_prompt_color_invalidstate
|
||||||
|
set -g __fish_git_prompt_color_invalidstate red
|
||||||
|
end
|
||||||
|
if not set -q __fish_git_prompt_color_untrackedfiles
|
||||||
|
set -g __fish_git_prompt_color_untrackedfiles $fish_color_normal
|
||||||
|
end
|
||||||
|
if not set -q __fish_git_prompt_color_cleanstate
|
||||||
|
set -g __fish_git_prompt_color_cleanstate green --bold
|
||||||
|
end
|
||||||
|
|
||||||
|
set -l color_cwd
|
||||||
|
set -l suffix
|
||||||
|
if functions -q fish_is_root_user; and fish_is_root_user
|
||||||
|
if set -q fish_color_cwd_root
|
||||||
|
set color_cwd $fish_color_cwd_root
|
||||||
|
else
|
||||||
|
set color_cwd $fish_color_cwd
|
||||||
|
end
|
||||||
|
set suffix '#'
|
||||||
|
else
|
||||||
|
set color_cwd $fish_color_cwd
|
||||||
|
set suffix '$'
|
||||||
|
end
|
||||||
|
|
||||||
|
# PWD
|
||||||
|
set_color $color_cwd
|
||||||
|
echo -n (prompt_pwd)
|
||||||
|
set_color normal
|
||||||
|
|
||||||
|
printf '%s ' (fish_vcs_prompt)
|
||||||
|
|
||||||
|
set -l status_color (set_color $fish_color_status)
|
||||||
|
set -l statusb_color (set_color --bold $fish_color_status)
|
||||||
|
set -l prompt_status (__fish_print_pipestatus "[" "]" "|" "$status_color" "$statusb_color" $last_pipestatus)
|
||||||
|
echo -n $prompt_status
|
||||||
|
set_color normal
|
||||||
|
|
||||||
|
echo -n "$suffix "
|
||||||
|
# end
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
{...}:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
environment.systemPackages = [ pkgs.git ];
|
||||||
|
home-manager.users.krizej.programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
userName = "krizej";
|
userName = "krizej";
|
||||||
userEmail = "60076189+krizej@users.noreply.github.com";
|
userEmail = "60076189+krizej@users.noreply.github.com";
|
||||||
# init.defaultBranch = "master";
|
extraConfig.init.defaultBranch = "master";
|
||||||
# push.autoSetupRemote = true;
|
};
|
||||||
}
|
}
|
||||||
|
|
124
programs/i3.nix
124
programs/i3.nix
|
@ -1,5 +1,10 @@
|
||||||
{ pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
{
|
let
|
||||||
|
HOME = config.home-manager.users.krizej.home.homeDirectory;
|
||||||
|
in {
|
||||||
|
services.xserver.windowManager.i3.enable = true;
|
||||||
|
home-manager.users.krizej = {
|
||||||
|
xsession.windowManager.i3 = {
|
||||||
enable = true;
|
enable = true;
|
||||||
config = rec {
|
config = rec {
|
||||||
assigns = {
|
assigns = {
|
||||||
|
@ -12,7 +17,7 @@
|
||||||
|
|
||||||
window = {
|
window = {
|
||||||
border = 1;
|
border = 1;
|
||||||
titlebar = false;
|
titlebar = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
floating = {
|
floating = {
|
||||||
|
@ -21,7 +26,7 @@
|
||||||
criteria = [
|
criteria = [
|
||||||
{ class = "zenity"; }
|
{ class = "zenity"; }
|
||||||
{ class = "fceux"; }
|
{ class = "fceux"; }
|
||||||
{ title = "Friends List"; } # steam
|
{ title = "Friends List"; }
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -35,11 +40,13 @@
|
||||||
size = 10.0;
|
size = 10.0;
|
||||||
};
|
};
|
||||||
|
|
||||||
bars = [{
|
bars = [
|
||||||
|
{
|
||||||
inherit fonts;
|
inherit fonts;
|
||||||
trayOutput = "primary";
|
trayOutput = "primary";
|
||||||
statusCommand = "${pkgs.i3status}/bin/i3status";
|
statusCommand = "${pkgs.i3status}/bin/i3status";
|
||||||
}];
|
}
|
||||||
|
];
|
||||||
|
|
||||||
defaultWorkspace = "workspace number 1";
|
defaultWorkspace = "workspace number 1";
|
||||||
workspaceOutputAssign = [
|
workspaceOutputAssign = [
|
||||||
|
@ -54,18 +61,10 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
startup = [
|
startup = [
|
||||||
# { command = "picom &"; notification = false; }
|
# { command = "mpd &"; notification = false; }
|
||||||
{ command = "mpd &"; notification = false; }
|
|
||||||
{ command = "dunst &"; notification = false; }
|
{ command = "dunst &"; notification = false; }
|
||||||
{ command = "flameshot &"; notification = false; }
|
{ command = "flameshot &"; notification = false; }
|
||||||
|
|
||||||
# { command = "lcd-bar startdaemon 192.168.1.12 &"; notification = false; }
|
|
||||||
# { command = "lcd-bar-status &"; notification = false; }
|
|
||||||
|
|
||||||
{ command = "i3bar-mouse &"; notification = false; }
|
|
||||||
|
|
||||||
# { command = "hydration.sh &"; notification = false; }
|
|
||||||
|
|
||||||
{ command = "i3-msg \"workspace 2; append_layout ~/.config/i3/workspace2.json\""; notification = false; }
|
{ command = "i3-msg \"workspace 2; append_layout ~/.config/i3/workspace2.json\""; notification = false; }
|
||||||
{ command = "discord &"; notification = false; }
|
{ command = "discord &"; notification = false; }
|
||||||
{ command = "element-desktop &"; notification = false; }
|
{ command = "element-desktop &"; notification = false; }
|
||||||
|
@ -74,7 +73,7 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
modes = let
|
modes = let
|
||||||
cmd_and_center = (cmd: "exec --no-startup-id i3-msg '${cmd}' && i3-center-mouse-on-focus");
|
cmd_and_center = cmd: "exec --no-startup-id i3-msg '${cmd}' && i3-center-mouse-on-focus";
|
||||||
in {
|
in {
|
||||||
resize = {
|
resize = {
|
||||||
"Left" = cmd_and_center "resize shrink width 10 px or 10 ppt";
|
"Left" = cmd_and_center "resize shrink width 10 px or 10 ppt";
|
||||||
|
@ -87,18 +86,18 @@
|
||||||
|
|
||||||
modifier = "Mod4";
|
modifier = "Mod4";
|
||||||
floating.modifier = "Mod4";
|
floating.modifier = "Mod4";
|
||||||
|
|
||||||
keybindings = let
|
keybindings = let
|
||||||
mod = modifier;
|
mod = modifier;
|
||||||
execns = "exec --no-startup-id";
|
execns = "exec --no-startup-id";
|
||||||
cmd_and_center = (cmd: "${execns} i3-msg '${cmd}' && i3custom-center-mouse-on-focus");
|
cmd_and_center = cmd: "${execns} i3-msg '${cmd}' && i3custom-center-mouse-on-focus";
|
||||||
in {
|
in {
|
||||||
# Program keybinds
|
# Program keybinds
|
||||||
"${mod}+Return" = "${execns} alacritty";
|
"${mod}+Return" = "${execns} alacritty";
|
||||||
"${mod}+Shift+s" = "${execns} flameshot gui";
|
"${mod}+Shift+s" = "${execns} flameshot gui";
|
||||||
"${mod}+b" = "${execns} firefox";
|
"${mod}+b" = "${execns} firefox";
|
||||||
"${mod}+d" = "${execns} rofi -show drun";
|
"${mod}+d" = "${execns} dmenu_run";
|
||||||
# hack, see i3 user doc for --release flag
|
"--release ${mod}+k" = "${execns} xkill";
|
||||||
"--release ${mod}+k" = "exec xkill";
|
|
||||||
|
|
||||||
# Volume control
|
# Volume control
|
||||||
"Ctrl+F9" = "${execns} pamixer --toggle-mute";
|
"Ctrl+F9" = "${execns} pamixer --toggle-mute";
|
||||||
|
@ -123,7 +122,7 @@
|
||||||
"${mod}+Shift+r" = "restart";
|
"${mod}+Shift+r" = "restart";
|
||||||
"${mod}+Shift+e" = "${execns} i3-nagbar -t warning -m 'exit?' -b 'yes' 'i3-msg exit'";
|
"${mod}+Shift+e" = "${execns} i3-nagbar -t warning -m 'exit?' -b 'yes' 'i3-msg exit'";
|
||||||
# Mouse bindings
|
# Mouse bindings
|
||||||
# "--border --whole-window button8" = "${execns} i3custom-window-actions";
|
"--border button3" = "${execns} i3custom-window-actions";
|
||||||
|
|
||||||
"${mod}+Left" = cmd_and_center "focus left";
|
"${mod}+Left" = cmd_and_center "focus left";
|
||||||
"${mod}+Right" = cmd_and_center "focus right";
|
"${mod}+Right" = cmd_and_center "focus right";
|
||||||
|
@ -138,7 +137,7 @@
|
||||||
"${mod}+w" = cmd_and_center "layout tabbed";
|
"${mod}+w" = cmd_and_center "layout tabbed";
|
||||||
"${mod}+e" = cmd_and_center "layout toggle split";
|
"${mod}+e" = cmd_and_center "layout toggle split";
|
||||||
|
|
||||||
"${mod}+Shift+space" = "${execns} i3custom-floating-toggle && i3custom-center-mouse-on-focus";
|
"${mod}+Shift+space" = "floating toggle; ${execns} i3custom-center-mouse-on-focus";
|
||||||
"${mod}+space" = cmd_and_center "focus mode_toggle";
|
"${mod}+space" = cmd_and_center "focus mode_toggle";
|
||||||
|
|
||||||
"${mod}+1" = cmd_and_center "workspace number 1";
|
"${mod}+1" = cmd_and_center "workspace number 1";
|
||||||
|
@ -164,4 +163,85 @@
|
||||||
"${mod}+Shift+0" = cmd_and_center "move container to workspace number 10";
|
"${mod}+Shift+0" = cmd_and_center "move container to workspace number 10";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.i3status = {
|
||||||
|
enable = true;
|
||||||
|
enableDefault = false;
|
||||||
|
|
||||||
|
general = {
|
||||||
|
interval = 1;
|
||||||
|
colors = true;
|
||||||
|
color_good = "#91d956";
|
||||||
|
color_bad = "#f43841";
|
||||||
|
color_degraded = "#ffdd33";
|
||||||
|
output_format = "i3bar";
|
||||||
|
};
|
||||||
|
|
||||||
|
modules = {
|
||||||
|
"cpu_usage" = {
|
||||||
|
position = 0;
|
||||||
|
settings = {
|
||||||
|
format = "cpu: %usage";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"memory" = {
|
||||||
|
position = 1;
|
||||||
|
settings = {
|
||||||
|
format = "mem: %used";
|
||||||
|
threshold_degraded = "1G";
|
||||||
|
format_degraded = "MEMORY < %available";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"volume master" = {
|
||||||
|
position = 2;
|
||||||
|
settings = {
|
||||||
|
color_degraded = "#333333";
|
||||||
|
format = "vol: %volume";
|
||||||
|
format_muted = "vol: ---";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"tztime local" = {
|
||||||
|
position = 3;
|
||||||
|
settings = {
|
||||||
|
format = "%Y-%m-%d %H:%M:%S (%A)";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
(pkgs.writeShellScriptBin "i3custom-center-mouse-on-focus" ''
|
||||||
|
eval $(xdotool getwindowfocus getwindowgeometry --shell)
|
||||||
|
MX=$(($X + $WIDTH / 2))
|
||||||
|
MY=$(($Y + $HEIGHT / 2))
|
||||||
|
xdotool mousemove $MX $MY
|
||||||
|
'')
|
||||||
|
|
||||||
|
(pkgs.writeShellScriptBin "i3custom-window-actions" ''
|
||||||
|
yad --splash --mouse --title="i3 window actions" \
|
||||||
|
--gtkrc="${HOME}/.config/i3/i3gtk.css" \
|
||||||
|
--text="i3 window actions" \
|
||||||
|
--button float:0 --button kill:1
|
||||||
|
|
||||||
|
case $? in
|
||||||
|
0) i3-msg "floating toggle";;
|
||||||
|
1) i3-msg "kill";;
|
||||||
|
-1) ;;
|
||||||
|
esac
|
||||||
|
'')
|
||||||
|
|
||||||
|
(pkgs.writeShellScriptBin "i3custom-floating-toggle" ''
|
||||||
|
i3-msg "mark --add _; [con_mark=f] floating disable, border pixel 1, mark --add --toggle _; [con_mark=_] floating enable, border normal; mark --add --toggle f;"
|
||||||
|
'')
|
||||||
|
];
|
||||||
|
|
||||||
|
home.file = {
|
||||||
|
".config/i3/workspace2.json".source = ../files/workspace2.json;
|
||||||
|
".config/i3/i3gtk.css".source = ../files/i3gtk.css;
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
enable = true;
|
services.openssh.enable = true;
|
||||||
|
|
||||||
|
home-manager.users.krizej.programs.ssh = {
|
||||||
|
enable = true;
|
||||||
matchBlocks = {
|
matchBlocks = {
|
||||||
"github.com" = {
|
"github.com" = {
|
||||||
user = "git";
|
user = "git";
|
||||||
|
@ -22,4 +24,5 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,12 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
|
environment.systemPackages = [ pkgs.vim ];
|
||||||
|
|
||||||
|
home-manager.users.krizej = {
|
||||||
|
home.sessionVariables = { "EDITOR" = "vim"; };
|
||||||
|
# fixme: not .vim
|
||||||
|
home.file = { ".vim/colors/darcula.vim".source = ../files/darcula.vim; };
|
||||||
|
programs.vim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultEditor = true;
|
defaultEditor = true;
|
||||||
plugins = [
|
plugins = [
|
||||||
|
@ -44,4 +51,9 @@
|
||||||
let g:c_no_c11 = 1
|
let g:c_no_c11 = 1
|
||||||
let g:c_gnu = 1
|
let g:c_gnu = 1
|
||||||
'';
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# fuck you
|
||||||
|
programs.nano.enable = false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,2 +1,5 @@
|
||||||
i have no idea what i'm doing
|
i have no idea what i'm doing
|
||||||
|
|
||||||
|
todo:
|
||||||
|
- fix formatting in pkgs/
|
||||||
|
- laptop config
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[
|
{ ... }:
|
||||||
"picom"
|
{
|
||||||
"flameshot"
|
imports = [
|
||||||
"dunst"
|
./dunst.nix
|
||||||
]
|
./flameshot.nix
|
||||||
|
./sddm.nix
|
||||||
|
./xserver.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
|
home-manager.users.krizej.services.dunst = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
global = {
|
global = {
|
||||||
|
@ -11,5 +12,5 @@
|
||||||
frame_color = "#4c7899";
|
frame_color = "#4c7899";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
|
home-manager.users.krizej.services.flameshot = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
General = {
|
General = {
|
||||||
|
@ -7,4 +8,5 @@
|
||||||
showStartupLaunchMessage = false;
|
showStartupLaunchMessage = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
services.displayManager = {
|
||||||
|
defaultSession = "none+i3";
|
||||||
|
sddm = {
|
||||||
|
enable = true;
|
||||||
|
theme = "sddm-i3-theme";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.sddm-i3-theme ];
|
||||||
|
}
|
|
@ -0,0 +1,49 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
xserver = {
|
||||||
|
enable = true;
|
||||||
|
xkb.layout = "pl";
|
||||||
|
|
||||||
|
displayManager = {
|
||||||
|
# THIS SHIT DOESN'T WORK!!!
|
||||||
|
setupCommands = ''
|
||||||
|
xrandr --output DP-3 --mode 1920x1080 --rate 239.76 --primary
|
||||||
|
xrandr --output HDMI-1 --off
|
||||||
|
xset r rate 180 50
|
||||||
|
'';
|
||||||
|
sessionCommands = ''
|
||||||
|
xrandr --output DP-3 --mode 1920x1080 --rate 239.76 --primary
|
||||||
|
xrandr --output HDMI-1 --mode 1920x1080 --rate 74.97 --right-of DP-3
|
||||||
|
xset r rate 180 50
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
# THIS SHIT DOESN'T WORK!!!
|
||||||
|
autoRepeatDelay = 180;
|
||||||
|
autoRepeatInterval = 50;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.users.krizej.xsession.enable = true;
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
xclip
|
||||||
|
xorg.xkill
|
||||||
|
xorg.xev
|
||||||
|
xdotool
|
||||||
|
];
|
||||||
|
|
||||||
|
# https://www.reddit.com/r/linux_gaming/comments/1dkbh5t/games_behaving_differently_on_xorg_than_on/
|
||||||
|
# FUCK YOU LIBINPUT
|
||||||
|
services.libinput.enable = lib.mkForce false;
|
||||||
|
# services.libinput = {
|
||||||
|
# enable = true;
|
||||||
|
# touchpad = {
|
||||||
|
# naturalScrolling = false; # it's reversed on my laptop for some reason
|
||||||
|
# tapping = true;
|
||||||
|
# tappingButtonMap = "lmr";
|
||||||
|
# scrollMethod = "edge";
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
}
|
Loading…
Reference in a new issue