From 170cfe7f3cefc4bb4ce9285ac4eb7c19df6e1411 Mon Sep 17 00:00:00 2001 From: ooks-io Date: Fri, 16 Feb 2024 01:15:44 +1300 Subject: [PATCH] feat: slippi init config --- flake.lock | 90 ++++++++++++++++++- flake.nix | 5 ++ home/modules/desktop/default.nix | 2 +- home/modules/desktop/gaming/default.nix | 14 +++ .../modules/desktop/gaming/slippi/default.nix | 18 ++++ home/profile/default.nix | 3 + home/profile/gaming/default.nix | 18 ++++ home/user/ooks/ooksdesk/default.nix | 2 +- 8 files changed, 149 insertions(+), 3 deletions(-) create mode 100644 home/modules/desktop/gaming/slippi/default.nix diff --git a/flake.lock b/flake.lock index d9fb3d6..66b83fe 100644 --- a/flake.lock +++ b/flake.lock @@ -454,6 +454,22 @@ "type": "github" } }, + "lowdown-src": { + "flake": false, + "locked": { + "lastModified": 1598695561, + "narHash": "sha256-gyH/5j+h/nWw0W8AcR2WKvNBUsiQ7QuxqSJNXAwV+8E=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "1705b4a26fbf065d9574dce47a94e8c7c79e052f", + "type": "github" + }, + "original": { + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" + } + }, "nh": { "inputs": { "nixpkgs": [ @@ -474,6 +490,24 @@ "type": "github" } }, + "nix": { + "inputs": { + "lowdown-src": "lowdown-src", + "nixpkgs": "nixpkgs_5" + }, + "locked": { + "lastModified": 1609520816, + "narHash": "sha256-IGO7tfJXsv9u2wpW76VCzOsHYapRZqH9pHGVsoffPrI=", + "owner": "NixOS", + "repo": "nix", + "rev": "8a2ce0f455da32bc20978e68c0aad9efb4560abc", + "type": "github" + }, + "original": { + "id": "nix", + "type": "indirect" + } + }, "nix-colors": { "inputs": { "base16-schemes": "base16-schemes", @@ -647,6 +681,21 @@ } }, "nixpkgs_5": { + "locked": { + "lastModified": 1602702596, + "narHash": "sha256-fqJ4UgOb4ZUnCDIapDb4gCrtAah5Rnr2/At3IzMitig=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ad0d20345219790533ebe06571f82ed6b034db31", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixos-20.09-small", + "type": "indirect" + } + }, + "nixpkgs_6": { "locked": { "lastModified": 1706925685, "narHash": "sha256-hVInjWMmgH4yZgA4ZtbgJM1qEAel72SYhP5nOWX4UIM=", @@ -730,6 +779,7 @@ "nixpkgs": "nixpkgs_4", "nixvim": "nixvim", "sops-nix": "sops-nix", + "ssbm-nix": "ssbm-nix", "zjstatus": "zjstatus" } }, @@ -783,6 +833,22 @@ "type": "github" } }, + "slippi-desktop": { + "flake": false, + "locked": { + "lastModified": 1607036060, + "narHash": "sha256-TUYsiVvKAws3N3roZYDwkLB0obyl6zwvh8CAk2RwHrY=", + "owner": "project-slippi", + "repo": "slippi-desktop-app", + "rev": "3ca39ba6bbd02157515b12a79aa01e5d669ad1b1", + "type": "github" + }, + "original": { + "owner": "project-slippi", + "repo": "slippi-desktop-app", + "type": "github" + } + }, "sops-nix": { "inputs": { "nixpkgs": [ @@ -804,6 +870,28 @@ "type": "github" } }, + "ssbm-nix": { + "inputs": { + "nix": "nix", + "nixpkgs": [ + "nixpkgs" + ], + "slippi-desktop": "slippi-desktop" + }, + "locked": { + "lastModified": 1696638790, + "narHash": "sha256-fmpFkchuAyQfaSOWqEMnw4wRxWFkD7LqBwjKcVog8xQ=", + "owner": "djanatyn", + "repo": "ssbm-nix", + "rev": "cfeb1874b437e5883272c522234d1d15cb3d3ebd", + "type": "github" + }, + "original": { + "owner": "djanatyn", + "repo": "ssbm-nix", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1681028828, @@ -917,7 +1005,7 @@ "inputs": { "crane": "crane_2", "flake-utils": "flake-utils_4", - "nixpkgs": "nixpkgs_5", + "nixpkgs": "nixpkgs_6", "rust-overlay": "rust-overlay_2" }, "locked": { diff --git a/flake.nix b/flake.nix index 17a0b6b..c40c61c 100644 --- a/flake.nix +++ b/flake.nix @@ -54,6 +54,11 @@ nix-gaming.url = "github:fufexan/nix-gaming"; + ssbm-nix = { + url = "github:djanatyn/ssbm-nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + zjstatus.url = "github:dj95/zjstatus"; }; diff --git a/home/modules/desktop/default.nix b/home/modules/desktop/default.nix index 52c1c0c..b2bb405 100644 --- a/home/modules/desktop/default.nix +++ b/home/modules/desktop/default.nix @@ -10,6 +10,6 @@ #./utility -- still needs to be implemented ./wayland # -- almost done, need to implement eww #./productivity -- still needs to be implemented - # ./gaming + ./gaming ]; } diff --git a/home/modules/desktop/gaming/default.nix b/home/modules/desktop/gaming/default.nix index 8b13789..1d9f803 100644 --- a/home/modules/desktop/gaming/default.nix +++ b/home/modules/desktop/gaming/default.nix @@ -1 +1,15 @@ +{ lib, ... }: +{ + + imports = [ + ./slippi + ]; + + options.homeModules.desktop.gaming = { + slippi = { + enable = lib.mkEnableOption "Enable Slippi home module"; + }; + }; + +} diff --git a/home/modules/desktop/gaming/slippi/default.nix b/home/modules/desktop/gaming/slippi/default.nix new file mode 100644 index 0000000..c2eb669 --- /dev/null +++ b/home/modules/desktop/gaming/slippi/default.nix @@ -0,0 +1,18 @@ +{ inputs, config, lib, ... }: + +let + cfg = config.homeModules.desktop.gaming.slippi; +in + +{ + +imports = [ + inputs.ssbm-nix.homeManagerModule +]; + + config = lib.mkIf cfg.enable { + ssbm = { + slippi-launcher.enable = true; + }; + }; +} diff --git a/home/profile/default.nix b/home/profile/default.nix index 325cda8..a7dd43a 100644 --- a/home/profile/default.nix +++ b/home/profile/default.nix @@ -26,6 +26,9 @@ in hyprland = { enable = lib.mkEnableOption "Enable the hyprland profile"; }; + gaming = { + enable = lib.mkEnableOption "Enable the gaming profile"; + }; }; }; diff --git a/home/profile/gaming/default.nix b/home/profile/gaming/default.nix index e69de29..5a55bef 100644 --- a/home/profile/gaming/default.nix +++ b/home/profile/gaming/default.nix @@ -0,0 +1,18 @@ +{ config, lib, ... }: +let + cfg = config.profiles.gaming; +in +{ + + imports = [ + ../../modules + ]; + + config = lib.mkIf cfg.enable { + homeModules.desktop = { + gaming = { + slippi.enable = true; + }; + }; + }; +} diff --git a/home/user/ooks/ooksdesk/default.nix b/home/user/ooks/ooksdesk/default.nix index 1ccb13a..09ac931 100644 --- a/home/user/ooks/ooksdesk/default.nix +++ b/home/user/ooks/ooksdesk/default.nix @@ -5,7 +5,7 @@ ../../../profile ]; - activeProfiles = ["base" "hyprland"]; + activeProfiles = ["base" "hyprland" "gaming"]; home.sessionVariables.HN = "ooksdesk";