Framework 12 Initial setup
This commit is contained in:
parent
af5b392286
commit
3d0fdb6ac4
9 changed files with 294 additions and 9 deletions
48
nixos/homes/kylekrein/lisgd-config.h
Normal file
48
nixos/homes/kylekrein/lisgd-config.h
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
/*
|
||||
distancethreshold: Minimum cutoff for a gestures to take effect
|
||||
degreesleniency: Offset degrees within which gesture is recognized (max=45)
|
||||
timeoutms: Maximum duration for a gesture to take place in miliseconds
|
||||
orientation: Number of 90 degree turns to shift gestures by
|
||||
verbose: 1=enabled, 0=disabled; helpful for debugging
|
||||
device: Path to the /dev/ filesystem device events should be read from
|
||||
gestures: Array of gestures; binds num of fingers / gesturetypes to commands
|
||||
Supported gestures: SwipeLR, SwipeRL, SwipeDU, SwipeUD,
|
||||
SwipeDLUR, SwipeURDL, SwipeDRUL, SwipeULDR
|
||||
*/
|
||||
|
||||
unsigned int distancethreshold = 125;
|
||||
unsigned int distancethreshold_pressed = 60;
|
||||
unsigned int degreesleniency = 15;
|
||||
unsigned int timeoutms = 800;
|
||||
unsigned int orientation = 0;
|
||||
unsigned int verbose = 0;
|
||||
double edgesizeleft = 50.0;
|
||||
double edgesizetop = 50.0;
|
||||
double edgesizeright = 50.0;
|
||||
double edgesizebottom = 50.0;
|
||||
double edgessizecaling = 1.0;
|
||||
char *device = "/dev/input/touchscreen";
|
||||
|
||||
//Gestures can also be specified interactively from the command line using -g
|
||||
Gesture gestures[] = {
|
||||
/* nfingers gesturetype command */
|
||||
//{1, SwipeLR, EdgeAny, DistanceAny, ActModeReleased, "niri msg action "},
|
||||
//{1, SwipeRL, EdgeAny, DistanceAny, ActModeReleased,
|
||||
// "xdotool key --clearmodifiers Alt+Shift+r"},
|
||||
//{1, SwipeDLUR, EdgeAny, DistanceAny, ActModeReleased, "sxmo_vol.sh up"},
|
||||
//{1, SwipeURDL, EdgeAny, DistanceAny, ActModeReleased, "sxmo_vol.sh down"},
|
||||
//{1, SwipeDRUL, EdgeAny, DistanceAny, ActModeReleased,
|
||||
// "sxmo_brightness.sh up"},
|
||||
//{1, SwipeULDR, EdgeAny, DistanceAny, ActModeReleased,
|
||||
//"sxmo_brightness.sh down"},
|
||||
//{2, SwipeLR, EdgeAny, DistanceAny, ActModeReleased,
|
||||
// "xdotool key --clearmodifiers Alt+e"},
|
||||
//{2, SwipeRL, EdgeAny, DistanceAny, ActModeReleased,
|
||||
// "xdotool key --clearmodifiers Alt+r"},
|
||||
{2, SwipeDU, EdgeAny, DistanceAny, ActModeReleased,
|
||||
"pidof wvkbd-mobintl || wvkbd-mobintl -l simple,special,emoji &"},
|
||||
{2, SwipeUD, EdgeAny, DistanceAny, ActModeReleased,
|
||||
"pkill -9 -f wvkbd-mobintl"},
|
||||
{3, SwipeDU, EdgeAny, DistanceAny, ActModeReleased,
|
||||
"niri msg action toggle-overview"},
|
||||
};
|
||||
2
nixos/homes/kylekrein/lisgd.nix
Normal file
2
nixos/homes/kylekrein/lisgd.nix
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
{ pkgs }:
|
||||
pkgs.lisgd.override { conf = ./lisgd-config.h; }
|
||||
|
|
@ -24,7 +24,9 @@
|
|||
libnotify
|
||||
hyprlock
|
||||
networkmanagerapplet
|
||||
];
|
||||
] ++ lib.optionals (hwconfig.hasTouchscreen) (with pkgs;[
|
||||
wvkbd # https://github.com/jjsullivan5196/wvkbd
|
||||
]);
|
||||
programs.niri = {
|
||||
settings = {
|
||||
outputs = lib.mkIf (hwconfig.hostname == "kylekrein-homepc") {
|
||||
|
|
@ -47,8 +49,14 @@
|
|||
"25%"
|
||||
];
|
||||
};
|
||||
touchscreen-gestures = lib.mkIf (hwconfig.hasTouchscreen) {
|
||||
command = [
|
||||
"${lib.getExe (import ./lisgd.nix { inherit pkgs; })}" #https://git.sr.ht/~mil/lisgd
|
||||
];
|
||||
};
|
||||
in [
|
||||
set-low-brightness
|
||||
touchscreen-gestures
|
||||
{
|
||||
command = [
|
||||
"${lib.getExe pkgs.networkmanagerapplet}"
|
||||
|
|
|
|||
93
nixos/hosts/kylekrein-framework12/default.nix
Normal file
93
nixos/hosts/kylekrein-framework12/default.nix
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
{
|
||||
options,
|
||||
config,
|
||||
pkgs,
|
||||
unstable-pkgs,
|
||||
lib,
|
||||
hwconfig,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
../../hardware/nvidia
|
||||
|
||||
../../modules/niri
|
||||
|
||||
../../modules/libvirt
|
||||
|
||||
../../users/kylekrein
|
||||
(import ../../modules/libvirt/user.nix {username = "kylekrein";})
|
||||
|
||||
../../users/tania
|
||||
];
|
||||
sops.secrets."ssh_keys/${hwconfig.hostname}" = {};
|
||||
facter.reportPath = lib.mkForce null;
|
||||
nixpkgs.overlays = [
|
||||
# Fixes java crash because of bind mount with impermanence when loading too many mods(ex. All The Mods 9)
|
||||
(self: super: {
|
||||
prismlauncher = pkgs.symlinkJoin {
|
||||
name = "prismlauncher";
|
||||
paths = [ super.prismlauncher];
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/prismlauncher --set HOME /persist/home/kylekrein
|
||||
'';
|
||||
};
|
||||
})
|
||||
(self: super: {
|
||||
bottles = pkgs.symlinkJoin {
|
||||
name = "bottles";
|
||||
paths = [ super.bottles];
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/bottles --set HOME /persist/home/kylekrein
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
environment.systemPackages = with pkgs; [
|
||||
blender
|
||||
ladybird
|
||||
prismlauncher
|
||||
|
||||
#inputs.nix-gaming.packages.${pkgs.system}.star-citizen
|
||||
];
|
||||
|
||||
zramSwap = {
|
||||
enable = true; # Hopefully? helps with freezing when using swap
|
||||
};
|
||||
services.zerotierone = {
|
||||
enable = true;
|
||||
port = 9994;
|
||||
joinNetworks = [
|
||||
"A84AC5C10AD269CA"
|
||||
"db64858fed285e0f"
|
||||
];
|
||||
};
|
||||
#LLMs
|
||||
services.ollama = {
|
||||
enable = true;
|
||||
loadModels = [ "qwq" "llama3.1" "qwen2.5-coder:7b" ];
|
||||
acceleration = "cuda";
|
||||
home = "/persist/ollama";
|
||||
user = "ollama";
|
||||
group = "ollama";
|
||||
};
|
||||
|
||||
boot.binfmt.emulatedSystems = [ "aarch64-linux" "riscv64-linux" ];
|
||||
|
||||
services.open-webui.enable = true;
|
||||
#services.open-webui.package = unstable-pkgs.open-webui;
|
||||
services.open-webui.openFirewall = false;
|
||||
services.open-webui.host = "0.0.0.0";
|
||||
services.open-webui.stateDir = "/persist/open-webui";
|
||||
systemd.services.open-webui.serviceConfig.User = "ollama";
|
||||
systemd.services.open-webui.serviceConfig.Group = "ollama";
|
||||
systemd.services.open-webui.serviceConfig.DynamicUser = lib.mkForce false;
|
||||
|
||||
#Chat host
|
||||
networking.firewall.allowedTCPPorts = [ 80 443 22 8448 9993 8081] ++ [ config.services.zerotierone.port ];
|
||||
networking.firewall.allowedUDPPorts = [config.services.zerotierone.port];
|
||||
|
||||
systemd.network.wait-online.enable = lib.mkForce false;
|
||||
}
|
||||
|
|
@ -5,6 +5,7 @@ users:
|
|||
ssh_keys:
|
||||
kylekrein-mac: ENC[AES256_GCM,data:Gnh34OQWO6eQfNfyYZsVfvktknmZorQYF+lNMKYvV7XkKjZ3RQNHyJ3UWOX+sVwWdtF7EboXkBPdHvnyLvDVIyv7trxTU5IXQzOI+34AKfPHa828HuOLk0AclCmm6GcNq/X4dKTX5DADG4cE4/V+KtdjvSMtLX7I1cjlfsN7JzcsnjERbK8Q0pTMuA44IUdnh0odH9xFEP/f/hVZZZhc5vrMfAqSx3lQxCF62c0wJaorobsPSM7BTzorVgnMnc3zJRAlgQnCnAe306/6g4hurBteIVeGFhA8gSk1fjZh2fm0opo/lgvHRJOwfpvRWJGEedx7hEpjsDr8BRxeBc2OHaRO5UP+fYh8Qtki8ZeFUjr/psjRRz128Kr0C+NS0AByZtwg54d705uwsnf79jPdM1ewGryCcsxqYWCvT0174cIg3sLdQvPnESbV1zU+QsVskFZwYL+gLtzuAwExPW7cM12M/HS+Eb5xtWvRA46FZ/dnKFwQkUA/VgSi08eC5/EYg8dFBht9hDK+kiLPGHML8A6a3CoiMf0pd+DbdOxA21F0Tw==,iv:oEXxrvWosuiH2wSoSkP7YMwBQu3JKIhn/YeiaTL/UT4=,tag:XgBw2q/6LPWg2zuOC9Wb+w==,type:str]
|
||||
kylekrein-homepc: ENC[AES256_GCM,data:/7b7wHk9jX+2Gel3157KO4YHia+IyEurUic0BX9flNKdsjIyG/3N8lORAkIjwnPlFaN2VqGu6o1pFgW2dzkSAyATQIUeWpqL5rjxsG3mJ9/9TLh58Y7MIpFKx2r8AeUY0xEAhT1A4BCbnDMsneQtM9gBkgPdhhv6vVpe4XJS3n+dGPER/bQxxRbEt260EjxvL1OPf5C7Z7qNVhOzxNdgdJMQvXxyhRGlXRrrHFRdbw0nChStevgBL4+FoMuBFkqF/aJSoapwe8PNxp8z+Hk5Em+BQv/ieFcscESssCK1gSbvfz6MQyX+5ig+Gy+t28yy56/ir44PHwX47IOILzg7lABSvN+Uyt+sRKyBfx124hJjqgXf65YQ/fgknQt0NDKwZyP/gPSLC9HiLKdva/P9nuenfSnlLrGtfugejBAVQBMOP2HTp/ZKtveeKLVIzM7NLeHAw8ul1OL8OlOgyO3vhEkEVagLwtQYHqwoF7+z30TzTtGyDzuhohbhUH36D8BD/LTaPHxnnVIzWq/IBOmAU06U/EvS5x/JJtqMm8aaDFFEYA==,iv:+4umMhsr8s0IuiYuEdhDAOfLjAELEHbFVvWqaVyF2yQ=,tag:eE9gCZ3pC4wDLeMs5cQGZg==,type:str]
|
||||
kylekrein-framework12: ENC[AES256_GCM,data:I9gMFXcLUd4xLUWcrvp2eYcMgkG48dmiRjobnSa2Emtq2dqK/H31KLkTuk6PQvY71YbwG41tdqYsFqKTQTxf7d7toDfnfuXxPUbI2dc2ps2LhpPJb9wTUKRgHtJNwPpMjQ5s7lumG9wltWhT1xMSZvthq1LBcgL4iYYmePLef0TBvExnkRohqn32H64RILhX2VrI8gAWoYU7PglbG3J4tyUH1+zB2t8G8MrEDTMjMIbXmP3tALFiGl/AeSRrvZaCLnm7I3bgkhWJIic2ZXsbEknR5to5jhSI99Tdm4U5R+HyX1LCWr55jxmMdafvdqQlaTeTrv8fu3e4k7rEVkT2XzLnChG3MOUskNLbTcKscHiilCkrFMwp7Qo2EgQIj4VxKqrr0Dp+xj1PPl0q7bTAejR1ijpdOIlpn+PE7A6mBoIMMUcUu2hApe/eWqEUpHs6jKU9r6w+k8+O7IcwHGS1KgAzTAGPjiDZeWVPdUdanC+p4lp6sqjf4+ZaFbinGZfWpCX8pIv3Yzszc4+8j7PTQtX9GkQDVP7HXUyZS+SOH/169A==,iv:dF5+s+26zmoy0fR72P+pvPikshPtqLYewMCrieRJWaQ=,tag:R4/9xHLmOLkDqZnXClSKIA==,type:str]
|
||||
services:
|
||||
conduwuit: ENC[AES256_GCM,data:1shEq67QJTkeqrfYSr/eYG7gYWH//5ey6XQ=,iv:hy5wQmue8qU4ALfn9BrNQLnsTk8BsVVXY/8bDj18mXk=,tag:h6+hL0HjgSzd15Kc7Zg4ng==,type:str]
|
||||
gitlab:
|
||||
|
|
@ -18,10 +19,6 @@ services:
|
|||
activeRecordDeterministicKey: ENC[AES256_GCM,data:pJBZAL60XeCrW7CPx76WcWpsYOwlR4OWmIP/61vNL3k=,iv:t/YmnVFge6kLiQjXD6RKNn7r5Oy1Aeyi3ZIaP57Nhig=,tag:L4aU4h4KdbsSNDpgybaV3g==,type:str]
|
||||
oidcKeyBase: ENC[AES256_GCM,data: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,iv:P8C/7NUd1G/VbKz7iWjTVXxMFOxZQxX5d0V4Tj6KeCw=,tag:iq4s3ahqkmf4e7BffjlIcQ==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age1l8euy4w4nccrpdmfdfct468parcrulkqcts2jcljajs2as0k7passdv2x4
|
||||
enc: |
|
||||
|
|
@ -32,8 +29,7 @@ sops:
|
|||
M0hSNWNYbGM3a21McUVMaGNqWTdmNTQK3VRFV4EaC8K8AJi2PUt6TeBgueEmPLI8
|
||||
Vdwwbh89+xD5xf4Zm0LctPRlxxM6diubv0gIZZPy/ZXZfiU32ZnM0w==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-05-22T17:54:01Z"
|
||||
mac: ENC[AES256_GCM,data:Mh3pp3IQ+dqFaHY5ppptAS5Rgxhgq2V01/hbV+OPseh7kkHSoq78BEDD7O5W7XNW3EHFZO2T1snvmIfdCfMfI4fOovf54a/2H24C3DALf/CfNEPEPQ2kH6SXgfxGWq9tUnZrwPcaUgbAfbVF9TIjhByDSrMYrnBNOxZh9w0AkzE=,iv:WkUIlqW3IV5il4KYv7o/Vm/g4xrE68koxzx0MTayTbc=,tag:qwLOm137Z2xBqlxZLoE1tw==,type:str]
|
||||
pgp: []
|
||||
lastmodified: "2025-07-13T17:05:12Z"
|
||||
mac: ENC[AES256_GCM,data:hRjaoAb6ggQsrhMK5gDkVSqeKV2Mb2Yrmj8WuPM++UhHzCKVG3mE+uK2teTdbzpaU5+so2SJZuUvYRXVf8cK+2/NGz0ACkiWZ+DF0vbp/A0xW7NPZKhh1Uh3Q64ypKqDR4SsVpjn51FVl02/6k3yxi9bYnVzfdZkr6El3n8kzuE=,iv:I0frhCxpQW+tsPVFgOR/svmdrFpG3RXlSBN4OTO8mBw=,tag:4bY5wPuPMrgSkYW66TgAvA==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.4
|
||||
version: 3.10.2
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ in {
|
|||
openssh.authorizedKeys.keys = [
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGMt3PWVvmEL6a0HHTsxL4KMq1UGKFdzgX5iIkm6owGQ kylekrein@kylekrein-mac"
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFDdxZ5OyGcfD1JwEa4RWw86HWZ2dKFR0syrRckl7EvG kylekrein@kylekrein-homepc"
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIA85Vz5ve3aDzgPbnKH6I4FaJQpcu1nRDR+/kBZiQsuZ kylekrein@kylekrein-framework12"
|
||||
];
|
||||
};
|
||||
sops.secrets = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue