mirror of
https://github.com/szymon-jozef/amazing-dotfiles.git
synced 2026-09-07 12:10:45 +02:00
Compare commits
97 Commits
8ca17b6223
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 0ef93baee0 | |||
| fe64dc6344 | |||
| 338652be3e | |||
| de6c4000c7 | |||
| 66f9dc1bb3 | |||
| a33f6f6da3 | |||
| 4ec3bc2f47 | |||
| 94bcf08e7f | |||
| d1ec59478c | |||
| 93e6dd9858 | |||
| 78f4fdafe8 | |||
| a0054abc4f | |||
| 4ba52fe963 | |||
| b0883c1b54 | |||
| eb68462cfb | |||
| b724465db1 | |||
| 3e15740c3f | |||
| f604e21761 | |||
| 16304aeb3f | |||
| a751279ec3 | |||
| baed566262 | |||
| 26cbf784b2 | |||
| 3f463c5dc7 | |||
| 5675c7e388 | |||
| b402858cd6 | |||
| 49c1ff737a | |||
| dd77199323 | |||
| 9516457cfd | |||
| 6125f6de46 | |||
| 09f37d2e85 | |||
| bf46aa2889 | |||
| e740081f81 | |||
| f66308c6f3 | |||
| 58171c4860 | |||
| bab565c6b2 | |||
| 8c364ddf66 | |||
| d1aaf86410 | |||
| 7f560cdce2 | |||
| 26c9f700ec | |||
| 2616458c7d | |||
| a6db86493b | |||
| 17df54fe4a | |||
| 101ae8da40 | |||
| 7b5a5b7fbe | |||
| 7c6acd39ba | |||
| dcb1e8024b | |||
| 97bc84ca2e | |||
| e5e1663234 | |||
| f6f967f955 | |||
| 3608a5968c | |||
| cf87e02dd1 | |||
| 3fd48c0e3b | |||
| 21d688754e | |||
| 71572218ae | |||
| ce671c7440 | |||
| 5ace7fac43 | |||
| b2eb274866 | |||
| c397420d56 | |||
| b206b41cf0 | |||
| 2dc61bdcd3 | |||
| 7133fcb823 | |||
| a4863c3c4f | |||
| 843129eeb1 | |||
| 740deb2519 | |||
| a6cd239eaf | |||
| 2971626335 | |||
| 5c5e184141 | |||
| b531e290d2 | |||
| d63944a9aa | |||
| 375389307b | |||
| 0f9855aff4 | |||
| ec868f65ad | |||
| cbcc5d00a1 | |||
| adc8ba3802 | |||
| beab2afa3c | |||
| 262ca1845c | |||
| 52525169cc | |||
| bb04235569 | |||
| 3100a4930f | |||
| de80b905d5 | |||
| 63aea4d9bf | |||
| 3502073527 | |||
| 091e2295ea | |||
| 06e9335403 | |||
| 04e08bcc1c | |||
| 85168c9ae2 | |||
| 8d07ed6be6 | |||
| c2fa7f803f | |||
| 408555cc47 | |||
| cdb5403c04 | |||
| 41959e08d1 | |||
| a62512d9b6 | |||
| efaaadb75e | |||
| e83c3edf26 | |||
| 2c7c484bb4 | |||
| 0aa23ec425 | |||
| bda596fa9d |
@@ -1,3 +1,5 @@
|
||||
# This repo is now deprecated in favor of new [nixos-born-again](https://github.com/szymon-jozef/nixos-born-again)
|
||||
|
||||

|
||||

|
||||
# My even cooler than previous dotfiles!
|
||||
|
||||
553
flake.lock
generated
553
flake.lock
generated
@@ -1,38 +1,5 @@
|
||||
{
|
||||
"nodes": {
|
||||
"aquamarine": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775558810,
|
||||
"narHash": "sha256-fy95EdPnqQlpbP8+rk0yWKclWShCUS5VKs6P7/1MF2c=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "7371b669b22aa2af980f913fc312a786d2f1abb2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"catppuccin": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -40,11 +7,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775213373,
|
||||
"narHash": "sha256-wJHsijC2l/E+ovmlpPGha8pXA6RHSwHWmBV97gvkmyI=",
|
||||
"lastModified": 1780154910,
|
||||
"narHash": "sha256-aaGjVFEAJQWB69kok/AthcXpT/9yA5Ag2uYDwdbbj5c=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"rev": "ba73719e673e7c2d89ac2f8df0bc0d48983e4907",
|
||||
"rev": "cf8ccac24e24a2a78fe6f36de9c5d5e9860299a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -53,22 +20,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767039857,
|
||||
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
|
||||
"owner": "NixOS",
|
||||
"repo": "flake-compat",
|
||||
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
@@ -77,11 +28,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1769996383,
|
||||
"narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=",
|
||||
"lastModified": 1778716662,
|
||||
"narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "57928607ea566b5db3ad13af0e57e921e6b12381",
|
||||
"rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -92,7 +43,7 @@
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
@@ -108,28 +59,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"pre-commit-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -137,11 +66,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775556024,
|
||||
"narHash": "sha256-j1u/859OVS54rGlsvFqJdwKPEnFYCI+4pyfTiSfv1Xc=",
|
||||
"lastModified": 1780099287,
|
||||
"narHash": "sha256-efIPwVGtIWIjWcznhaop6XN6HxnOL8800hF6CBNvlqQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "4bdfeff1d9b7473e6e58f73f5809576e8a69e406",
|
||||
"rev": "7d8127d308c3fb9664f7e643eec944be74ebb37d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -150,32 +79,24 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprcursor": {
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"zen-browser",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772461003,
|
||||
"narHash": "sha256-pVICsV7FtcEeVwg5y/LFh3XFUkVJninm/P1j/JHzEbM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "b62396457b9cfe2ebf24fe05404b09d2a40f8ed7",
|
||||
"lastModified": 1778805320,
|
||||
"narHash": "sha256-nGFJ01m2CTBKD4ABtcY4vLhHrRN91LKr/pn41PcU78A=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "9846abe15e7d0d36b8acbd4d05f2b87461744c92",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
@@ -197,296 +118,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprgraphics": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775496928,
|
||||
"narHash": "sha256-Ds759WU03mGWtu3I43J+5GF5Ni8TvF+GYQUFD+fVeMo=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "cf95d93d17baa18f1d9b016b3afe27f820521a6e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland": {
|
||||
"inputs": {
|
||||
"aquamarine": "aquamarine",
|
||||
"hyprcursor": "hyprcursor",
|
||||
"hyprgraphics": "hyprgraphics",
|
||||
"hyprland-guiutils": "hyprland-guiutils",
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
"hyprlang": "hyprlang",
|
||||
"hyprutils": "hyprutils",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||
"hyprwire": "hyprwire",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"systems": "systems",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775567729,
|
||||
"narHash": "sha256-jLJi6ZaxWPcoc7x2eTEMsKVIXN+pzq8ToOtF/djdqD4=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "10c8a863d271dac1c51af73e0e7fb23784b6c13d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-guiutils": {
|
||||
"inputs": {
|
||||
"aquamarine": [
|
||||
"hyprland",
|
||||
"aquamarine"
|
||||
],
|
||||
"hyprgraphics": [
|
||||
"hyprland",
|
||||
"hyprgraphics"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprtoolkit": "hyprtoolkit",
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1774710575,
|
||||
"narHash": "sha256-p7Rcw13+gA4Z9EI3oGYe3neQ3FqyOOfZCleBTfhJ95Q=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-guiutils",
|
||||
"rev": "0703df899520001209646246bef63358c9881e36",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-guiutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-protocols": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772460177,
|
||||
"narHash": "sha256-/6G/MsPvtn7bc4Y32pserBT/Z4SUUdBd4XYJpOEKVR4=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "1cb6db5fd6bb8aee419f4457402fa18293ace917",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprlang": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772459629,
|
||||
"narHash": "sha256-/iwvNUYShmmnwmz/czEUh6+0eF5vCMv0xtDW0STPIuM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "7615ee388de18239a4ab1400946f3d0e498a8186",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprtoolkit": {
|
||||
"inputs": {
|
||||
"aquamarine": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"aquamarine"
|
||||
],
|
||||
"hyprgraphics": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprgraphics"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"hyprland-guiutils",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772462885,
|
||||
"narHash": "sha256-5pHXrQK9zasMnIo6yME6EOXmWGFMSnCITcfKshhKJ9I=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprtoolkit",
|
||||
"rev": "9af245a69fa6b286b88ddfc340afd288e00a6998",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprtoolkit",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprutils": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1774911391,
|
||||
"narHash": "sha256-c4YVwO33Mmw+FIV8E0u3atJZagHvGTJ9Jai6RtiB8rE=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "e6caa3d4d1427eedbdf556cf4ceb70f2d9c0b56d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprwayland-scanner": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772459835,
|
||||
"narHash": "sha256-978jRz/y/9TKmZb/qD4lEYHCQGHpEXGqy+8X2lFZsak=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "0a692d4a645165eebd65f109146b8861e3a925e7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprwire": {
|
||||
"inputs": {
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775414057,
|
||||
"narHash": "sha256-mDpHnf+MkdOxEqIM1TnckYYh9p1SXR8B3KQfNZ12M8s=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwire",
|
||||
"rev": "86012ee01b0fdd8bf3101ef38816f2efbee42490",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwire",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1762977756,
|
||||
@@ -503,29 +134,29 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1775423009,
|
||||
"narHash": "sha256-vPKLpjhIVWdDrfiUM8atW6YkIggCEKdSAlJPzzhkQlw=",
|
||||
"owner": "NixOS",
|
||||
"lastModified": 1779796641,
|
||||
"narHash": "sha256-ZsIrKmhp4vbBXoXXmR/tBXA/UCsAQiJL9vsgZEduhVY=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "68d8aa3d661f0e6bd5862291b5bb263b2a6595c9",
|
||||
"rev": "25f538306313eae3927264466c70d7001dcea1df",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-25.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1775423009,
|
||||
"narHash": "sha256-vPKLpjhIVWdDrfiUM8atW6YkIggCEKdSAlJPzzhkQlw=",
|
||||
"lastModified": 1779560665,
|
||||
"narHash": "sha256-tpyBcxPpcQb8ukyNF7DoCwfSY3VPsxHoYwj00Cayv5o=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "68d8aa3d661f0e6bd5862291b5bb263b2a6595c9",
|
||||
"rev": "64c08a7ca051951c8eae34e3e3cb1e202fe36786",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -541,14 +172,14 @@
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems_2"
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775307257,
|
||||
"narHash": "sha256-y9hEecHH4ennFwIcw1n480YCGh73DkEmizmQnyXuvgg=",
|
||||
"lastModified": 1780161591,
|
||||
"narHash": "sha256-eOiIbCMsYMP9JgZXzuT/m41djqDOEHTKjMFrm5NeVHM=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "2e008bb941f72379d5b935d5bfe70ed8b7c793ff",
|
||||
"rev": "57e5355a843618a717a19d43b2a726a8f27f0bd1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -557,29 +188,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775036584,
|
||||
"narHash": "sha256-zW0lyy7ZNNT/x8JhzFHBsP2IPx7ATZIPai4FJj12BgU=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "4e0eb042b67d863b1b34b3f64d52ceb9cd926735",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pyproject-build-systems": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -596,11 +204,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771423342,
|
||||
"narHash": "sha256-7uXPiWB0YQ4HNaAqRvVndYL34FEp1ZTwVQHgZmyMtC8=",
|
||||
"lastModified": 1776659114,
|
||||
"narHash": "sha256-qapCOQmR++yZSY43dzrp3wCrkOTLpod+ONtJWBk6iKU=",
|
||||
"owner": "pyproject-nix",
|
||||
"repo": "build-system-pkgs",
|
||||
"rev": "04e9c186e01f0830dad3739088070e4c551191a4",
|
||||
"rev": "ffaa2161dd5d63e0e94591f86b54fc239660fb2e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -617,11 +225,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771518446,
|
||||
"narHash": "sha256-nFJSfD89vWTu92KyuJWDoTQJuoDuddkJV3TlOl1cOic=",
|
||||
"lastModified": 1776715674,
|
||||
"narHash": "sha256-Gs1VnEkCkkRZxJQAC/Dhz0Jbfi22mFXChbtNg9w/Ybg=",
|
||||
"owner": "pyproject-nix",
|
||||
"repo": "pyproject.nix",
|
||||
"rev": "eb204c6b3335698dec6c7fc1da0ebc3c6df05937",
|
||||
"rev": "69f57f27e52a87c54e28138a75ec741cd46663c9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -635,26 +243,28 @@
|
||||
"catppuccin": "catppuccin",
|
||||
"home-manager": "home-manager",
|
||||
"hyprcursor-phinger": "hyprcursor-phinger",
|
||||
"hyprland": "hyprland",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs-stable": "nixpkgs-stable",
|
||||
"nixvim": "nixvim",
|
||||
"wallpapers": "wallpapers",
|
||||
"zen-browser": "zen-browser",
|
||||
"zut-calendar": "zut-calendar",
|
||||
"zutui": "zutui"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"lastModified": 1774449309,
|
||||
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"repo": "default",
|
||||
"rev": "c29398b59d2048c4ab79345812849c9bd15e9150",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"ref": "future-26.11",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
@@ -673,21 +283,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"uv2nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -700,11 +295,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772408201,
|
||||
"narHash": "sha256-3Va9Tq/tg9ZuCX+PFd9oPgwtBDQRjjh60cYKZjZDxNM=",
|
||||
"lastModified": 1777895960,
|
||||
"narHash": "sha256-KebDsQd+A7pm++Tp0744EjULttHvz1wbKqNKkMA/088=",
|
||||
"owner": "pyproject-nix",
|
||||
"repo": "uv2nix",
|
||||
"rev": "4bac9176117824d4550deeba9b86d9f96ac5d081",
|
||||
"rev": "5ad90d48b80ecc920ca2247d53f46beba302e186",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -729,44 +324,24 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xdph": {
|
||||
"zen-browser": {
|
||||
"inputs": {
|
||||
"hyprland-protocols": [
|
||||
"hyprland",
|
||||
"hyprland-protocols"
|
||||
],
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"hyprutils": [
|
||||
"hyprland",
|
||||
"hyprutils"
|
||||
],
|
||||
"hyprwayland-scanner": [
|
||||
"hyprland",
|
||||
"hyprwayland-scanner"
|
||||
],
|
||||
"home-manager": "home-manager_2",
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773601989,
|
||||
"narHash": "sha256-2tJf/CQoHApoIudxHeJye+0Ii7scR0Yyi7pNiWk0Hn8=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "a9b862d1aa000a676d310cc62d249f7ad726233d",
|
||||
"lastModified": 1780123543,
|
||||
"narHash": "sha256-vRHmt1N3rPgLJFcSQfHb2c3F7edzVPcyAk6/2QYmO1s=",
|
||||
"owner": "0xc000022070",
|
||||
"repo": "zen-browser-flake",
|
||||
"rev": "7e1dae7aa169ad02f18ca11da247008181b2dc7f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"owner": "0xc000022070",
|
||||
"repo": "zen-browser-flake",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
@@ -780,11 +355,11 @@
|
||||
"uv2nix": "uv2nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773515729,
|
||||
"narHash": "sha256-+TfrJdqRxmzarLednTCFfxDi1uGNYnIbtyLAFw2Pj0U=",
|
||||
"lastModified": 1778101628,
|
||||
"narHash": "sha256-6/x1NOD8QyI+up09LsQdyX7EEd0w7Qr5o9JeQ3AqLHk=",
|
||||
"owner": "szymon-jozef",
|
||||
"repo": "zut-calendar",
|
||||
"rev": "3284491807e196414445326d11913b43e7a0225f",
|
||||
"rev": "b69ae15381ca37f763c1ef072c67d953017c8bd4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
34
flake.nix
34
flake.nix
@@ -3,18 +3,25 @@
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-25.11";
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
# hyprland.url = "github:hyprwm/Hyprland";
|
||||
|
||||
nixvim = {
|
||||
url = "github:nix-community/nixvim";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
zen-browser = {
|
||||
url = "github:0xc000022070/zen-browser-flake";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
# theming stuff
|
||||
catppuccin = {
|
||||
url = "github:catppuccin/nix";
|
||||
@@ -42,6 +49,7 @@
|
||||
outputs =
|
||||
{
|
||||
nixpkgs,
|
||||
nixpkgs-stable,
|
||||
home-manager,
|
||||
catppuccin,
|
||||
nixvim,
|
||||
@@ -62,14 +70,20 @@
|
||||
statusBar = "ashell"; # available: ashell | waybar
|
||||
|
||||
pathConfig = {
|
||||
wallpaper = "Obrazy/tapety/catppuccin";
|
||||
screenshot = "Obrazy/zrzuty/";
|
||||
obsidian = "Dokumenty/obsidian";
|
||||
wallpaper = "Obrazy/tapety/catppuccin"; # relative to $HOME/
|
||||
screenshot = "Obrazy/zrzuty/"; # relative to $HOME/
|
||||
obsidian = "Dokumenty/obsidian"; # relative to $HOME/
|
||||
projects = "~/Kodowanie";
|
||||
documents = "~/Dokumenty";
|
||||
pictures = "~/Obrazy";
|
||||
downloads = "~/Pobrane";
|
||||
video = "~/Video";
|
||||
};
|
||||
|
||||
isNixOS = true;
|
||||
hostName = "default";
|
||||
animations = true;
|
||||
gaming = true;
|
||||
};
|
||||
|
||||
system = "x86_64-linux";
|
||||
@@ -79,6 +93,16 @@
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
|
||||
pkgs-stable = import nixpkgs-stable {
|
||||
inherit system;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
permittedInsecurePackages = [
|
||||
"electron-38.8.4"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
mkHome =
|
||||
customConfig:
|
||||
let
|
||||
@@ -88,7 +112,7 @@
|
||||
inherit pkgs;
|
||||
|
||||
extraSpecialArgs = {
|
||||
inherit inputs userConfig;
|
||||
inherit inputs userConfig pkgs-stable;
|
||||
};
|
||||
|
||||
modules = [
|
||||
|
||||
3
home.nix
3
home.nix
@@ -21,7 +21,7 @@
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
flavor = "mocha";
|
||||
accent = "mauve";
|
||||
accent = "sapphire";
|
||||
};
|
||||
|
||||
imports = [
|
||||
@@ -42,6 +42,7 @@
|
||||
./modules/cli/git.nix
|
||||
./modules/cli/fastfetch.nix
|
||||
./modules/cli/kdeconnect.nix
|
||||
./modules/cli/topgrade.nix
|
||||
# gui tools
|
||||
./modules/gui/kitty.nix
|
||||
./modules/gui/satty.nix
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
modules = {
|
||||
|
||||
left = [
|
||||
"Clock"
|
||||
"Tempo"
|
||||
"Workspaces"
|
||||
];
|
||||
center = [ "WindowTitle" ];
|
||||
@@ -66,8 +66,13 @@
|
||||
}
|
||||
];
|
||||
|
||||
clock = {
|
||||
format = "%H:%M | %e.%m ";
|
||||
tempo = {
|
||||
clock_format = "%H:%M | %e.%m ";
|
||||
};
|
||||
|
||||
media_player = {
|
||||
max_title_length = 50;
|
||||
indicator_format = "Icon";
|
||||
};
|
||||
|
||||
settings = {
|
||||
@@ -76,7 +81,7 @@
|
||||
|
||||
appearance = {
|
||||
scale_factor = 1.2;
|
||||
style = "Gradient";
|
||||
style = "Islands";
|
||||
success_color = "#a6e3a1";
|
||||
text_color = "#cdd6f4";
|
||||
workspace_colors = [
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.bat = {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.fastfetch = {
|
||||
|
||||
@@ -200,11 +200,31 @@
|
||||
end
|
||||
'';
|
||||
};
|
||||
|
||||
blog_build_and_push = {
|
||||
body =
|
||||
# fish
|
||||
''
|
||||
set USER szymon
|
||||
set HOST dmowski
|
||||
set DIR /srv/blog/
|
||||
set blog_dir ~/Dokumenty/blog
|
||||
|
||||
pushd $blog_dir || exit 1
|
||||
|
||||
hugo build && rsync -avz --delete public/ $USER@$HOST:$DIR
|
||||
|
||||
popd
|
||||
|
||||
exit 0
|
||||
'';
|
||||
};
|
||||
};
|
||||
shellAliases = {
|
||||
ls = "eza --long --icons --group-directories-first --git";
|
||||
lst = "eza --long --icons --color --git --tree";
|
||||
rm = "trash";
|
||||
# update = "topgrade";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ ... }:
|
||||
{ pkgs, userConfig, ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
@@ -124,6 +124,15 @@
|
||||
key = "}}";
|
||||
action = "}}zz";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
key = "<leader>cr";
|
||||
action = ":w<CR>:TermExec cmd='mkdir -p ./out && g++ \"%\" -o \"./out/%:r\" && ./out/\"%:r\"'<CR>";
|
||||
options = {
|
||||
desc = "Compile and run current cpp file";
|
||||
silent = true;
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
autoGroups = {
|
||||
@@ -215,16 +224,26 @@
|
||||
installRustc = true;
|
||||
};
|
||||
# nix
|
||||
nil_ls.enable = true;
|
||||
nixd = {
|
||||
enable = true;
|
||||
filetypes = [ "nix" ];
|
||||
formatting = {
|
||||
command = [ "nixfmt" ];
|
||||
};
|
||||
|
||||
nixpkgs.expr = ''
|
||||
import (builtins.getFlake "/etc/nixos/").inputs.nixpkgs { }
|
||||
'';
|
||||
home-manager.expr = ''
|
||||
(builtins.getFlake "/home/${userConfig.username}/.home-manager").homeConfigurations."${userConfig.username}@${userConfig.hostName}".options
|
||||
'';
|
||||
};
|
||||
# other
|
||||
marksman.enable = true;
|
||||
};
|
||||
keymaps = {
|
||||
lspBuf = {
|
||||
"gd" = "definition";
|
||||
"gi" = "implementation";
|
||||
"<leader>ca" = "code_action";
|
||||
"<leader>cf" = "format";
|
||||
"<leader>r" = "rename";
|
||||
};
|
||||
};
|
||||
@@ -252,6 +271,8 @@
|
||||
settings.draw.delay = 0;
|
||||
};
|
||||
|
||||
toggleterm.enable = true;
|
||||
|
||||
cmp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
||||
53
modules/cli/topgrade.nix
Normal file
53
modules/cli/topgrade.nix
Normal file
@@ -0,0 +1,53 @@
|
||||
{ ... }:
|
||||
|
||||
let
|
||||
system_path = "/etc/nixos";
|
||||
home_path = "~/.config/home-manager/";
|
||||
in
|
||||
{
|
||||
programs.topgrade = {
|
||||
enable = true;
|
||||
settings = {
|
||||
misc = {
|
||||
assume_yes = true;
|
||||
pre_sudo = true;
|
||||
disable = [
|
||||
"flutter"
|
||||
"node"
|
||||
"hyprpm"
|
||||
];
|
||||
cleanup = false;
|
||||
notify_end = "never";
|
||||
nix_handle = "nh";
|
||||
};
|
||||
|
||||
git = {
|
||||
repos = [ "$XDG_PROJECTS_DIR/*" ];
|
||||
};
|
||||
|
||||
pre_commands = {
|
||||
"Git commit before system flake update" =
|
||||
"cd ${system_path} && git add -A && git commit --allow-empty -m 'chore: state before system update'";
|
||||
"Git commit before home flake update" =
|
||||
"cd ${home_path} && git add -A && git commit --allow-empty -m 'chore: state before home update'";
|
||||
"Git pull before system flake update " = "cd ${system_path} && git pull";
|
||||
"Git pull before home flake update " = "cd ${home_path} && git pull";
|
||||
};
|
||||
|
||||
commands = {
|
||||
"Update system flake" = "cd ${system_path} && nix flake update";
|
||||
"Update home flake" = "cd ${home_path} && nix flake update";
|
||||
};
|
||||
|
||||
post_commands = {
|
||||
"Git commit after system flake update" =
|
||||
"cd ${system_path} && git add -A && git commit --allow-empty -m 'chore: state after system update'";
|
||||
"Git commit after home flake update" =
|
||||
"cd ${home_path} && git add -A && git commit --allow-empty -m 'chore: state after home update'";
|
||||
"Git push system configuration" = "cd ${system_path} && git push";
|
||||
"Git push home configuration" = "cd ${home_path} && git push";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{ ... }:
|
||||
{ userConfig, ... }:
|
||||
|
||||
{
|
||||
programs.yazi = {
|
||||
@@ -37,6 +37,41 @@
|
||||
"yank"
|
||||
];
|
||||
}
|
||||
{
|
||||
on = [
|
||||
"g"
|
||||
"p"
|
||||
];
|
||||
run = "cd ${userConfig.pathConfig.downloads}";
|
||||
}
|
||||
{
|
||||
on = [
|
||||
"g"
|
||||
"d"
|
||||
];
|
||||
run = "cd ${userConfig.pathConfig.documents}";
|
||||
}
|
||||
{
|
||||
on = [
|
||||
"g"
|
||||
"v"
|
||||
];
|
||||
run = "cd ${userConfig.pathConfig.video}";
|
||||
}
|
||||
{
|
||||
on = [
|
||||
"g"
|
||||
"o"
|
||||
];
|
||||
run = "cd ${userConfig.pathConfig.pictures}";
|
||||
}
|
||||
{
|
||||
on = [
|
||||
"g"
|
||||
"k"
|
||||
];
|
||||
run = "cd ${userConfig.pathConfig.projects}";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.zoxide = {
|
||||
|
||||
@@ -1,8 +1,20 @@
|
||||
{ userConfig, lib, ... }:
|
||||
{
|
||||
userConfig,
|
||||
pkgs,
|
||||
lib,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
package = lib.mkIf (!userConfig.isNixOS) null;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
inputs.zen-browser.packages."${pkgs.stdenv.hostPlatform.system}".default
|
||||
tutanota-desktop
|
||||
brave
|
||||
];
|
||||
}
|
||||
|
||||
@@ -10,9 +10,9 @@
|
||||
enable_audio_bell = false;
|
||||
mouse_hide_wait = "-1.0";
|
||||
window_padding_width = 10;
|
||||
background_opacity = "0.5";
|
||||
font_size = 14;
|
||||
background_blur = 5;
|
||||
background_opacity = "0.95";
|
||||
font_size = 12;
|
||||
background_blur = 15;
|
||||
symbol_map =
|
||||
let
|
||||
mappings = [
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
userConfig,
|
||||
...
|
||||
@@ -10,7 +9,8 @@
|
||||
|
||||
programs.mangohud = {
|
||||
enable = true;
|
||||
package = if userConfig.isNixOS then pkgs.mangohud else (pkgs.runCommand "dummy-mangohud" { } "mkdir $out");
|
||||
package =
|
||||
if userConfig.isNixOS then pkgs.mangohud else (pkgs.runCommand "dummy-mangohud" { } "mkdir $out");
|
||||
};
|
||||
|
||||
xdg.configFile."MangoHud/MangoHud.conf".text = ''
|
||||
|
||||
@@ -1,480 +1,13 @@
|
||||
{ ... }:
|
||||
{
|
||||
lib,
|
||||
userConfig,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
exe = pkg: bin: if userConfig.isNixOS then "${pkg}/bin/${bin}" else "/usr/bin/${bin}";
|
||||
|
||||
jq = exe pkgs.jq "jq";
|
||||
grim = exe pkgs.grim "grim";
|
||||
satty = exe pkgs.satty "satty";
|
||||
wl_copy = exe pkgs.wl-clipboard "wl-copy";
|
||||
notify_send = exe pkgs.libnotify "notify-send";
|
||||
xdg-desktop-portal-hyprland =
|
||||
if userConfig.isNixOS then
|
||||
"${pkgs.xdg-desktop-portal-hyprland}/libexec/xdg-desktop-portal-hyprland"
|
||||
else
|
||||
"/usr/lib/xdg-desktop-portal-hyprland";
|
||||
hyprlock = exe pkgs.hyprlock "hyprlock";
|
||||
playerctl = exe pkgs.playerctl "playerctl";
|
||||
in
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package =
|
||||
if userConfig.isNixOS then
|
||||
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland
|
||||
else
|
||||
null;
|
||||
portalPackage = lib.mkIf (userConfig.isNixOS
|
||||
) inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
xwayland.enable = true;
|
||||
|
||||
settings = {
|
||||
"$mainMod" = "SUPER";
|
||||
"$terminal" = "uwsm app -- kitty";
|
||||
"$menu" = "hyprlauncher";
|
||||
"$music_player" = if userConfig.isNixOS then "spotify" else "flatpak run com.spotify.Client";
|
||||
"$notes" = "obsidian";
|
||||
"$browser" = if userConfig.isNixOS then "zen-beta" else "zen-browser"; # beta on nixos
|
||||
"$openrgb_color" = "09ce30";
|
||||
|
||||
env = [
|
||||
"XCURSOR_SIZE, 32"
|
||||
"HYPRCURSOR_SIZE, 32"
|
||||
"HYPRCURSOR_THEME, theme_phinger-cursors-light"
|
||||
"XDG_CURRENT_DESKTOP,Hyprland"
|
||||
];
|
||||
|
||||
general = {
|
||||
gaps_in = 4;
|
||||
gaps_out = 6;
|
||||
border_size = 4;
|
||||
"col.active_border" = "$blue $sky";
|
||||
"col.inactive_border" = "$overlay1";
|
||||
resize_on_border = false;
|
||||
allow_tearing = false;
|
||||
layout = "scrolling";
|
||||
};
|
||||
|
||||
animations = {
|
||||
enabled = userConfig.animations;
|
||||
bezier = [
|
||||
"easeOutQuint,0.23,1,0.32,1"
|
||||
"easeInOutCubic,0.65,0.05,0.36,1"
|
||||
"linear,0,0,1,1"
|
||||
"almostLinear,0.5,0.5,0.75,1.0"
|
||||
"quick,0.15,0,0.1,1"
|
||||
];
|
||||
animation = [
|
||||
"global, 1, 7, default"
|
||||
"border, 1, 3.39, easeOutQuint"
|
||||
"windows, 1, 2.79, easeOutQuint"
|
||||
"windowsIn, 1, 2.1, easeOutQuint, popin 87%"
|
||||
"windowsOut, 1, 1, linear, popin 87%"
|
||||
"fadeIn, 1, 1.4, almostLinear"
|
||||
"fadeOut, 1, 1.2, almostLinear"
|
||||
"fade, 1, 3.03, quick"
|
||||
"layers, 1, 2, easeOutQuint"
|
||||
"layersIn, 1, 2, easeOutQuint, fade"
|
||||
"layersOut, 1, 1, linear, fade"
|
||||
"fadeLayersIn, 1, 1.4, almostLinear"
|
||||
"fadeLayersOut, 1, 1.1, almostLinear"
|
||||
"workspaces, 1, 1.4, quick, slidevert"
|
||||
"workspacesIn, 1, 0.5, quick, slidevert"
|
||||
"workspacesOut, 1, 0.5, quick, slidevert"
|
||||
];
|
||||
};
|
||||
|
||||
decoration = {
|
||||
rounding = 1;
|
||||
rounding_power = 2;
|
||||
active_opacity = 1.0;
|
||||
inactive_opacity = 1.0;
|
||||
shadow = {
|
||||
enabled = true;
|
||||
range = 1;
|
||||
render_power = 1;
|
||||
color = "$overlay0";
|
||||
};
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 1;
|
||||
passes = 1;
|
||||
vibrancy = 0.1696;
|
||||
};
|
||||
};
|
||||
|
||||
dwindle = {
|
||||
pseudotile = true;
|
||||
preserve_split = true;
|
||||
};
|
||||
|
||||
master = {
|
||||
new_status = "slave";
|
||||
allow_small_split = true;
|
||||
orientation = "left";
|
||||
};
|
||||
|
||||
ecosystem = {
|
||||
enforce_permissions = true;
|
||||
};
|
||||
|
||||
permission = [
|
||||
"^${grim}$, screencopy, allow"
|
||||
"^${hyprlock}$, screencopy, allow"
|
||||
"^${xdg-desktop-portal-hyprland}$, screencopy, allow"
|
||||
];
|
||||
|
||||
input = {
|
||||
kb_layout = "pl";
|
||||
kb_variant = "";
|
||||
kb_model = "";
|
||||
kb_options = "caps:escape_shifted_capslock";
|
||||
kb_rules = "";
|
||||
follow_mouse = 1;
|
||||
left_handed = false;
|
||||
sensitivity = -0.5;
|
||||
touchpad = {
|
||||
natural_scroll = true;
|
||||
};
|
||||
};
|
||||
|
||||
device = {
|
||||
name = "msft0001:01-06cb:7f28-touchpad";
|
||||
sensitivity = 0;
|
||||
};
|
||||
|
||||
cursor = {
|
||||
no_hardware_cursors = true;
|
||||
inactive_timeout = 5;
|
||||
warp_on_change_workspace = 1;
|
||||
zoom_factor = 1.0;
|
||||
hide_on_key_press = 1;
|
||||
};
|
||||
|
||||
misc = {
|
||||
force_default_wallpaper = 0;
|
||||
disable_hyprland_logo = true;
|
||||
middle_click_paste = false;
|
||||
};
|
||||
|
||||
xwayland = {
|
||||
force_zero_scaling = 1;
|
||||
};
|
||||
|
||||
quirks = {
|
||||
prefer_hdr = 1;
|
||||
};
|
||||
|
||||
"exec-once" = [
|
||||
"wl-paste --type text --watch cliphist store"
|
||||
"wl-paste --type image --watch cliphist store"
|
||||
"uwsm app -- ${userConfig.statusBar}"
|
||||
"awww-daemon"
|
||||
"openrgb -c $openrgb_color"
|
||||
];
|
||||
|
||||
workspace = [
|
||||
"1, monitor:DP-2"
|
||||
"1, layout: dwindle"
|
||||
"2, monitor:DP-1"
|
||||
"3, monitor:DP-1"
|
||||
"4, monitor:DP-1"
|
||||
"5, monitor:DP-1"
|
||||
"6, monitor:DP-1"
|
||||
"7, monitor:HDMI-A-2"
|
||||
"9, monitor:DP-2"
|
||||
"10, monitor:DP-2"
|
||||
"w[tv1], gapsout:0, gapsin:0"
|
||||
"f[1], gapsout:0, gapsin:0"
|
||||
];
|
||||
|
||||
windowrule = [
|
||||
# smart gaps
|
||||
"border_size 0, match:float 0, match:workspace w[tv1]"
|
||||
"rounding 0, match:float 0, match:workspace w[tv1]"
|
||||
"border_size 0, match:float 0, match:workspace f[1]"
|
||||
"rounding 0, match:float 0, match:workspace f[1]"
|
||||
# general rules
|
||||
"match:class ^(signal)$, workspace 1"
|
||||
"match:class ^(vesktop)$, workspace 1 silent"
|
||||
"match:class ^(chrome-facebook.com__-Default)$, workspace 1"
|
||||
"match:class ^(zen)$, workspace 2"
|
||||
"match:class ^(zen-beta)$, workspace 2"
|
||||
"match:class ^(com.github.IsmaelMartinez.teams_for_linux)$, workspace 2"
|
||||
"match:class ^(FreeTube)$, workspace 2"
|
||||
"match:class ^(brave-x.com__-Default)$, workspace 2"
|
||||
"match:class ^(chrome-www.inoreader.com__all_articles-Default)$, workspace 2"
|
||||
"match:class ^(chrome-mail.proton.me__u_0_inbox.com-Default)$, workspace 2"
|
||||
"match:class ^(chrome-app.tuta.com__-Default)$, workspace 2"
|
||||
"match:class ^(steam)$, workspace 3 silent"
|
||||
"match:class ^(heroic)$, workspace 3"
|
||||
"match:class ^(net.lutris.Lutris)$, workspace 3"
|
||||
"match:class ^(rpcs3)$, workspace 3"
|
||||
"match:class ^(winboat)$, workspace 5"
|
||||
"match:class ^(qemu)$, workspace 5"
|
||||
"match:class ^(obsidian)$, workspace 6"
|
||||
"match:class ^(gimp)$, workspace 8"
|
||||
"match:class .*potify, workspace 9 silent"
|
||||
"match:class ^(com.obsproject.Studio)$, workspace 10"
|
||||
];
|
||||
|
||||
bind =
|
||||
# hyprlang
|
||||
[
|
||||
# background
|
||||
"$mainMod, V, exec, cliphist list | hyprlauncher -m | cliphist decode | wl-copy"
|
||||
"$mainMod ALT_L, V, exec, cliphist wipe && notify-send \"Clipboard\" \"Clipboard cleared!\""
|
||||
# power management
|
||||
"$mainMod L_SHIFT ctrl, l, exec, hyprlock"
|
||||
"$mainMod L_SHIFT ctrl, r, exec, openrgb -c black && systemctl reboot"
|
||||
"$mainMod L_SHIFT ctrl, p, exec, openrgb -c black && systemctl poweroff"
|
||||
"$mainMod L_SHIFT ctrl, s, exec, openrgb -c black && pidof hyprlock || sleep 1 && systemctl sleep"
|
||||
"$mainMod L_SHIFT ctrl, m, exec, uwsm stop"
|
||||
# zoom
|
||||
"$mainMod alt, 0, exec, hyprctl -q keyword cursor:zoom_factor 1"
|
||||
# focus management
|
||||
"$mainMod, h, movefocus, l"
|
||||
"$mainMod, l, movefocus, r"
|
||||
"$mainMod, k, movefocus, u"
|
||||
"$mainMod, j, movefocus, d"
|
||||
"$mainMod, mouse_down, workspace, e+1"
|
||||
"$mainMod, mouse_up, workspace, e-1"
|
||||
"$mainMod L_SHIFT, right, exec, hyprctl dispatch movecurrentworkspacetomonitor +1"
|
||||
"$mainMod L_SHIFT, left, exec, hyprctl dispatch movecurrentworkspacetomonitor -1"
|
||||
# workspace management
|
||||
"$mainMod, 1, workspace, 1"
|
||||
"$mainMod, 2, workspace, 2"
|
||||
"$mainMod, 3, workspace, 3"
|
||||
"$mainMod, 4, workspace, 4"
|
||||
"$mainMod, 5, workspace, 5"
|
||||
"$mainMod, 6, workspace, 6"
|
||||
"$mainMod, 7, workspace, 7"
|
||||
"$mainMod, 8, workspace, 8"
|
||||
"$mainMod, 9, workspace, 9"
|
||||
"$mainMod, 0, workspace, 10"
|
||||
# window management
|
||||
"$mainMod SHIFT, 1, movetoworkspace, 1"
|
||||
"$mainMod SHIFT, 2, movetoworkspace, 2"
|
||||
"$mainMod SHIFT, 3, movetoworkspace, 3"
|
||||
"$mainMod SHIFT, 4, movetoworkspace, 4"
|
||||
"$mainMod SHIFT, 5, movetoworkspace, 5"
|
||||
"$mainMod SHIFT, 6, movetoworkspace, 6"
|
||||
"$mainMod SHIFT, 7, movetoworkspace, 7"
|
||||
"$mainMod SHIFT, 8, movetoworkspace, 8"
|
||||
"$mainMod SHIFT, 9, movetoworkspace, 9"
|
||||
"$mainMod SHIFT, 0, movetoworkspace, 10"
|
||||
# special workspace
|
||||
"$mainMod, TAB, togglespecialworkspace, magic"
|
||||
"$mainMod SHIFT, TAB, movetoworkspace, special:magic"
|
||||
# layout
|
||||
"$mainMod, S, layoutmsg, swapwithmaster"
|
||||
"$mainMod, n, layoutmsg, swapnext"
|
||||
"$mainMod, p, layoutmsg, swapprev"
|
||||
# apps
|
||||
"$mainMod, M, exec, [float] waypaper"
|
||||
"$mainMod, RETURN, exec, [workspace 4] $terminal"
|
||||
"$mainMod CONTROL_L, RETURN, exec, $terminal"
|
||||
"$mainMod, space , exec, $menu"
|
||||
"$mainMod ALT_L, c, exec, openrgb -c $openrgb_color"
|
||||
"$mainMod Control_L, s, exec,[workspace 1] signal-desktop --password-store=\"kwallet6\""
|
||||
"$mainMod Control_L, s, focuswindow, class:^(signal)$"
|
||||
"$mainMod Control_L, s, focuswindow, title:^(signal)$"
|
||||
"$mainMod Control_L, v, sendshortcut, ctrl, k, class:^(vesktop)$"
|
||||
"$mainMod Control_L, v, exec, uwsm app -- vesktop"
|
||||
"$mainMod Control_L, v, focuswindow, class:^(vesktop)$"
|
||||
"$mainMod Control_L, g, exec, uwsm app -- steam"
|
||||
"$mainMod Control_L, g, focuswindow, class:^(steam)$"
|
||||
"$mainMod Control_L, b, exec, uwsm app -- $browser"
|
||||
"$mainMod Control_L, b, focuswindow, class:^(zen)$"
|
||||
"$mainMod Control_L, n, exec, [workspace 6] uwsm app -- $notes"
|
||||
"$mainMod Control_L, n, focuswindow, class:^(obsidian)$"
|
||||
"$mainMod Control_L, m, exec, [workspace 9] uwsm app -- $music_player"
|
||||
"$mainMod Control_L, f, exec, uwsm app -- freetube"
|
||||
"$mainMod Control_L, f, focuswindow, class:^(freetube)$"
|
||||
"$mainMod Control_L, x, exec, uwsm app -- ~/.nix-profile/share/applications/x.desktop"
|
||||
"$mainMod Control_L, x, focuswindow, class:^(chrome-x.com__-Default)$"
|
||||
"$mainMod CONTROL_L L_SHIFT, B, exec, killall ashell && uwsm app -- ashell"
|
||||
];
|
||||
|
||||
binde = [
|
||||
"$mainMod alt, equal, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor | awk '/^float.*/ {print $2 * 1.1}')"
|
||||
"$mainMod alt, minus, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor | awk '/^float.*/ {print $2 * 0.9}')"
|
||||
"$mainMod L_SHIFT, l, resizeactive, 10 0"
|
||||
"$mainMod L_SHIFT, h, resizeactive, -10 0"
|
||||
"$mainMod L_SHIFT, k, resizeactive, 0 -10"
|
||||
"$mainMod L_SHIFT, j, resizeactive, 0 10"
|
||||
];
|
||||
|
||||
bindel = [
|
||||
",XF86MonBrightnessDown, exec, hyprctl hyprsunset gamma -10"
|
||||
",XF86MonBrightnessUp, exec, hyprctl hyprsunset gamma +10"
|
||||
", XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ && ~/.local/bin/wp-vol.sh && paplay /usr/share/sounds/freedesktop/stereo/bell.oga"
|
||||
", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- && ~/.local/bin/wp-vol.sh && paplay /usr/share/sounds/freedesktop/stereo/bell.oga"
|
||||
", XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle"
|
||||
];
|
||||
|
||||
bindt = [
|
||||
", PRINT, exec, ${pkgs.writeShellScript "screenshot-region" ''
|
||||
MONITOR=$(hyprctl monitors -j | ${jq} -r '.[] | select(.focused == true) | .name')
|
||||
${grim} -o "$MONITOR" - | ${satty} -f -
|
||||
''}"
|
||||
|
||||
"$mainMod, PRINT, exec, ${pkgs.writeShellScript "screenshot-fullscreen" ''
|
||||
target_path="$HOME/${userConfig.pathConfig.screenshot}/$(date +'%d-%m-%Y_%H-%M-%S').png"
|
||||
mkdir -p "$(dirname "$target_path")"
|
||||
|
||||
MONITOR=$(hyprctl monitors -j | ${jq} -r '.[] | select(.focused == true) | .name')
|
||||
|
||||
${grim} -o "$MONITOR" "$target_path"
|
||||
${wl_copy} < "$target_path"
|
||||
${notify_send} -i "$target_path" -u low -a "Screenshot" "Screenshot fullscreen" "Saved and copied"
|
||||
''}"
|
||||
|
||||
"alt_l, PRINT, exec, ${pkgs.writeShellScript "screenshot-window" ''
|
||||
target_path="$HOME/${userConfig.pathConfig.screenshot}/$(date +'%d-%m-%Y_%H-%M-%S').png"
|
||||
mkdir -p "$(dirname "$target_path")"
|
||||
|
||||
GEOMETRY=$(hyprctl activewindow -j | ${jq} -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"')
|
||||
|
||||
${grim} -g "$GEOMETRY" "$target_path"
|
||||
${wl_copy} < "$target_path"
|
||||
${notify_send} -i "$target_path" -u low -a "Screenshot" "Screenshot window" "Saved and copied"
|
||||
''}"
|
||||
|
||||
", PAUSE, exec, ${playerctl} play-pause"
|
||||
"$mainMod, PAUSE, exec, ${playerctl} play-pause --player spotify"
|
||||
];
|
||||
|
||||
bindm = [
|
||||
"$mainMod, mouse:272, movewindow"
|
||||
"$mainMod, mouse:273, resizewindow"
|
||||
];
|
||||
|
||||
bindd = [
|
||||
"$mainMod, F, Make app fullscreen, fullscreen"
|
||||
"$mainMod, T, Toggle floating, togglefloating"
|
||||
"$mainMod, Q, Kill active window, killactive"
|
||||
];
|
||||
};
|
||||
|
||||
extraConfig =
|
||||
#hyprlang
|
||||
''
|
||||
windowrule {
|
||||
name = pavucontrol-float
|
||||
match:class = ^(org.pulseaudio.pavucontrol)$
|
||||
float = 1
|
||||
size = 80% 60%
|
||||
stay_focused = 1
|
||||
center = 1
|
||||
pin = 1
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = share-picker-float
|
||||
match:class = ^(hyprland-share-picker)$
|
||||
float = 1
|
||||
center = 1
|
||||
pin = 1
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = steam-friends-list
|
||||
match:title = ^(Lista znajomych)$
|
||||
float = 1
|
||||
center = 1
|
||||
size = 40% 60%
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = vesktop-dont-focus-pls
|
||||
match:class = ^(vesktop)$
|
||||
no_initial_focus = 1
|
||||
focus_on_activate = 0
|
||||
render_unfocused = 1
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = xdg-desktop-portal-gtk
|
||||
match:class = ^(xdg-desktop-portal-gtk)$
|
||||
float = 1
|
||||
center = 1
|
||||
size = 55% 50%
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = picture-in-picture
|
||||
match:title = ^(Obraz w obrazie)$
|
||||
pseudo = 1
|
||||
no_initial_focus = 1
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = login-google-zen
|
||||
match:title = ^(Logowanie – Konta Google — Zen Browser)$
|
||||
float = 1
|
||||
center = 1
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = prism-launcher
|
||||
match:class = ^(org.prismlauncher.PrismLauncher)$
|
||||
workspace = 3
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = gamescope
|
||||
match:class = ^(gamescope)$
|
||||
workspace = 3
|
||||
}
|
||||
|
||||
monitorv2 {
|
||||
output = DP-1
|
||||
mode = 2560x1440@180.06
|
||||
position = 0x0
|
||||
scale = 1
|
||||
vrr = 1
|
||||
supports_wide_color = 1
|
||||
bitdepth = 10
|
||||
sdr_min_luminance = 0.005
|
||||
sdr_max_luminance = 220
|
||||
cm = hdr
|
||||
supports_hdr = 1
|
||||
}
|
||||
|
||||
monitorv2 {
|
||||
output = DP-2
|
||||
mode = 1920x1080@144
|
||||
position = auto-left
|
||||
vrr = 1
|
||||
scale = 1.0
|
||||
}
|
||||
|
||||
monitorv2 {
|
||||
output = HDMI-A-2
|
||||
mode = highres
|
||||
position = auto-up
|
||||
scale = 1
|
||||
}
|
||||
|
||||
# for laptop
|
||||
monitorv2 {
|
||||
output = eDP-1
|
||||
mode = highres
|
||||
position = 0x0
|
||||
scale = 1
|
||||
}
|
||||
|
||||
monitorv2 {
|
||||
output =
|
||||
position = auto-right
|
||||
scale = 1
|
||||
}
|
||||
'';
|
||||
};
|
||||
imports = [
|
||||
./hyprland/general.nix
|
||||
./hyprland/looks.nix
|
||||
./hyprland/layouts.nix
|
||||
./hyprland/hardware.nix
|
||||
./hyprland/apps.nix
|
||||
./hyprland/workspaces.nix
|
||||
./hyprland/env.nix
|
||||
./hyprland/autostart.nix
|
||||
];
|
||||
}
|
||||
|
||||
10
modules/hypr/hyprland/apps.nix
Normal file
10
modules/hypr/hyprland/apps.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./apps/communicators.nix
|
||||
./apps/browser.nix
|
||||
./apps/games.nix
|
||||
./apps/misc.nix
|
||||
];
|
||||
}
|
||||
47
modules/hypr/hyprland/apps/browser.nix
Normal file
47
modules/hypr/hyprland/apps/browser.nix
Normal file
@@ -0,0 +1,47 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
windowrule = [
|
||||
"match:class ^(chrome-facebook.com__-Default)$, workspace 1"
|
||||
"match:class ^(zen)$, workspace 2"
|
||||
"match:class ^(zen-beta)$, workspace 2"
|
||||
"match:class ^(com.github.IsmaelMartinez.teams_for_linux)$, workspace 2"
|
||||
"match:class ^(FreeTube)$, workspace 2"
|
||||
"match:class ^(brave-x.com__-Default)$, workspace 2"
|
||||
"match:class ^(chrome-www.inoreader.com__all_articles-Default)$, workspace 2"
|
||||
"match:class ^(chrome-mail.proton.me__u_0_inbox.com-Default)$, workspace 2"
|
||||
"match:class ^(chrome-app.tuta.com__-Default)$, workspace 2"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"$mainMod Control_L, b, exec, uwsm app -- $browser"
|
||||
"$mainMod Control_L, b, focuswindow, class:^(zen)$"
|
||||
"$mainMod Control_L, f, exec, uwsm app -- freetube"
|
||||
"$mainMod Control_L, f, focuswindow, class:^(freetube)$"
|
||||
"$mainMod Control_L, x, exec, uwsm app -- ~/.nix-profile/share/applications/x.desktop"
|
||||
"$mainMod Control_L, x, focuswindow, class:^(chrome-x.com__-Default)$"
|
||||
];
|
||||
};
|
||||
|
||||
extraConfig =
|
||||
#hyprlang
|
||||
''
|
||||
windowrule {
|
||||
name = picture-in-picture
|
||||
match:title = ^(Obraz w obrazie)$
|
||||
pseudo = 1
|
||||
no_initial_focus = 1
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = login-google-zen
|
||||
match:title = ^(Logowanie – Konta Google — Zen Browser)$
|
||||
float = 1
|
||||
center = 1
|
||||
}
|
||||
|
||||
'';
|
||||
};
|
||||
}
|
||||
36
modules/hypr/hyprland/apps/communicators.nix
Normal file
36
modules/hypr/hyprland/apps/communicators.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
|
||||
windowrule = [
|
||||
# general rules
|
||||
"match:class ^(signal)$, workspace 1"
|
||||
"match:class ^(vesktop)$, workspace 1 silent"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"$mainMod Control_L, s, exec,[workspace 1] $signal_client"
|
||||
"$mainMod Control_L, s, focuswindow, class:^(signal)$"
|
||||
"$mainMod Control_L, s, focuswindow, title:^(signal)$"
|
||||
"$mainMod Control_L, v, sendshortcut, ctrl, k, class:^(vesktop)$"
|
||||
"$mainMod Control_L, v, exec, uwsm app -- vesktop"
|
||||
"$mainMod Control_L, v, focuswindow, class:^(vesktop)$"
|
||||
];
|
||||
|
||||
};
|
||||
extraConfig =
|
||||
#hyprlang
|
||||
''
|
||||
windowrule {
|
||||
name = vesktop-dont-focus-pls
|
||||
match:class = ^(vesktop)$
|
||||
no_initial_focus = 1
|
||||
focus_on_activate = 0
|
||||
render_unfocused = 1
|
||||
}
|
||||
|
||||
'';
|
||||
};
|
||||
}
|
||||
42
modules/hypr/hyprland/apps/games.nix
Normal file
42
modules/hypr/hyprland/apps/games.nix
Normal file
@@ -0,0 +1,42 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
windowrule = [
|
||||
"match:class ^(steam)$, workspace 3 silent"
|
||||
"match:class ^(heroic)$, workspace 3"
|
||||
"match:class ^(net.lutris.Lutris)$, workspace 3"
|
||||
"match:class ^(rpcs3)$, workspace 3"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"$mainMod Control_L, g, exec, uwsm app -- steam"
|
||||
"$mainMod Control_L, g, focuswindow, class:^(steam)$"
|
||||
];
|
||||
};
|
||||
extraConfig =
|
||||
#hyprlang
|
||||
''
|
||||
windowrule {
|
||||
name = steam-friends-list
|
||||
match:title = ^(Lista znajomych)$
|
||||
float = 1
|
||||
center = 1
|
||||
size = 40% 60%
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = prism-launcher
|
||||
match:class = ^(org.prismlauncher.PrismLauncher)$
|
||||
workspace = 3
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = gamescope
|
||||
match:class = ^(gamescope)$
|
||||
workspace = 3
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
61
modules/hypr/hyprland/apps/misc.nix
Normal file
61
modules/hypr/hyprland/apps/misc.nix
Normal file
@@ -0,0 +1,61 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
|
||||
windowrule = [
|
||||
# general rules
|
||||
"match:class ^(winboat)$, workspace 5"
|
||||
"match:class ^(qemu)$, workspace 5"
|
||||
"match:class ^(obsidian)$, workspace 6"
|
||||
"match:class ^(gimp)$, workspace 8"
|
||||
"match:class .*potify, workspace 9 silent"
|
||||
"match:class ^(com.obsproject.Studio)$, workspace 10"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"$mainMod, M, exec, [float] waypaper"
|
||||
"$mainMod, RETURN, exec, [workspace 4] $terminal"
|
||||
"$mainMod CONTROL_L, RETURN, exec, $terminal"
|
||||
"$mainMod, space , exec, $menu"
|
||||
"$mainMod ALT_L, c, exec, openrgb -c $openrgb_color"
|
||||
"$mainMod Control_L, n, exec, [workspace 6] uwsm app -- $notes"
|
||||
"$mainMod Control_L, n, focuswindow, class:^(obsidian)$"
|
||||
"$mainMod Control_L, m, exec, [workspace 9] uwsm app -- $music_player"
|
||||
"$mainMod CONTROL_L L_SHIFT, B, exec, killall ashell && uwsm app -- ashell"
|
||||
];
|
||||
};
|
||||
|
||||
extraConfig =
|
||||
#hyprlang
|
||||
''
|
||||
windowrule {
|
||||
name = pavucontrol-float
|
||||
match:class = ^(org.pulseaudio.pavucontrol)$
|
||||
float = 1
|
||||
size = 80% 60%
|
||||
stay_focused = 1
|
||||
center = 1
|
||||
pin = 1
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = share-picker-float
|
||||
match:class = ^(hyprland-share-picker)$
|
||||
float = 1
|
||||
center = 1
|
||||
pin = 1
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = xdg-desktop-portal-gtk
|
||||
match:class = ^(xdg-desktop-portal-gtk)$
|
||||
float = 1
|
||||
center = 1
|
||||
size = 55% 50%
|
||||
}
|
||||
|
||||
'';
|
||||
};
|
||||
}
|
||||
19
modules/hypr/hyprland/autostart.nix
Normal file
19
modules/hypr/hyprland/autostart.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
userConfig,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
uwsm_run = "${pkgs.uwsm}/bin/uwsm app";
|
||||
in
|
||||
{
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
"exec-once" = [
|
||||
"wl-paste --type text --watch cliphist store"
|
||||
"wl-paste --type image --watch cliphist store"
|
||||
"${uwsm_run} -- ${userConfig.statusBar}"
|
||||
"awww-daemon"
|
||||
"openrgb -c $openrgb_color"
|
||||
];
|
||||
};
|
||||
}
|
||||
42
modules/hypr/hyprland/env.nix
Normal file
42
modules/hypr/hyprland/env.nix
Normal file
@@ -0,0 +1,42 @@
|
||||
{
|
||||
userConfig,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
uwsm_run = "${pkgs.uwsm}/bin/uwsm app";
|
||||
signal_client = "${pkgs.kitty}/bin/kitty --title 'gurk' ${pkgs.gurk-rs}/bin/gurk";
|
||||
in
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
"$mainMod" = "SUPER";
|
||||
"$terminal" = "${uwsm_run} -- ${pkgs.kitty}/bin/kitty";
|
||||
"$menu" = "${pkgs.hyprlauncher}/bin/hyprlauncher";
|
||||
"$music_player" =
|
||||
if userConfig.isNixOS then "${pkgs.spotify}/bin/spotify" else "flatpak run com.spotify.Client";
|
||||
"$notes" = "${pkgs.obsidian}/bin/obsidian";
|
||||
"$browser" = if userConfig.isNixOS then "zen-beta" else "zen-browser"; # beta on nixos
|
||||
"$openrgb_color" = "09ce30";
|
||||
"$signal_client" = signal_client;
|
||||
|
||||
env = [
|
||||
"XCURSOR_SIZE, 32"
|
||||
"HYPRCURSOR_SIZE, 32"
|
||||
"HYPRCURSOR_THEME, theme_phinger-cursors-light"
|
||||
"XDG_CURRENT_DESKTOP,Hyprland"
|
||||
];
|
||||
|
||||
general = {
|
||||
gaps_in = 4;
|
||||
gaps_out = 6;
|
||||
border_size = 4;
|
||||
"col.active_border" = "$blue $sky";
|
||||
"col.inactive_border" = "$overlay1";
|
||||
resize_on_border = false;
|
||||
allow_tearing = false;
|
||||
layout = "scrolling";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
110
modules/hypr/hyprland/general.nix
Normal file
110
modules/hypr/hyprland/general.nix
Normal file
@@ -0,0 +1,110 @@
|
||||
{
|
||||
userConfig,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
exe = pkg: bin: if userConfig.isNixOS then "${pkg}/bin/${bin}" else "/usr/bin/${bin}";
|
||||
jq = exe pkgs.jq "jq";
|
||||
grim = exe pkgs.grim "grim";
|
||||
satty = exe pkgs.satty "satty";
|
||||
wl_copy = exe pkgs.wl-clipboard "wl-copy";
|
||||
notify_send = exe pkgs.libnotify "notify-send";
|
||||
playerctl = exe pkgs.playerctl "playerctl";
|
||||
xdg-desktop-portal-hyprland =
|
||||
if userConfig.isNixOS then
|
||||
"${pkgs.xdg-desktop-portal-hyprland}/libexec/xdg-desktop-portal-hyprland"
|
||||
else
|
||||
"/usr/lib/xdg-desktop-portal-hyprland";
|
||||
in
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
|
||||
enable = true;
|
||||
package =
|
||||
if userConfig.isNixOS then
|
||||
# inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland
|
||||
pkgs.hyprland
|
||||
else
|
||||
null;
|
||||
#portalPackage = lib.mkIf (userConfig.isNixOS
|
||||
#) inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
|
||||
xwayland.enable = true;
|
||||
settings = {
|
||||
ecosystem = {
|
||||
enforce_permissions = true;
|
||||
};
|
||||
|
||||
permission = [
|
||||
"^${pkgs.grim}/bin/grim$, screencopy, allow"
|
||||
"^${pkgs.hyprlock}/bin/hyprlock$, screencopy, allow"
|
||||
"^${xdg-desktop-portal-hyprland}$, screencopy, allow"
|
||||
];
|
||||
|
||||
misc = {
|
||||
force_default_wallpaper = 0;
|
||||
disable_hyprland_logo = true;
|
||||
middle_click_paste = false;
|
||||
};
|
||||
|
||||
xwayland = {
|
||||
force_zero_scaling = 1;
|
||||
};
|
||||
|
||||
quirks = {
|
||||
prefer_hdr = 1;
|
||||
};
|
||||
|
||||
windowrule = [
|
||||
# smart gaps
|
||||
"border_size 0, match:float 0, match:workspace w[tv1]"
|
||||
"rounding 0, match:float 0, match:workspace w[tv1]"
|
||||
"border_size 0, match:float 0, match:workspace f[1]"
|
||||
"rounding 0, match:float 0, match:workspace f[1]"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"$mainMod, V, exec, cliphist list | hyprlauncher -m | cliphist decode | wl-copy"
|
||||
"$mainMod ALT_L, V, exec, cliphist wipe && notify-send \"Clipboard\" \"Clipboard cleared!\""
|
||||
"$mainMod L_SHIFT ctrl, l, exec, hyprlock"
|
||||
"$mainMod L_SHIFT ctrl, r, exec, openrgb -c black && systemctl reboot"
|
||||
"$mainMod L_SHIFT ctrl, p, exec, openrgb -c black && systemctl poweroff"
|
||||
"$mainMod L_SHIFT ctrl, s, exec, openrgb -c black && pidof hyprlock || sleep 1 && systemctl sleep"
|
||||
"$mainMod L_SHIFT ctrl, m, exec, uwsm stop"
|
||||
];
|
||||
|
||||
bindt = [
|
||||
", PRINT, exec, ${pkgs.writeShellScript "screenshot-region" ''
|
||||
MONITOR=$(hyprctl monitors -j | ${jq} -r '.[] | select(.focused == true) | .name')
|
||||
${grim} -o "$MONITOR" - | ${satty} -f -
|
||||
''}"
|
||||
|
||||
"$mainMod, PRINT, exec, ${pkgs.writeShellScript "screenshot-fullscreen" ''
|
||||
target_path="$HOME/${userConfig.pathConfig.screenshot}/$(date +'%d-%m-%Y_%H-%M-%S').png"
|
||||
mkdir -p "$(dirname "$target_path")"
|
||||
|
||||
MONITOR=$(hyprctl monitors -j | ${jq} -r '.[] | select(.focused == true) | .name')
|
||||
|
||||
${grim} -o "$MONITOR" "$target_path"
|
||||
${wl_copy} < "$target_path"
|
||||
${notify_send} -i "$target_path" -u low -a "Screenshot" "Screenshot fullscreen" "Saved and copied"
|
||||
''}"
|
||||
|
||||
"alt_l, PRINT, exec, ${pkgs.writeShellScript "screenshot-window" ''
|
||||
target_path="$HOME/${userConfig.pathConfig.screenshot}/$(date +'%d-%m-%Y_%H-%M-%S').png"
|
||||
mkdir -p "$(dirname "$target_path")"
|
||||
|
||||
GEOMETRY=$(hyprctl activewindow -j | ${jq} -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"')
|
||||
|
||||
${grim} -g "$GEOMETRY" "$target_path"
|
||||
${wl_copy} < "$target_path"
|
||||
${notify_send} -i "$target_path" -u low -a "Screenshot" "Screenshot window" "Saved and copied"
|
||||
''}"
|
||||
|
||||
", PAUSE, exec, ${playerctl} play-pause"
|
||||
"$mainMod, PAUSE, exec, ${playerctl} play-pause --player spotify"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
89
modules/hypr/hyprland/hardware.nix
Normal file
89
modules/hypr/hyprland/hardware.nix
Normal file
@@ -0,0 +1,89 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
input = {
|
||||
kb_layout = "pl";
|
||||
kb_variant = "";
|
||||
kb_model = "";
|
||||
kb_options = "caps:escape_shifted_capslock";
|
||||
kb_rules = "";
|
||||
follow_mouse = 1;
|
||||
left_handed = false;
|
||||
sensitivity = 0;
|
||||
touchpad = {
|
||||
natural_scroll = true;
|
||||
};
|
||||
};
|
||||
|
||||
# mouse has super high dpi so lover the sensitivity!
|
||||
device = {
|
||||
name = "corsair-corsair-m75-gaming-mouse";
|
||||
sensitivity = -0.5;
|
||||
};
|
||||
|
||||
cursor = {
|
||||
no_hardware_cursors = true;
|
||||
inactive_timeout = 5;
|
||||
warp_on_change_workspace = 1;
|
||||
zoom_factor = 1.0;
|
||||
hide_on_key_press = 1;
|
||||
};
|
||||
|
||||
bindel = [
|
||||
",XF86MonBrightnessDown, exec, hyprctl hyprsunset gamma -10"
|
||||
",XF86MonBrightnessUp, exec, hyprctl hyprsunset gamma +10"
|
||||
", XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ && ~/.local/bin/wp-vol.sh && paplay /usr/share/sounds/freedesktop/stereo/bell.oga"
|
||||
", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- && ~/.local/bin/wp-vol.sh && paplay /usr/share/sounds/freedesktop/stereo/bell.oga"
|
||||
", XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle"
|
||||
];
|
||||
};
|
||||
|
||||
extraConfig =
|
||||
#hyprlang
|
||||
''
|
||||
monitorv2 {
|
||||
output = DP-1
|
||||
mode = 2560x1440@180.06
|
||||
position = 0x0
|
||||
scale = 1
|
||||
vrr = 1
|
||||
supports_wide_color = 1
|
||||
bitdepth = 10
|
||||
sdr_min_luminance = 0.005
|
||||
sdr_max_luminance = 220
|
||||
cm = hdr
|
||||
supports_hdr = 1
|
||||
}
|
||||
|
||||
monitorv2 {
|
||||
output = DP-2
|
||||
mode = 1920x1080@144
|
||||
position = auto-left
|
||||
vrr = 1
|
||||
scale = 1.0
|
||||
}
|
||||
|
||||
monitorv2 {
|
||||
output = HDMI-A-2
|
||||
mode = highres
|
||||
position = auto-up
|
||||
scale = 1
|
||||
}
|
||||
# for laptop
|
||||
monitorv2 {
|
||||
output = eDP-1
|
||||
mode = highres
|
||||
position = 0x0
|
||||
scale = 1
|
||||
}
|
||||
|
||||
monitorv2 {
|
||||
output =
|
||||
position = auto-right
|
||||
scale = 1
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
78
modules/hypr/hyprland/layouts.nix
Normal file
78
modules/hypr/hyprland/layouts.nix
Normal file
@@ -0,0 +1,78 @@
|
||||
{
|
||||
...
|
||||
}:
|
||||
{
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
|
||||
dwindle = {
|
||||
preserve_split = true;
|
||||
};
|
||||
|
||||
master = {
|
||||
new_status = "slave";
|
||||
allow_small_split = true;
|
||||
orientation = "left";
|
||||
};
|
||||
|
||||
bind = [
|
||||
"$mainMod, h, movefocus, l"
|
||||
"$mainMod, l, movefocus, r"
|
||||
"$mainMod, k, movefocus, u"
|
||||
"$mainMod, j, movefocus, d"
|
||||
"$mainMod, mouse_down, workspace, e+1"
|
||||
"$mainMod, mouse_up, workspace, e-1"
|
||||
"$mainMod L_SHIFT, right, exec, hyprctl dispatch movecurrentworkspacetomonitor +1"
|
||||
"$mainMod L_SHIFT, left, exec, hyprctl dispatch movecurrentworkspacetomonitor -1"
|
||||
# workspace management
|
||||
"$mainMod, 1, workspace, 1"
|
||||
"$mainMod, 2, workspace, 2"
|
||||
"$mainMod, 3, workspace, 3"
|
||||
"$mainMod, 4, workspace, 4"
|
||||
"$mainMod, 5, workspace, 5"
|
||||
"$mainMod, 6, workspace, 6"
|
||||
"$mainMod, 7, workspace, 7"
|
||||
"$mainMod, 8, workspace, 8"
|
||||
"$mainMod, 9, workspace, 9"
|
||||
"$mainMod, 0, workspace, 10"
|
||||
# window management
|
||||
"$mainMod SHIFT, 1, movetoworkspace, 1"
|
||||
"$mainMod SHIFT, 2, movetoworkspace, 2"
|
||||
"$mainMod SHIFT, 3, movetoworkspace, 3"
|
||||
"$mainMod SHIFT, 4, movetoworkspace, 4"
|
||||
"$mainMod SHIFT, 5, movetoworkspace, 5"
|
||||
"$mainMod SHIFT, 6, movetoworkspace, 6"
|
||||
"$mainMod SHIFT, 7, movetoworkspace, 7"
|
||||
"$mainMod SHIFT, 8, movetoworkspace, 8"
|
||||
"$mainMod SHIFT, 9, movetoworkspace, 9"
|
||||
"$mainMod SHIFT, 0, movetoworkspace, 10"
|
||||
# special workspace
|
||||
"$mainMod, TAB, togglespecialworkspace, magic"
|
||||
"$mainMod SHIFT, TAB, movetoworkspace, special:magic"
|
||||
# layout
|
||||
"$mainMod, S, layoutmsg, swapwithmaster"
|
||||
"$mainMod, n, layoutmsg, swapnext"
|
||||
"$mainMod, p, layoutmsg, swapprev"
|
||||
];
|
||||
|
||||
binde = [
|
||||
"$mainMod alt, equal, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor | awk '/^float.*/ {print $2 * 1.1}')"
|
||||
"$mainMod alt, minus, exec, hyprctl -q keyword cursor:zoom_factor $(hyprctl getoption cursor:zoom_factor | awk '/^float.*/ {print $2 * 0.9}')"
|
||||
"$mainMod alt, 0, exec, hyprctl -q keyword cursor:zoom_factor 1"
|
||||
"$mainMod L_SHIFT, l, resizeactive, 10 0"
|
||||
"$mainMod L_SHIFT, h, resizeactive, -10 0"
|
||||
"$mainMod L_SHIFT, k, resizeactive, 0 -10"
|
||||
"$mainMod L_SHIFT, j, resizeactive, 0 10"
|
||||
];
|
||||
|
||||
bindd = [
|
||||
"$mainMod, F, Make app fullscreen, fullscreen"
|
||||
"$mainMod, T, Toggle floating, togglefloating"
|
||||
"$mainMod, Q, Kill active window, killactive"
|
||||
];
|
||||
|
||||
bindm = [
|
||||
"$mainMod, mouse:272, movewindow"
|
||||
"$mainMod, mouse:273, resizewindow"
|
||||
];
|
||||
};
|
||||
}
|
||||
58
modules/hypr/hyprland/looks.nix
Normal file
58
modules/hypr/hyprland/looks.nix
Normal file
@@ -0,0 +1,58 @@
|
||||
{
|
||||
userConfig,
|
||||
...
|
||||
}:
|
||||
{
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
|
||||
animations = {
|
||||
enabled = userConfig.animations;
|
||||
bezier = [
|
||||
"easeOutQuint,0.23,1,0.32,1"
|
||||
"easeInOutCubic,0.65,0.05,0.36,1"
|
||||
"linear,0,0,1,1"
|
||||
"almostLinear,0.5,0.5,0.75,1.0"
|
||||
"quick,0.15,0,0.1,1"
|
||||
];
|
||||
animation = [
|
||||
"global, 1, 7, default"
|
||||
"border, 1, 3.39, easeOutQuint"
|
||||
"windows, 1, 2.79, easeOutQuint"
|
||||
"windowsIn, 1, 2.1, easeOutQuint, popin 87%"
|
||||
"windowsOut, 1, 1, linear, popin 87%"
|
||||
"fadeIn, 1, 1.4, almostLinear"
|
||||
"fadeOut, 1, 1.2, almostLinear"
|
||||
"fade, 1, 3.03, quick"
|
||||
"layers, 1, 2, easeOutQuint"
|
||||
"layersIn, 1, 2, easeOutQuint, fade"
|
||||
"layersOut, 1, 1, linear, fade"
|
||||
"fadeLayersIn, 1, 1.4, almostLinear"
|
||||
"fadeLayersOut, 1, 1.1, almostLinear"
|
||||
"workspaces, 1, 1.4, quick, slidevert"
|
||||
"workspacesIn, 1, 0.5, quick, slidevert"
|
||||
"workspacesOut, 1, 0.5, quick, slidevert"
|
||||
];
|
||||
};
|
||||
|
||||
decoration = {
|
||||
rounding = 1;
|
||||
rounding_power = 2;
|
||||
active_opacity = 1.0;
|
||||
inactive_opacity = 1.0;
|
||||
shadow = {
|
||||
enabled = true;
|
||||
range = 1;
|
||||
render_power = 1;
|
||||
color = "$overlay0";
|
||||
};
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 1;
|
||||
passes = 1;
|
||||
vibrancy = 0.1696;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
20
modules/hypr/hyprland/workspaces.nix
Normal file
20
modules/hypr/hyprland/workspaces.nix
Normal file
@@ -0,0 +1,20 @@
|
||||
{ ... }:
|
||||
{
|
||||
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
workspace = [
|
||||
"1, monitor:DP-2"
|
||||
"1, layout: dwindle"
|
||||
"2, monitor:DP-1"
|
||||
"3, monitor:DP-1"
|
||||
"4, monitor:DP-1"
|
||||
"5, monitor:DP-1"
|
||||
"6, monitor:DP-1"
|
||||
"7, monitor:HDMI-A-2"
|
||||
"9, monitor:DP-2"
|
||||
"10, monitor:DP-2"
|
||||
"w[tv1], gapsout:0, gapsin:0"
|
||||
"f[1], gapsout:0, gapsin:0"
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,26 +1,71 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
pkgs,
|
||||
pkgs-stable,
|
||||
lib,
|
||||
userConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
rstudio-with-packages = pkgs-stable.rstudioWrapper.override {
|
||||
# we use stable, because unstable is broken rn
|
||||
packages = with pkgs-stable.rPackages; [
|
||||
# additional packages for rstudio here
|
||||
ggplot2
|
||||
];
|
||||
};
|
||||
in
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
libnotify
|
||||
cliphist
|
||||
gh
|
||||
trash-cli
|
||||
pandoc
|
||||
fzf
|
||||
eza
|
||||
fastfetch
|
||||
fd
|
||||
duf
|
||||
gdu
|
||||
jq
|
||||
tealdeer
|
||||
grim
|
||||
slurp
|
||||
bc
|
||||
nh
|
||||
runc
|
||||
];
|
||||
home.packages =
|
||||
with pkgs;
|
||||
[
|
||||
# Cli stuff
|
||||
libnotify
|
||||
cliphist
|
||||
gh
|
||||
trash-cli
|
||||
pandoc
|
||||
fzf
|
||||
eza
|
||||
fastfetch
|
||||
fd
|
||||
duf
|
||||
gdu
|
||||
jq
|
||||
tealdeer
|
||||
grim
|
||||
slurp
|
||||
bc
|
||||
nh
|
||||
runc
|
||||
nixfmt
|
||||
zathura
|
||||
zathuraPkgs.zathura_pdf_mupdf
|
||||
|
||||
# Music
|
||||
spotify
|
||||
|
||||
# Gui stuff
|
||||
homebank
|
||||
gimp
|
||||
rstudio-with-packages
|
||||
feh
|
||||
libreoffice
|
||||
|
||||
# Messaging
|
||||
vesktop
|
||||
signal-desktop
|
||||
|
||||
]
|
||||
++ lib.optionals userConfig.gaming [
|
||||
mangohud
|
||||
prismlauncher
|
||||
heroic
|
||||
# lutris
|
||||
pkgs-stable.rpcs3
|
||||
pcsx2
|
||||
];
|
||||
|
||||
xdg.configFile."containers/containers.conf".text = ''
|
||||
[engine]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ ... }:
|
||||
{ userConfig, ... }:
|
||||
|
||||
let
|
||||
browserFallback = [
|
||||
@@ -7,6 +7,8 @@ let
|
||||
"brave.desktop"
|
||||
"chromium.desktop"
|
||||
];
|
||||
|
||||
imageViewer = "feh.desktop";
|
||||
in
|
||||
{
|
||||
xdg.portal.config = {
|
||||
@@ -38,9 +40,12 @@ in
|
||||
"audio/mpeg" = [ "mpv.desktop" ];
|
||||
|
||||
"image/*" = [ "org.kde.koko.desktop" ];
|
||||
"image/png" = [ "feh.desktop" ];
|
||||
"image/bmp" = [ "feh.desktop" ];
|
||||
"image/svg+xml" = [ "feh.desktop" ];
|
||||
"image/png" = [ imageViewer ];
|
||||
"image/jpeg" = [ imageViewer ];
|
||||
"image/jpg" = [ imageViewer ];
|
||||
"image/bmp" = [ imageViewer ];
|
||||
"image/svg+xml" = [ imageViewer ];
|
||||
"image/webp" = [ imageViewer ];
|
||||
|
||||
"x-scheme-handler/discord" = [ "vesktop.desktop" ];
|
||||
"x-scheme-handler/sgnl" = [ "signal-desktop.desktop" ];
|
||||
@@ -52,11 +57,12 @@ in
|
||||
enable = true;
|
||||
createDirectories = true;
|
||||
desktop = null;
|
||||
documents = "$HOME/Dokumenty";
|
||||
download = "$HOME/Pobrane";
|
||||
documents = baseNameOf userConfig.pathConfig.documents;
|
||||
download = baseNameOf userConfig.pathConfig.downloads;
|
||||
music = null;
|
||||
pictures = "$HOME/Obrazy";
|
||||
videos = "$HOME/Video";
|
||||
pictures = baseNameOf userConfig.pathConfig.pictures;
|
||||
videos = baseNameOf userConfig.pathConfig.video;
|
||||
projects = baseNameOf userConfig.pathConfig.projects;
|
||||
templates = null;
|
||||
publicShare = null;
|
||||
setSessionVariables = true;
|
||||
|
||||
Reference in New Issue
Block a user