Compare commits

..

No commits in common. "87fa182b2085f048b00af01d27e8fca0d8371811" and "2d5b25daa3186f4d3218a42a5df1b1f874db87bd" have entirely different histories.

10 changed files with 49 additions and 87 deletions

View file

@ -18,6 +18,8 @@ in
experimental-features = nix-command flakes ca-derivations experimental-features = nix-command flakes ca-derivations
restrict-eval = false restrict-eval = false
''; '';
nixpkgs.system = if isMobile then "aarch64-linux" else "x86_64-linux";
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
# Use the systemd-boot EFI boot loader. # Use the systemd-boot EFI boot loader.
@ -25,6 +27,7 @@ in
boot.loader.efi.canTouchEfiVariables = !isMobile; boot.loader.efi.canTouchEfiVariables = !isMobile;
networking.hostName = "toki-${machine}"; networking.hostName = "toki-${machine}";
networking.wireless.enable = false;
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
# Power button settings # Power button settings

View file

@ -1,5 +1,14 @@
{ pkgs, lib, ... }: { pkgs, lib, macos-hyprcursor-src, ... }:
{ let
macos-hyprcursor = pkgs.stdenv.mkDerivation {
name = "macos-hyprcursor";
src = macos-hyprcursor-src;
installPhase = ''
mkdir -p $out/share/icons
cp -R themes/SVG/"macOS (SVG)" $out/share/icons/macos
'';
};
in {
environment.systemPackages = with pkgs; environment.systemPackages = with pkgs;
let aspell' = aspellWithDicts.override { let aspell' = aspellWithDicts.override {
aspell = aspell.overrideAttrs (super: { aspell = aspell.overrideAttrs (super: {
@ -29,6 +38,7 @@
playerctl playerctl
pamixer pamixer
ffmpeg ffmpeg
macos-hyprcursor
# System management # System management
htop-vim htop-vim
@ -50,12 +60,6 @@
]; ];
programs.steam.enable = true;
programs.steam.remotePlay.openFirewall = true;
programs.steam.gamescopeSession.enable = true;
programs.steam.extest.enable = true;
programs.steam.protontricks.enable = true;
programs.hyprland.enable = true; programs.hyprland.enable = true;
security.pam.services.hyprlock = {}; security.pam.services.hyprlock = {};

36
flake.lock generated
View file

@ -7,11 +7,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1769723138, "lastModified": 1761005073,
"narHash": "sha256-kgkwjs33YfJasADIrHjHcTIDs3wNX0xzJhnUP+oldEw=", "narHash": "sha256-r6qbieh8iC1q1eCaWv15f4UIp8SeGffwswhNSA1Qk3s=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "175532b6275b34598a0ceb1aef4b9b4006dd4073", "rev": "84e1adb0cdd13f5f29886091c7234365e12b1e7f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -40,11 +40,11 @@
"mobile-nixos": { "mobile-nixos": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1763065138, "lastModified": 1759261417,
"narHash": "sha256-46lJeUYH8YrfTccAoKQbO9lprq4dlo9VVLk+StPBSWM=", "narHash": "sha256-TjuoBb8+isL3KTdGgtYh90XPyeUMFbgNAOG9l23CB3A=",
"owner": "mobile-nixos", "owner": "mobile-nixos",
"repo": "mobile-nixos", "repo": "mobile-nixos",
"rev": "1943b7b06fcd1a2c87f4b89df58231915cc2ca44", "rev": "e6f6d527bf6abf94dd52fbba3143a720cef96431",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -55,26 +55,26 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1769724555, "lastModified": 1760958188,
"narHash": "sha256-aH00WqZJmnefVAXZSV2I46KwIm6b960oUeoQMRjROno=", "narHash": "sha256-2m1S4jl+GEDtlt2QqeHil8Ny456dcGSKJAM7q3j/BFU=",
"owner": "tokinanpa", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "1b68ec5cdf683546c904bf763a6ff38f81345f94", "rev": "d6645c340ef7d821602fd2cd199e8d1eed10afbc",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "tokinanpa", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"type": "github" "type": "github"
} }
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1769461804, "lastModified": 1760878510,
"narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=", "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "bfc1b8a4574108ceef22f02bafcf6611380c100d", "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -112,11 +112,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1769736324, "lastModified": 1762840613,
"narHash": "sha256-byOA1tbnxteN/0bSG4ezx0/GyG79wOEgDA2imeGmSKg=", "narHash": "sha256-Gda8Ewcs/V4p1Ek18BU+/J874a+KkSm8bA6m9zTsLqU=",
"rev": "24d4c6cc3bc3dd52d5921511d90bf887e42fc7df", "rev": "589aaaf95f487a5f939a2bc4ae0b7ee0b71e0f4c",
"type": "tarball", "type": "tarball",
"url": "https://git.tokinanpa.dev/api/v1/repos/toki/quickshell-toki-night/archive/24d4c6cc3bc3dd52d5921511d90bf887e42fc7df.tar.gz" "url": "https://git.tokinanpa.dev/api/v1/repos/toki/quickshell-toki-night/archive/589aaaf95f487a5f939a2bc4ae0b7ee0b71e0f4c.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",

View file

@ -3,9 +3,7 @@ description = "System conf";
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
# TODO: Move back to origin when merged nixos-hardware.url = "github:NixOS/nixos-hardware";
nixos-hardware.url = "github:tokinanpa/nixos-hardware";
mobile-nixos.url = "github:mobile-nixos/mobile-nixos"; mobile-nixos.url = "github:mobile-nixos/mobile-nixos";
mobile-nixos.flake = false; mobile-nixos.flake = false;

View file

@ -5,6 +5,5 @@
fsType = "ext4"; fsType = "ext4";
}; };
nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
nix.settings.max-jobs = lib.mkDefault 3; nix.settings.max-jobs = lib.mkDefault 3;
} }

View file

@ -18,7 +18,6 @@
swapDevices = [ ]; swapDevices = [ ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.enableRedistributableFirmware = lib.mkDefault true; hardware.enableRedistributableFirmware = lib.mkDefault true;
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
} }

View file

@ -1,15 +1,12 @@
{ config, lib, pkgs, modulesPath, ... }: { config, lib, pkgs, modulesPath, ... }:
{ {
imports = boot.loader.grub.useOSProber = true;
[ (modulesPath + "/installer/scan/not-detected.nix")
];
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
hardware.enableAllFirmware = true; hardware.enableAllFirmware = true;
hardware.microsoft-surface.kernelVersion = "stable"; hardware.microsoft-surface.kernelVersion = "stable";
boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" ]; boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
@ -29,6 +26,6 @@
[ { device = "/dev/disk/by-uuid/3a81bb60-49e4-41fc-8716-8db7dd5f698f"; } [ { device = "/dev/disk/by-uuid/3a81bb60-49e4-41fc-8716-8db7dd5f698f"; }
]; ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
virtualisation.hypervGuest.enable = true;
} }

View file

@ -1,22 +1,8 @@
{ pkgs, lib, macos-hyprcursor-src, ... }: { pkgs, lib, ... }:
let let
scripts = ./scripts; scripts = ./scripts;
shell = "quickshell"; shell = "quickshell";
# Cursor Theme
macos-hyprcursor = pkgs.stdenv.mkDerivation {
name = "macos-hyprcursor";
src = macos-hyprcursor-src;
installPhase = ''
mkdir -p $out/share/icons
cp -R themes/SVG/"macOS (SVG)" $out/share/icons/macos
cp -R themes/SVG/"macOS Hyprcursor (SVG) (White)" $out/share/icons/macos-white
'';
};
in { in {
home.packages = [ macos-hyprcursor ];
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
systemd.enable = true; systemd.enable = true;
@ -30,7 +16,7 @@ in {
env = [ env = [
"HYPRCURSOR_THEME,macos" "HYPRCURSOR_THEME,macos"
"HYPRCURSOR_SIZE,24" "HYPRCURSOR_SIZE,12"
]; ];
general = { general = {
@ -46,10 +32,9 @@ in {
"col.active_border" = "rgb(b4f9f8)"; "col.active_border" = "rgb(b4f9f8)";
}; };
windowrule = [ windowrulev2 = [
"match:fullscreen 1, border_color rgb(f7768e)" "bordercolor rgb(f7768e), fullscreen:1"
"match:initial_class ueberzug(.*), float on, no_focus on, tag +noeffects" "noanim, initialClass:ueberzug(.*)"
"match:tag noeffects, no_anim on, decorate off, rounding 0"
]; ];
cursor = { cursor = {
@ -81,6 +66,10 @@ in {
font_size = 14; font_size = 14;
}; };
layerrule = [
"noanim, ^(notifications)$"
];
animations = { animations = {
bezier = [ "overshot, 0.13, 0.99, 0.29, 1.06" ]; bezier = [ "overshot, 0.13, 0.99, 0.29, 1.06" ];
animation = [ animation = [
@ -95,6 +84,7 @@ in {
misc = { misc = {
disable_hyprland_logo = true; disable_hyprland_logo = true;
disable_autoreload = true; disable_autoreload = true;
new_window_takes_over_fullscreen = 2;
focus_on_activate = true; focus_on_activate = true;
}; };
@ -148,9 +138,6 @@ in {
# Workspace manipulation # Workspace manipulation
"$mod, N, global, ${shell}:newworkspace" "$mod, N, global, ${shell}:newworkspace"
"$mod Shift, N, global, ${shell}:movetonewworkspace" "$mod Shift, N, global, ${shell}:movetonewworkspace"
# Game Mode
"$mod, F1, exec, ${scripts}/gamemode"
] ++ ] ++
builtins.concatMap (n: builtins.concatMap (n:
let let

View file

@ -1,7 +1,5 @@
{ pkgs, lib, quickshell-toki-night, ... }: { pkgs, lib, quickshell-toki-night, ... }:
let {
quickshell = quickshell-toki-night.packages.${pkgs.stdenv.hostPlatform.system}.default;
in {
systemd.user.services.quickshell = { systemd.user.services.quickshell = {
Install.WantedBy = [ "graphical-session.target" ]; Install.WantedBy = [ "graphical-session.target" ];
@ -12,6 +10,6 @@ in {
PartOf = [ "graphical-session.target" ]; PartOf = [ "graphical-session.target" ];
}; };
Service.ExecStart = lib.getExe quickshell; Service.ExecStart = lib.getExe quickshell-toki-night.packages.${pkgs.system}.default;
}; };
} }

View file

@ -1,23 +0,0 @@
#!/usr/bin/env bash
HYPRGAMEMODE=$(hyprctl getoption animations:enabled | awk 'NR==1{print $2}')
if [ "$HYPRGAMEMODE" = 1 ] ; then
hyprctl --batch "\
keyword animations:enabled 0;\
keyword animation borderangle,0; \
keyword decoration:shadow:enabled 0;\
keyword decoration:blur:enabled 0;\
keyword decoration:fullscreen_opacity 1;\
keyword general:gaps_in 0;\
keyword general:gaps_out 0;\
keyword general:border_size 0;\
keyword decoration:rounding 0"
hyprctl dispatch global "quickshell:hidden"
hyprctl notify 1 2000 "rgb(73daca)" "Gamemode [ON]"
exit
else
hyprctl notify 1 2000 "rgb(f7768e)" "Gamemode [OFF]"
hyprctl dispatch global "quickshell:hiddenoff"
hyprctl reload
exit 0
fi
exit 1