Merge branch 'master' of github.com:Kropatz/dotfiles

This commit is contained in:
Kopatz
2025-03-14 08:50:28 +01:00
31 changed files with 656 additions and 210 deletions

View File

@@ -1,8 +1,8 @@
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
set $LeftMonitor HDMI-0
set $RightMonitor DP-4
set $LeftMonitor HDMI-A-0
set $RightMonitor DisplayPort-0
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
@@ -351,7 +351,6 @@ exec_always --no-startup-id sleep 5 && pactl list short sources | grep 'alsa_inp
exec --no-startup-id /usr/bin/env dunst
# alternative if you installed aside with XFCE4:
# exec --no-startup-id /usr/lib/xfce4/notifyd/xfce4-notifyd &
exec --no-startup-id sleep 5 && nvidia-settings -a "[gpu:0]/GPUGraphicsClockOffsetAllPerformanceLevels=230"
# autotiling script
# https://github.com/nwg-piotr/autotiling

34
.config/polybar/amd-gpu.sh Executable file
View File

@@ -0,0 +1,34 @@
#!/usr/bin/env bash
# Base path for AMD GPU sysfs
GPU_BASE_PATH="/sys/class/drm/card1/device"
# Check if AMD GPU sysfs exists
if [ ! -d "$GPU_BASE_PATH" ]; then
echo "---"
exit 1
fi
# Get GPU usage
GPU_UTIL=$(cat "$GPU_BASE_PATH/gpu_busy_percent" 2>/dev/null || echo "N/A")
# Base path for hwmon (temperature and power readings)
HWMON_PATH="$GPU_BASE_PATH/hwmon/hwmon0"
# Get GPU temperature
TEMP_PATH="$HWMON_PATH/temp1_input"
if [ -f "$TEMP_PATH" ]; then
GPU_TEMP=$(($(cat "$TEMP_PATH") / 1000)) # Convert from millidegrees to degrees
else
GPU_TEMP="N/A"
fi
# Get GPU power usage
POWER_PATH="$HWMON_PATH/power1_average"
if [ -f "$POWER_PATH" ]; then
GPU_POWER=$(($(cat "$POWER_PATH") / 1000000)) # Convert from microwatts to watts
else
GPU_POWER="N/A"
fi
echo "GPU ${GPU_UTIL}%, ${GPU_TEMP}°C, ${GPU_POWER}W"

1
.config/waybar/amd-gpu.sh Symbolic link
View File

@@ -0,0 +1 @@
../polybar/amd-gpu.sh

312
flake.lock generated
View File

@@ -130,27 +130,6 @@
"type": "github"
}
},
"devshell": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1735644329,
"narHash": "sha256-tO3HrHriyLvipc4xr+Ewtdlo7wM1OjXNjlWRgmM7peY=",
"owner": "numtide",
"repo": "devshell",
"rev": "f7795ede5b02664b57035b3b757876703e2c3eac",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "devshell",
"type": "github"
}
},
"disko": {
"inputs": {
"nixpkgs": [
@@ -158,11 +137,11 @@
]
},
"locked": {
"lastModified": 1739841949,
"narHash": "sha256-lSOXdgW/1zi/SSu7xp71v+55D5Egz8ACv0STkj7fhbs=",
"lastModified": 1741786315,
"narHash": "sha256-VT65AE2syHVj6v/DGB496bqBnu1PXrrzwlw07/Zpllc=",
"owner": "nix-community",
"repo": "disko",
"rev": "15dbf8cebd8e2655a883b74547108e089f051bf0",
"rev": "0d8c6ad4a43906d14abd5c60e0ffe7b587b213de",
"type": "github"
},
"original": {
@@ -174,11 +153,11 @@
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1739223196,
"narHash": "sha256-vAxN2f3rvl5q62gQQjZGVSvF93nAsOxntuFz+e/655w=",
"lastModified": 1741628778,
"narHash": "sha256-RsvHGNTmO2e/eVfgYK7g+eYEdwwh7SbZa+gZkT24MEA=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "a89108e6272426f4eddd93ba17d0ea101c34fb21",
"rev": "5a81d390bb64afd4e81221749ec4bffcbeb5fa80",
"type": "github"
},
"original": {
@@ -220,21 +199,6 @@
}
},
"flake-compat_3": {
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"revCount": 69,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
}
},
"flake-compat_4": {
"flake": false,
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
@@ -291,6 +255,28 @@
"type": "github"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": [
"stylix",
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems_2"
@@ -367,47 +353,21 @@
"git-hooks": {
"inputs": {
"flake-compat": [
"nixvim",
"stylix",
"flake-compat"
],
"gitignore": "gitignore",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1737465171,
"narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"git-hooks_2": {
"inputs": {
"flake-compat": [
"stylix",
"flake-compat"
],
"gitignore": "gitignore_2",
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1735882644,
"narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=",
"lastModified": 1741379162,
"narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "a5a961387e75ae44cc20f0a57ae463da5e959656",
"rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
"type": "github"
},
"original": {
@@ -417,28 +377,6 @@
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"nixvim",
"git-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"
}
},
"gitignore_2": {
"inputs": {
"nixpkgs": [
"stylix",
@@ -505,11 +443,11 @@
]
},
"locked": {
"lastModified": 1739913864,
"narHash": "sha256-WhzgQjadrwnwPJQLLxZUUEIxojxa7UWDkf7raAkB1Lw=",
"lastModified": 1741894454,
"narHash": "sha256-Mu2YXrGr/8Cid6W44AXci/YYnASoXjGrMV9Sjs66oyc=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "97ac0801d187b2911e8caa45316399de12f6f199",
"rev": "0b0baed7b2bf6a5e365d4cba042b580a2bc32e34",
"type": "github"
},
"original": {
@@ -566,27 +504,6 @@
"type": "github"
}
},
"nix-darwin": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1738743987,
"narHash": "sha256-O3bnAfsObto6l2tQOmQlrO6Z2kD6yKwOWfs7pA0CpOc=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "ae406c04577ff9a64087018c79b4fdc02468c87c",
"type": "github"
},
"original": {
"owner": "lnl7",
"repo": "nix-darwin",
"type": "github"
}
},
"nixlib": {
"locked": {
"lastModified": 1736643958,
@@ -611,11 +528,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1739909000,
"narHash": "sha256-DsepQ7ApA4li8td4QFTmX2qs4gvCLfoN7Mlaifmji7Y=",
"lastModified": 1741864154,
"narHash": "sha256-A39pa4ZmUqSjuE2L4swvHKGUQ2maKiY0P5UduZ+yE90=",
"owner": "lilyinstarlight",
"repo": "nixos-cosmic",
"rev": "5516035bb36dbb19f2bbe7b9cea6922db395e100",
"rev": "05f8b43a311b3a1f914af89a94480b19d2eceac6",
"type": "github"
},
"original": {
@@ -632,11 +549,11 @@
]
},
"locked": {
"lastModified": 1737057290,
"narHash": "sha256-3Pe0yKlCc7EOeq1X/aJVDH0CtNL+tIBm49vpepwL1MQ=",
"lastModified": 1740947705,
"narHash": "sha256-Co2kAD2SZalOm+5zoxmzEVZNvZ17TyafuFsD46BwSdY=",
"owner": "nix-community",
"repo": "nixos-generators",
"rev": "d002ce9b6e7eb467cd1c6bb9aef9c35d191b5453",
"rev": "507911df8c35939050ae324caccc7cf4ffb76565",
"type": "github"
},
"original": {
@@ -647,11 +564,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1739798439,
"narHash": "sha256-GyipmjbbQEaosel/+wq1xihCKbv0/e1LU00x/8b/fP4=",
"lastModified": 1741792691,
"narHash": "sha256-f0BVt1/cvA0DQ/q3rB+HY4g4tKksd03ZkzI4xehC2Ew=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "3e2ea8a49d4d76276b0f4e2041df8ca5c0771371",
"rev": "e1f12151258b12c567f456d8248e4694e9390613",
"type": "github"
},
"original": {
@@ -669,11 +586,11 @@
]
},
"locked": {
"lastModified": 1739782332,
"narHash": "sha256-bPZKuual2WKfyHv7Wq+Owcj9R+i/qFzOWByqSS9rlxI=",
"lastModified": 1741870048,
"narHash": "sha256-odXRdNZGdXg1LmwlAeWL85kgy/FVHsgKlDwrvbR2BsU=",
"owner": "nix-community",
"repo": "NixOS-WSL",
"rev": "59bdbb1e75232bf1dd6d2a9313b9b6ddc5049ba2",
"rev": "5d76001e33ee19644a598ad80e7318ab0957b122",
"type": "github"
},
"original": {
@@ -684,11 +601,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1739758141,
"narHash": "sha256-uq6A2L7o1/tR6VfmYhZWoVAwb3gTy7j4Jx30MIrH0rE=",
"lastModified": 1741862977,
"narHash": "sha256-prZ0M8vE/ghRGGZcflvxCu40ObKaB+ikn74/xQoNrGQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c618e28f70257593de75a7044438efc1c1fc0791",
"rev": "cdd2ef009676ac92b715ff26630164bb88fec4e0",
"type": "github"
},
"original": {
@@ -698,6 +615,22 @@
"type": "github"
}
},
"nixpkgs-gimp3": {
"locked": {
"lastModified": 1735507908,
"narHash": "sha256-VA+khC0S0di6w5Yv1kBNRpAihnt2prT/ehQzsKMhEoA=",
"owner": "jtojnar",
"repo": "nixpkgs",
"rev": "771cf18187fefcfaababd35834917c621447fee8",
"type": "github"
},
"original": {
"owner": "jtojnar",
"ref": "gimp-meson",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1697935651,
@@ -713,13 +646,29 @@
"type": "github"
}
},
"nixpkgs-mesa-git": {
"locked": {
"lastModified": 1741898246,
"narHash": "sha256-sjfZ3N1GU3Cjet8sO8rfyB4+p6HksKT9aOJK9dE/zSw=",
"owner": "kropatz",
"repo": "nixpkgs",
"rev": "30e357dc191e2b30061200b56d71ec062466990a",
"type": "github"
},
"original": {
"owner": "kropatz",
"ref": "mesa-git",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1739624908,
"narHash": "sha256-f84lBmLl4tkDp1ZU5LBTSFzlxXP4926DVW3KnXrke10=",
"lastModified": 1741724370,
"narHash": "sha256-WsD+8uodhl58jzKKcPH4jH9dLTLFWZpVmGq4W1XDVF4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a60651b217d2e529729cbc7d989c19f3941b9250",
"rev": "95600680c021743fd87b3e2fe13be7c290e1cac4",
"type": "github"
},
"original": {
@@ -731,11 +680,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1739866667,
"narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
"lastModified": 1741851582,
"narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
"rev": "6607cf789e541e7873d40d3a8f7815ea92204f32",
"type": "github"
},
"original": {
@@ -763,11 +712,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1739736696,
"narHash": "sha256-zON2GNBkzsIyALlOCFiEBcIjI4w38GYOb+P+R4S8Jsw=",
"lastModified": 1741851582,
"narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "d74a2335ac9c133d6bbec9fc98d91a77f1604c1f",
"rev": "6607cf789e541e7873d40d3a8f7815ea92204f32",
"type": "github"
},
"original": {
@@ -779,24 +728,16 @@
},
"nixvim": {
"inputs": {
"devshell": "devshell",
"flake-compat": "flake-compat_3",
"flake-parts": "flake-parts",
"git-hooks": "git-hooks",
"home-manager": [
"home-manager-unstable"
],
"nix-darwin": "nix-darwin",
"nixpkgs": "nixpkgs_2",
"nuschtosSearch": "nuschtosSearch",
"treefmt-nix": "treefmt-nix"
"nuschtosSearch": "nuschtosSearch"
},
"locked": {
"lastModified": 1739902813,
"narHash": "sha256-BgOQcKKz7VNvSHIbBllHisv32HvF3W3ALF9sdnC++V8=",
"lastModified": 1741709061,
"narHash": "sha256-G1YTksB0CnVhpU1gEmvO3ugPS5CAmUpm5UtTIUIPnEI=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "0ab9947137cd034ec64eb5cd9ede94e53af21f50",
"rev": "3a3abf11700f76738d8ad9d15054ceaf182d2974",
"type": "github"
},
"original": {
@@ -809,14 +750,37 @@
"inputs": {
"flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs_3",
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1741895983,
"narHash": "sha256-7CqlVqSsc/H4dy0P034L0IrWzueShNR3fvN6GQQE2E0=",
"owner": "nix-community",
"repo": "NUR",
"rev": "1cf775289a4bd43ebeae46cc351d200aa4ed1c04",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "NUR",
"type": "github"
}
},
"nur_2": {
"inputs": {
"flake-parts": "flake-parts_3",
"nixpkgs": [
"stylix",
"nixpkgs"
],
"treefmt-nix": "treefmt-nix_2"
},
"locked": {
"lastModified": 1739903703,
"narHash": "sha256-w2tTcjx39lJoPDaFbIxi+INIjAKE0jbIx9TNjj9ghmg=",
"lastModified": 1741693509,
"narHash": "sha256-emkxnsZstiJWmGACimyAYqIKz2Qz5We5h1oBVDyQjLw=",
"owner": "nix-community",
"repo": "NUR",
"rev": "2215ad5c4347f522523715e809f5f2022509f504",
"rev": "5479646b2574837f1899da78bdf9a48b75a9fb27",
"type": "github"
},
"original": {
@@ -861,6 +825,8 @@
"nixos-hardware": "nixos-hardware",
"nixos-wsl": "nixos-wsl",
"nixpkgs": "nixpkgs",
"nixpkgs-gimp3": "nixpkgs-gimp3",
"nixpkgs-mesa-git": "nixpkgs-mesa-git",
"nixpkgs-unstable": "nixpkgs-unstable",
"nixvim": "nixvim",
"nur": "nur",
@@ -874,9 +840,9 @@
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
"flake-compat": "flake-compat_4",
"flake-compat": "flake-compat_3",
"flake-utils": "flake-utils_3",
"git-hooks": "git-hooks_2",
"git-hooks": "git-hooks",
"gnome-shell": "gnome-shell",
"home-manager": [
"home-manager-unstable"
@@ -884,6 +850,7 @@
"nixpkgs": [
"nixpkgs-unstable"
],
"nur": "nur_2",
"systems": "systems_4",
"tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty",
@@ -892,11 +859,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1739909171,
"narHash": "sha256-GmuW8XkOF6lSEQBeXzUCyr6tetbbxX8wpNJlwFqT/9E=",
"lastModified": 1741880767,
"narHash": "sha256-tXtop1zIJMyRt1LDERIWwMAMVKdfDtFp/g37YKy2Ke4=",
"owner": "danth",
"repo": "stylix",
"rev": "aeb550add3bfa1ce3ce249c3b3dad71ebb018318",
"rev": "5053a63c87fea3508439b7e9c1a66fa6979a4694",
"type": "github"
},
"original": {
@@ -1002,11 +969,11 @@
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1737565458,
"narHash": "sha256-y+9cvOA6BLKT0WfebDsyUpUa/YxKow9hTjBp6HpQv68=",
"lastModified": 1741468895,
"narHash": "sha256-YKM1RJbL68Yp2vESBqeZQBjTETXo8mCTTzLZyckCfZk=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "ae31625ba47aeaa4bf6a98cf11a8d4886f9463d9",
"rev": "47c8c7726e98069cade5827e5fb2bfee02ce6991",
"type": "github"
},
"original": {
@@ -1018,11 +985,11 @@
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1735737224,
"narHash": "sha256-FO2hRBkZsjlIRqzNHCPc/52yxg11kHGA8MEtSun9RwE=",
"lastModified": 1740877430,
"narHash": "sha256-zWcCXgdC4/owfH/eEXx26y5BLzTrefjtSLFHWVD5KxU=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "aead506a9930c717ebf81cc83a2126e9ca08fa64",
"rev": "d48ee86394cbe45b112ba23ab63e33656090edb4",
"type": "github"
},
"original": {
@@ -1050,16 +1017,16 @@
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"nixvim",
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1738680491,
"narHash": "sha256-8X7tR3kFGkE7WEF5EXVkt4apgaN85oHZdoTGutCFs6I=",
"lastModified": 1733222881,
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "64dbb922d51a42c0ced6a7668ca008dded61c483",
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"type": "github"
},
"original": {
@@ -1071,6 +1038,7 @@
"treefmt-nix_2": {
"inputs": {
"nixpkgs": [
"stylix",
"nur",
"nixpkgs"
]

View File

@@ -30,6 +30,8 @@
#TODO: wait until https://github.com/NixOS/nixpkgs/pull/339641 is in unstable https://nixpk.gs/pr-tracker.html?pr=339641
#nixpkgs-unstable.url = "github:nixos/nixpkgs/a6916c76a7d202e3c02134e620f6477b8600ce9d";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs-gimp3.url = "github:jtojnar/nixpkgs/gimp-meson";
nixpkgs-mesa-git.url = "github:kropatz/nixpkgs/mesa-git";
home-manager-unstable = {
url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs-unstable";
@@ -73,6 +75,8 @@
modifications
unstable-packages
stable-packages
gimp3
mesa-git
nur.overlays.default
];
};

View File

@@ -12,7 +12,9 @@
after = [ "writeBoundary" ];
before = [ ];
data = ''
if [ -e "$(readlink ${configPath})" ]; then
install -m 0640 "$(readlink ${configPath})" ${configPath}
fi
'';
};
programs.vscode = {

View File

@@ -62,4 +62,8 @@
"extensions.activeThemeID" = "{5cd68d86-8324-4ab2-9e0d-3afcc60bee5f}";
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.ctrlTab.sortByRecentlyUsed" = true;
# Firefox 75+ remembers the last workspace it was opened on as part of its session management.
# This is annoying, because I can have a blank workspace, open Firefox and
# then have Firefox open on some other workspace
"widget.disable-workspace-management" = true;
}

View File

@@ -10,6 +10,8 @@ let
sleep 4
systemctl --user restart xdg-desktop-portal
'';
monitor1 = if isPc then "DP-1" else if isLaptop then "eDP-1" else "eDP-1";
monitor2 = "HDMI-A-1";
in {
config = lib.mkIf cfg.enable {
@@ -28,8 +30,8 @@ in {
# See https://wiki.hyprland.org/Configuring/Monitors/
monitor = if isPc then [
"HDMI-A-1,1920x1080@60,0x0,1"
"DP-3,2560x1440@150,1920x0,1"
"${monitor2},1920x1080@60,0x0,1"
"${monitor1},2560x1440@144,1920x0,1"
"Unknown-1,disable"
] else if isLaptop then [
# laptop
@@ -45,13 +47,13 @@ in {
workspace =
lib.lists.optionals (osConfig.networking.hostName == "kop-pc") [
"1,monitor:DP-3"
"2,monitor:DP-3"
"3,monitor:DP-3"
"4,monitor:DP-3"
"5,monitor:DP-3"
"9,monitor:HDMI-A-1"
"10,monitor:HDMI-A-1"
"1,monitor:${monitor1}"
"2,monitor:${monitor1}"
"3,monitor:${monitor1}"
"4,monitor:${monitor1}"
"5,monitor:${monitor1}"
"9,monitor:${monitor2}"
"10,monitor:${monitor2}"
];
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
@@ -64,7 +66,7 @@ in {
# Some default env vars.
env =
[ "XCURSOR_SIZE,24" "NIXOS_OZONE_WL,1" "WLR_NO_HARDWARE_CURSORS,1" ]
[ "XCURSOR_SIZE,24" "NIXOS_OZONE_WL,1" ]
++ lib.optionals osConfig.custom.hardware.nvidia.enable [
"LIBVA_DRIVER_NAME,nvidia"
"GBM_BACKEND,nvidia-drm"
@@ -88,7 +90,7 @@ in {
sensitivity = 0;
};
cursor = { no_hardware_cursors = true; };
#cursor = { no_hardware_cursors = true; };
#render = {
# explicit_sync = 1;
@@ -303,6 +305,7 @@ in {
] ++ [
"sleep 3 && ${pkgs.waybar}/bin/waybar &"
"${restartPortals}"
"xrandr --monitor ${monitor1} --primary"
];
};
extraConfig = let

View File

@@ -58,7 +58,7 @@ in {
};
# don't autostart
systemd.user.services.hypridle.Service.ExecStart = lib.mkForce "true";
systemd.user.services.hypridle.Service.ExecStart = lib.mkForce "${pkgs.coreutils}/bin/true";
systemd.user.services.hypridle.Service.Restart = lib.mkForce "no";
services.hypridle.enable = true;
services.hypridle.settings = {

View File

@@ -1,4 +1,5 @@
@define-color nvidia-green #76b900;
@define-color amdgpu-red #ed1c24;
#other,
#other-drawer,
@@ -43,6 +44,10 @@
color: @nvidia-green;
}
#custom-amd-gpu {
color: @amdgpu-red;
}
#network.disconnected {
background-color: #f53c3c;
}

View File

@@ -34,7 +34,9 @@ in {
modules-right = [ "group/stats" "group/other" ];
"group/stats" = {
"orientation" = "horizontal";
"modules" = [ "network" "cpu" "memory" "disk" "temperature" ] ++ lib.optionals (osConfig.networking.hostName != "nix-laptop") [ "custom/nvidia" ] ;
"modules" = [ "network" "cpu" "memory" "disk" "temperature" ]
++ lib.optionals osConfig.custom.hardware.nvidia.enable [ "custom/nvidia" ]
++ lib.optionals osConfig.custom.hardware.amd-gpu.enable [ "custom/amd-gpu" ];
};
"group/other" = {
"orientation" = "horizontal";
@@ -147,6 +149,11 @@ in {
"exec" = "~/.config/waybar/nvidia.sh";
"exec-if" = "nvidia-smi";
};
"custom/amd-gpu" = {
"format" = "{}";
"interval" = 5;
"exec" = "~/.config/waybar/amd-gpu.sh";
};
"tray".icon-size = 21;
"tray".spacing = 10;
"hyprland/window" = {

View File

@@ -55,8 +55,10 @@ in {
module-margin = 1;
modules-left = "i3 xwindow";
modules-center = "";
modules-right =
"music network memory cpu cpu-wattage cpu-temp gpu pulseaudio date tray";
modules-right = [ "music network memory cpu cpu-wattage cpu-temp" ]
++ lib.optionals osConfig.custom.hardware.nvidia.enable [ "nvidia-gpu" ]
++ lib.optionals osConfig.custom.hardware.amd-gpu.enable [ "amd-gpu" ]
++ [ "pulseaudio date tray" ];
cursor-click = "pointer";
cursor-scroll = "ns-resize";
enable-ipc = true;
@@ -187,13 +189,20 @@ in {
exec = "~/.config/polybar/temperature.sh";
interval = 3;
};
"module/gpu" = {
"module/nvidia-gpu" = {
type = "custom/script";
format-foreground = "76b900"; # nvidia green
label = "%output:0:35:...%";
exec = "~/.config/polybar/nvidia.sh";
interval = 3;
};
"module/amd-gpu" = {
type = "custom/script";
format-foreground = "ed1c24";
label = "%output:0:35:...%";
exec = "~/.config/polybar/amd-gpu.sh";
interval = 3;
};
"module/music" = {
type = "custom/script";
exec = "~/.config/polybar/player-mpris-simple.sh";

View File

@@ -1,6 +1,5 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
typst
typstwriter
];
}

View File

@@ -6,7 +6,34 @@ in {
};
config = lib.mkIf cfg.enable {
boot.kernelParams = [ "amdgpu.ppfeaturemask=0xffffffff" "split_lock_detect=off" ];
hardware.graphics = {
enable = true;
enable32Bit = true;
package = lib.mkForce pkgs.mesa-git.mesa.drivers;
extraPackages = with pkgs; [ mesa-git.amdvlk ];
};
boot.initrd.kernelModules = [ "amdgpu" ];
services.xserver.videoDrivers = [ "amdgpu" ];
# controller (overclock, undervolt, fan curves)
environment.systemPackages = with pkgs; [ lact nvtopPackages.amd ];
systemd.packages = with pkgs; [ lact ];
systemd.services.lactd.wantedBy = [ "multi-user.target" ];
#system.replaceDependencies.replacements = [
# { oldDependency = pkgs.mesa; newDependency = pkgs.mesa-git.mesa; }
#];
hardware.firmware = with pkgs;
[
(linux-firmware.overrideAttrs (old: {
src = builtins.fetchGit {
url =
"https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
rev =
"b4cb02b2dc3330c6e5d69e84a616b1ca5faecf12"; # Uncomment this line to allow for pure builds
};
}))
];
};
}

View File

@@ -89,6 +89,7 @@ in {
libvdpau-va-gl
libva
libva-utils
pkgs.nvidia_oc
(gwe.override { nvidia_x11 = config.hardware.nvidia.package; })
];

View File

@@ -0,0 +1,9 @@
{ config, pkgs, ... }: {
boot = {
extraModulePackages = with config.boot.kernelPackages; [ zenpower ];
kernelModules = [ "zenpower" ];
blacklistedKernelModules = [ "k10temp" ];
};
environment.systemPackages = with pkgs; [ zenmonitor ];
}

View File

@@ -1,4 +1,5 @@
{pkgs, ...}:
{
boot.kernelPackages = pkgs.linuxPackages_latest;
#boot.kernelPackages = pkgs.linuxPackages_latest;
boot.kernelPackages = pkgs.linuxPackages_testing;
}

View File

@@ -8,7 +8,7 @@
lib.mkForce [ ]; # Normally ["network-online.target"]
};
# mash spacebar to still be able to select a different boot option
boot.loader.timeout = 0;
boot.loader.timeout = 1;
virtualisation.docker.enableOnBoot = false;
}

View File

@@ -1,3 +1,5 @@
{pkgs, lib, ...}:
{
networking.networkmanager.enable = true;
networking.networkmanager.plugins = lib.mkForce [ pkgs.networkmanager-openvpn ];
}

View File

@@ -32,6 +32,7 @@ in {
dates = "weekly";
options = "--delete-older-than 30d";
};
channel.enable = false;
extraOptions = ''
min-free = ${toString (100 * 1024 * 1024)}
max-free = ${toString (1024 * 1024 * 1024)}

View File

@@ -113,6 +113,7 @@ in {
${mangal} inline -S AsuraScans --query "the_max_level_hero" --manga first --download
${mangal} inline -S Manganato --query "Parallel_City" --manga first --download
${mangal} inline -S Manganato --query "Existence" --manga first --download
${mangal} inline -S Mangapill --query "Call_of_the_Night" --manga first --download
'';
serviceConfig = {
PrivateTmp = true;

View File

@@ -4,6 +4,10 @@ let
addPatches = pkg: patches:
pkg.overrideAttrs
(oldAttrs: { patches = (oldAttrs.patches or [ ]) ++ patches; });
mesa-git = import inputs.nixpkgs-mesa-git {
system = "x86_64-linux";
config.allowUnfree = true;
};
in {
# This one brings our custom packages from the 'pkgs' directory
additions = final: _prev: import ./pkgs { pkgs = final; };
@@ -15,6 +19,9 @@ in {
discord-canary = prev.discord-canary.override { withVencord = true; };
discord = prev.discord.override { withVencord = true; };
tetrio-desktop = prev.tetrio-desktop.override { withTetrioPlus = true; };
lact = prev.rdna4-lact;
#mesa = mesa-git.pkgs.mesa;
#wayland-protocols = mesa-git.pkgs.wayland-protocols;
#hyprland = prev.hyprland.overrideAttrs (oldAttrs: {
# version = "0.45.0";
# src = prev.fetchFromGitHub {
@@ -70,4 +77,18 @@ in {
config.allowUnfree = true;
};
};
gimp3 = final: _prev: {
gimp3 = import inputs.nixpkgs-gimp3 {
system = final.system;
config.allowUnfree = true;
};
};
mesa-git = final: _prev: {
mesa-git = import inputs.nixpkgs-mesa-git {
system = final.system;
config.allowUnfree = true;
};
};
}

View File

@@ -6,7 +6,7 @@ buildNpmPackage rec {
src = fetchGit {
url = "git@github.com:oberprofis/adams.git";
ref = "main";
rev = "001e9feb4d53f3046068f1bb88c7386b6c6f7f58";
rev = "6575c418f45aef025d2d89d5b0b4ff4fbdffe298";
};
npmDepsHash="sha256-PRFHBlVIdHfATAAKVKax+bY4o+9czdfl7HjFnKk4KtI=";
installPhase = ''

View File

@@ -10,4 +10,7 @@
pkgs.callPackage ./website/default.nix { inherit kop-hub ente-frontend; };
sddm-astronaut = pkgs.callPackage ./sddm-astronaut/default.nix { };
mangal-patched = pkgs.callPackage ./mangal/default.nix { };
electron_27 = pkgs.callPackage ./electron27/default.nix { };
logseq = pkgs.callPackage ./logseq/default.nix { inherit electron_27; };
rdna4-lact = pkgs.callPackage ./lact/default.nix { };
}

162
pkgs/electron27/default.nix Normal file
View File

@@ -0,0 +1,162 @@
{ lib, stdenv, libXScrnSaver, makeWrapper, fetchurl, wrapGAppsHook3, glib, gtk3
, unzip, at-spi2-atk, libdrm, libgbm, libxkbcommon, libxshmfence, libGL
, vulkan-loader, alsa-lib, cairo, cups, dbus, expat, gdk-pixbuf, nss, nspr, xorg
, pango, systemd, pciutils, }:
let
version = "27.3.11";
hashes = {
"aarch64-darwin" =
"a687b199fcb9890f43af90ac8a4d19dc7b15522394de89e42abd5f5c6b735804";
"aarch64-linux" =
"ddbfcd5e04450178ca4e3113f776893454822af6757761adc792692f7978e0df";
"armv7l-linux" =
"012127a3edf79e0e4623a08e853286e1cba512438a0414b1ab19b75d929c1cf2";
"headers" = "0vrjdvqllfyz09sw2y078mds1di219hnmska8bw8ni7j35wxr2br";
"x86_64-darwin" =
"357e70a1c8848d4ac7655346bec98dd18a7c0cee82452a7edf76142017779049";
"x86_64-linux" =
"e3a6f55e54e7a623bba1a15016541248408eef5a19ab82a59d19c807aab14563";
};
pname = "electron";
meta = with lib; {
description = "Cross platform desktop application shell";
homepage = "https://github.com/electron/electron";
license = licenses.mit;
mainProgram = "electron";
maintainers = with maintainers; [ yayayayaka teutat3s ];
platforms =
[ "x86_64-darwin" "x86_64-linux" "armv7l-linux" "aarch64-linux" ]
++ optionals (versionAtLeast version "11.0.0") [ "aarch64-darwin" ]
++ optionals (versionOlder version "19.0.0") [ "i686-linux" ];
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
# https://www.electronjs.org/docs/latest/tutorial/electron-timelines
knownVulnerabilities = optional (versionOlder version "32.0.0")
"Electron version ${version} is EOL";
};
fetcher = vers: tag: hash:
fetchurl {
url =
"https://github.com/electron/electron/releases/download/v${vers}/electron-v${vers}-${tag}.zip";
sha256 = hash;
};
headersFetcher = vers: hash:
fetchurl {
url =
"https://artifacts.electronjs.org/headers/dist/v${vers}/node-v${vers}-headers.tar.gz";
sha256 = hash;
};
tags = {
x86_64-linux = "linux-x64";
armv7l-linux = "linux-armv7l";
aarch64-linux = "linux-arm64";
x86_64-darwin = "darwin-x64";
} // lib.optionalAttrs (lib.versionAtLeast version "11.0.0") {
aarch64-darwin = "darwin-arm64";
} // lib.optionalAttrs (lib.versionOlder version "19.0.0") {
i686-linux = "linux-ia32";
};
get = as: platform:
as.${platform.system} or (throw "Unsupported system: ${platform.system}");
common = platform: {
inherit pname version meta;
src = fetcher version (get tags platform) (get hashes platform);
passthru.headers = headersFetcher version hashes.headers;
};
electronLibPath = lib.makeLibraryPath ([
alsa-lib
at-spi2-atk
cairo
cups
dbus
expat
gdk-pixbuf
glib
gtk3
nss
nspr
xorg.libX11
xorg.libxcb
xorg.libXcomposite
xorg.libXdamage
xorg.libXext
xorg.libXfixes
xorg.libXrandr
xorg.libxkbfile
pango
pciutils
stdenv.cc.cc
systemd
] ++ lib.optionals (lib.versionAtLeast version "9.0.0") [ libdrm libgbm ]
++ lib.optionals (lib.versionOlder version "10.0.0") [ libXScrnSaver ]
++ lib.optionals (lib.versionAtLeast version "11.0.0") [ libxkbcommon ]
++ lib.optionals (lib.versionAtLeast version "12.0.0") [ libxshmfence ]
++ lib.optionals (lib.versionAtLeast version "17.0.0") [
libGL
vulkan-loader
]);
linux = finalAttrs: {
buildInputs = [ glib gtk3 ];
nativeBuildInputs = [ unzip makeWrapper wrapGAppsHook3 ];
dontUnpack = true;
dontBuild = true;
installPhase = ''
mkdir -p $out/libexec/electron $out/bin
unzip -d $out/libexec/electron $src
ln -s $out/libexec/electron/electron $out/bin
chmod u-x $out/libexec/electron/*.so*
'';
postFixup = ''
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${electronLibPath}:$out/libexec/electron" \
$out/libexec/electron/.electron-wrapped \
${
lib.optionalString (lib.versionAtLeast version "15.0.0")
"$out/libexec/electron/.chrome_crashpad_handler-wrapped"
}
# patch libANGLE
patchelf \
--set-rpath "${lib.makeLibraryPath [ libGL pciutils vulkan-loader ]}" \
$out/libexec/electron/lib*GL*
# replace bundled vulkan-loader
rm "$out/libexec/electron/libvulkan.so.1"
ln -s -t "$out/libexec/electron" "${
lib.getLib vulkan-loader
}/lib/libvulkan.so.1"
'';
passthru.dist = finalAttrs.finalPackage + "/libexec/electron";
};
darwin = finalAttrs: {
nativeBuildInputs = [ makeWrapper unzip ];
buildCommand = ''
mkdir -p $out/Applications
unzip $src
mv Electron.app $out/Applications
mkdir -p $out/bin
makeWrapper $out/Applications/Electron.app/Contents/MacOS/Electron $out/bin/electron
'';
passthru.dist = finalAttrs.finalPackage + "/Applications";
};
in stdenv.mkDerivation (finalAttrs:
lib.recursiveUpdate (common stdenv.hostPlatform)
((if stdenv.hostPlatform.isDarwin then darwin else linux) finalAttrs))

View File

@@ -7,7 +7,7 @@ buildNpmPackage rec {
src = "${(fetchGit {
url = "git@github.com:oberprofis/ente.git";
ref = "master";
rev = "42ccf9f7427d8007fce65526e9b9d0443115e476";
rev = "f82b14a08080865be3c31144787ffaf8509a018a";
})}/website/tracker-site";
npmDepsHash = "sha256-fYTRhIU+8pdIm3wC5wJRcDUhgN3d+mmvfmVzuu0pjLQ=";

78
pkgs/lact/default.nix Normal file
View File

@@ -0,0 +1,78 @@
{ lib, rustPlatform, stdenv, fetchFromGitHub, blueprint-compiler, pkg-config
, wrapGAppsHook4, gdk-pixbuf, gtk4, libdrm, vulkan-loader, coreutils
, nix-update-script, hwdata, fuse }:
rustPlatform.buildRustPackage rec {
pname = "lact";
version = "0.7.1";
src = fetchFromGitHub {
owner = "ilya-zlobintsev";
repo = "LACT";
#rev = "v${version}";
#hash = "sha256-zaN6CQSeeoYFxLO6E1AMKAjeNOcPi2OsGfYkvZLPKcw=";
rev = "e472dec45682f96a272b77d368791121e10ba7da";
hash = "sha256-d081f49ojJzz0N28lIu3NZ8SSvSuoz2HfjQl5Zu8PpU=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-vc8KqMov2Og5wRS4b9n9Vixtg4vwCM/MlkCDbqsG3Kg=";
nativeBuildInputs =
[ blueprint-compiler pkg-config wrapGAppsHook4 rustPlatform.bindgenHook ];
buildInputs = [ gdk-pixbuf gtk4 libdrm vulkan-loader hwdata fuse ];
# we do this here so that the binary is usable during integration tests
RUSTFLAGS = lib.optionalString stdenv.targetPlatform.isElf
(lib.concatStringsSep " " [
"-C link-arg=-Wl,-rpath,${lib.makeLibraryPath [ vulkan-loader libdrm ]}"
"-C link-arg=-Wl,--add-needed,${vulkan-loader}/lib/libvulkan.so"
"-C link-arg=-Wl,--add-needed,${libdrm}/lib/libdrm.so"
]);
checkFlags = [
# tries and fails to initialize gtk
"--skip=app::pages::thermals_page::fan_curve_frame::tests::set_get_curve"
"--skip=tests::snapshot_everything"
];
postPatch = ''
substituteInPlace lact-daemon/src/server/system.rs \
--replace-fail 'Command::new("uname")' 'Command::new("${coreutils}/bin/uname")'
substituteInPlace res/lactd.service \
--replace-fail ExecStart={lact,$out/bin/lact}
substituteInPlace res/io.github.lact-linux.desktop \
--replace-fail Exec={lact,$out/bin/lact}
# read() looks for the database in /usr/share so we use read_from_file() instead
substituteInPlace lact-daemon/src/server/handler.rs \
--replace-fail 'Database::read()' 'Database::read_from_file("${hwdata}/share/hwdata/pci.ids")'
'';
postInstall = ''
install -Dm444 res/lactd.service -t $out/lib/systemd/system
install -Dm444 res/io.github.lact-linux.desktop -t $out/share/applications
install -Dm444 res/io.github.lact-linux.png -t $out/share/pixmaps
'';
postFixup = lib.optionalString stdenv.targetPlatform.isElf ''
patchelf $out/bin/.lact-wrapped \
--add-needed libvulkan.so \
--add-needed libdrm.so \
--add-rpath ${lib.makeLibraryPath [ vulkan-loader libdrm ]}
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "Linux GPU Configuration Tool for AMD and NVIDIA";
homepage = "https://github.com/ilya-zlobintsev/LACT";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ figsoda atemu ];
platforms = lib.platforms.linux;
mainProgram = "lact";
};
}

99
pkgs/logseq/default.nix Normal file
View File

@@ -0,0 +1,99 @@
{ lib
, stdenv
, fetchurl
, appimageTools
, unzip
, makeWrapper
# Notice: graphs will not sync without matching upstream's major electron version
# the specific electron version is set at top-level file to preserve override interface.
# whenever updating this package also sync electron version at top-level file.
, electron_27
, autoPatchelfHook
, git
, nix-update-script
}:
stdenv.mkDerivation (finalAttrs:
let
inherit (finalAttrs) pname version src;
inherit (stdenv.hostPlatform) system;
selectSystem = attrs: attrs.${system} or (throw "Unsupported system: ${system}");
suffix = selectSystem {
x86_64-linux = "linux-x64-${version}.AppImage";
x86_64-darwin = "darwin-x64-${version}.zip";
aarch64-darwin = "darwin-arm64-${version}.zip";
};
hash = selectSystem {
x86_64-linux = "sha256-XROuY2RlKnGvK1VNvzauHuLJiveXVKrIYPppoz8fCmc=";
x86_64-darwin = "sha256-0i9ozqBSeV/y8v+YEmQkbY0V6JHOv6tKub4O5Fdx2fQ=";
aarch64-darwin = "sha256-Uvv96XWxpFj14wPH0DwPT+mlf3Z2dy1g/z8iBt5Te7Q=";
};
in
{
pname = "logseq";
version = "0.10.9";
src = fetchurl {
inherit hash;
url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-${suffix}";
name = lib.optionalString stdenv.hostPlatform.isLinux "logseq-${version}.AppImage";
};
nativeBuildInputs = [ makeWrapper ]
++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]
++ lib.optionals stdenv.hostPlatform.isDarwin [ unzip ];
buildInputs = [ (lib.getLib stdenv.cc.cc) ];
dontUnpack = stdenv.hostPlatform.isLinux;
dontConfigure = true;
dontBuild = true;
installPhase = ''
runHook preInstall
'' + lib.optionalString stdenv.hostPlatform.isLinux (
let
appimageContents = appimageTools.extract { inherit pname src version; };
in
''
mkdir -p $out/bin $out/share/logseq $out/share/applications
cp -a ${appimageContents}/{locales,resources} $out/share/logseq
cp -a ${appimageContents}/Logseq.desktop $out/share/applications/logseq.desktop
# remove the `git` in `dugite` because we want the `git` in `nixpkgs`
chmod +w -R $out/share/logseq/resources/app/node_modules/dugite/git
chmod +w $out/share/logseq/resources/app/node_modules/dugite
rm -rf $out/share/logseq/resources/app/node_modules/dugite/git
chmod -w $out/share/logseq/resources/app/node_modules/dugite
mkdir -p $out/share/pixmaps
ln -s $out/share/logseq/resources/app/icons/logseq.png $out/share/pixmaps/logseq.png
substituteInPlace $out/share/applications/logseq.desktop \
--replace Exec=Logseq Exec=logseq \
--replace Icon=Logseq Icon=logseq
''
) + lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir -p $out/{Applications/Logseq.app,bin}
cp -R . $out/Applications/Logseq.app
makeWrapper $out/Applications/Logseq.app/Contents/MacOS/Logseq $out/bin/logseq
'' + ''
runHook postInstall
'';
postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
# set the env "LOCAL_GIT_DIRECTORY" for dugite so that we can use the git in nixpkgs
makeWrapper ${electron_27}/bin/electron $out/bin/logseq \
--set "LOCAL_GIT_DIRECTORY" ${git} \
--add-flags $out/share/logseq/resources/app \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}"
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "Local-first, non-linear, outliner notebook for organizing and sharing your personal knowledge base";
homepage = "https://github.com/logseq/logseq";
changelog = "https://github.com/logseq/logseq/releases/tag/${version}";
license = lib.licenses.agpl3Plus;
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
maintainers = with lib.maintainers; [ cheeseecake ];
platforms = [ "x86_64-linux" ] ++ lib.platforms.darwin;
mainProgram = "logseq";
};
})

View File

@@ -14,6 +14,8 @@
../../modules/fh/writing.nix
../../modules/work/vpn.nix
../../modules/misc/faster-boot-time.nix
#../../modules/hardware/ryzenmonitor.nix
../../modules/networkmanager.nix
];
custom = {
@@ -39,8 +41,9 @@
services = { syncthing = { enable = true; }; };
hardware = {
android.enable = true;
amd-gpu.enable = true;
nvidia = {
enable = true;
enable = false;
clock = {
enable = true;
min = 210;
@@ -74,7 +77,7 @@
nightlight.enable = true;
#plasma.enable = true;
i3.enable = true;
sway.enable = true;
#sway.enable = true;
hyprland.enable = true;
#gnome.enable = true;
#cosmic.enable = true;
@@ -87,13 +90,21 @@
enable = false;
acceleration = "cuda";
};
virtualisation.waydroid.enable = true;
virtualisation.waydroid.enable = false;
i18n.supportedLocales = [
"C.UTF-8/UTF-8"
"de_AT.UTF-8/UTF-8"
"en_US.UTF-8/UTF-8"
"ja_JP.UTF-8/UTF-8"
];
# apple shit
services.usbmuxd.enable = true;
environment.systemPackages = with pkgs; [
libimobiledevice
ifuse # optional, to mount using 'ifuse'
gimp3.gimp
];
nixpkgs.config.permittedInsecurePackages = [
@@ -148,10 +159,6 @@
EndSection
'';
#zenpower for ryzen
boot.extraModulePackages = with config.boot.kernelPackages; [ zenpower ];
boot.kernelModules = [ "zenpower" ];
boot.blacklistedKernelModules = [ "k10temp" ];
# Bootloader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
@@ -161,7 +168,6 @@
networking.hostName = "kop-pc"; # Define your hostname.
# Enable networking
networking.networkmanager.enable = true;
boot.initrd.systemd.network.wait-online.enable = false;
systemd.network.wait-online.enable = false;

View File

@@ -23,7 +23,7 @@
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/5AA5-45E0";
{ device = "/dev/disk/by-uuid/CC7C-CF82";
fsType = "vfat";
};

View File

@@ -15,8 +15,8 @@
../../home-manager/code.nix
../../home-manager/fastfetch.nix
../../home-manager/direnv.nix
#../../home-manager/firefox
../../home-manager/floorp
../../home-manager/firefox
#../../home-manager/floorp
../../home-manager/gitconfig.nix
../../home-manager/hyprland
#../../home-manager/kde-path.nix