summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDevin Finlinson <devin.finlinson@pm.me>2026-04-23 14:11:46 -0600
committerDevin Finlinson <devin.finlinson@pm.me>2026-04-23 14:11:46 -0600
commit369c079b75547faaa5bbd708f05b980f18bd80b0 (patch)
tree1c2122e680d036c3e88c99ab4675fcf2aba5bba5
parent00fb2bc7b139b0f7de0967826fd31b4b8da41902 (diff)
set up nix-search-tv with some modules, and make qutebrowser default
-rw-r--r--flake.nix82
-rw-r--r--home-manager/home.nix21
2 files changed, 88 insertions, 15 deletions
diff --git a/flake.nix b/flake.nix
index 33cce64..b131b6e 100644
--- a/flake.nix
+++ b/flake.nix
@@ -6,6 +6,8 @@
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs-old.url = "github:nixos/nixpkgs/nixos-25.05";
+ flake-utils.url = "github:numtide/flake-utils";
+
nix-index-database.url = "github:nix-community/nix-index-database";
nix-index-database.inputs.nixpkgs.follows = "nixpkgs-unstable";
@@ -181,7 +183,7 @@
};
- outputs = inputs@{ self, ... }: with inputs;
+ outputs = inputs@{ self, flake-utils, ... }: with inputs;
# packages.aarch64-linux = {
# # packages.x86_64-linux = {
# aarch64-installer = nixos-generators.nixosGenerate {
@@ -198,14 +200,15 @@
inherit (self) outputs;
lib = nixpkgs.lib // home-manager.lib;
# systems = [ "x86_64-linux" "aarch64-linux" ];
- # # forAllSystems = f: lib.genAttrs systems (system: f pkgsFor.${system});
+ # forAllSystems = f: lib.genAttrs systems (system: f pkgsFor.${system});
# pkgsFor = lib.genAttrs systems (system: import nixpkgs {
# inherit system;
# config.allowUnfree = true;
# });
# function to use unf to list options from arbitrary module for home-manager
- mkOpts = system: module:
+ # mkOpts = inputs.unf.lib.json;
+ mkOpts = system: modules: {specialArgs?{}, userOpts?{}, uri?""}:
inputs.unf.lib.json {
inherit self;
pkgs = nixpkgs.legacyPackages.${system};
@@ -213,8 +216,42 @@
# not all modules can be evaluated easily. If your module
# does not evaluate, try checking this NüschtOS file:
# https://github.com/NuschtOS/search.nuschtos.de/blob/main/flake.nix
- modules = [module];
- };
+ modules = modules;
+ specialArgs = specialArgs;
+ userOpts = userOpts;
+ newPath = uri;
+ };
+
+ # forAllSystems = system: (
+ # flake-utils.lib.eachDefaultSystem (system:
+ # let
+ # pkgs = (import nixpkgs) {
+ # inherit system;
+ # };
+ # inherit (pkgs) lib;
+ # in {
+ # packages = {
+ # default = search.packages.${system}.mkMultiSearch {
+ # scopes = [
+ # {
+ # modules = [ disko.nixosModules.default ];
+ # name = "disko";
+ # specialArgs.modulesPath = nixpkgs + "/nixos/modules";
+ # # urlPrefix = "https://github.com/nix-community/disko/blob/master/";
+ # }
+ # {
+ # modules = [
+ # microvm.nixosModules.host
+ # microvm.nixosModules.microvm
+ # ];
+ # name = "microvm";
+ # # urlPrefix = "https://github.com/microvm-nix/microvm.nix/blob/main/";
+ # }
+ # ];
+ # };
+ # };
+ # }
+ # );
minimalHomeManagerSettings = [ # From github:MasterofNull/nixos config
home-manager.nixosModules.home-manager {
@@ -222,6 +259,38 @@
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = {
inherit inputs;
+ # module = mkopts system:
+
+ diskoOpts = mkOpts "x86_64-linux" [inputs.disko.nixosModules.default]{
+ specialArgs.modulesPath = nixpkgs + "/nixos/modules";
+ };
+ microvmOpts = mkOpts "x86_64-linux" [
+ inputs.microvm.nixosModules.microvm
+ inputs.microvm.nixosModules.host
+ ] {};
+ # moddedMinecraftOpts = mkOpts "x86_64-linux" [
+ # inputs.modded-minecraft-servers.module
+ # ] {};
+ };
+ }
+ ];
+ nixSearchTv = [
+ home-manager.nixosModules.home-manager {
+ home-manager.extraSpecialArgs = {
+ # microvmModules = lib.mergeModules
+ # inputs.microvm.nixosModules.host
+ # inputs.microvm.nixosModules.microvm
+ # ];
+ diskoOpts = mkOpts "x86_64-linux" [inputs.disko.nixosModules.default]{
+ specialArgs.modulesPath = nixpkgs + "/nixos/modules";
+ };
+ microvmOpts = mkOpts "x86_64-linux" [
+ inputs.microvm.nixosModules.microvm
+ inputs.microvm.nixosModules.host
+ ] {};
+ # moddedMinecraftOpts = mkOpts "x86_64-linux" [
+ # inputs.modded-minecraft-servers.module
+ # ] {};
};
}
];
@@ -282,9 +351,6 @@
# hyprland.homeManagerModules.default {wayland.windowManager.hyprland.enable = true;}
home-manager.nixosModules.home-manager {
home-manager.users.defin = import ./home-manager/tiling-wm.nix;
- home-manager.extraSpecialArgs = {
- diskoOptions = inputs.disko.nixosModules.default;
- };
}
];
};
diff --git a/home-manager/home.nix b/home-manager/home.nix
index d25cdfb..4972665 100644
--- a/home-manager/home.nix
+++ b/home-manager/home.nix
@@ -11,13 +11,18 @@ in {
];
- # xdg.mimeApps = {
- # enable = true;
- # defaultApplications = {
+ xdg.mimeApps = {
+ enable = true;
+ defaultApplications = {
# "x-scheme-handler/pttp" = ["cisco-pt8.desktop.desktop"];
# "application/octet-stream" = ["cisco-pt8.desktop.desktop"];
- # };
- # };
+ "text/html" = "org.qutebrowser.qutebrowser.desktop";
+ "x-scheme-handler/http" = "org.qutebrowser.qutebrowser.desktop";
+ "x-scheme-handler/https" = "org.qutebrowser.qutebrowser.desktop";
+ "x-scheme-handler/about" = "org.qutebrowser.qutebrowser.desktop";
+ "x-scheme-handler/unknown" = "org.qutebrowser.qutebrowser.desktop";
+ };
+ };
# home-manager.users.defin= {
home = {
# Home Manager needs a bit of information about you and the paths it should
@@ -134,7 +139,9 @@ in {
enable = true;
settings = {
experimental.options_file = {
- disko = "${args.diskoOptions}";
+ disko = "${args.diskoOpts}";
+ microvm = "${args.microvmOpts}";
+ # modded-micecraft = "${args.moddedMinecraftOpts}";
};
};
};
@@ -148,7 +155,7 @@ in {
matchBlocks = {
serverAliveCountMax = 6;
serverAliveInterval = 30;
- port = 2200;
+ # port = 2200;
"doretta" = {
forwardAgent = true;
setEnv = {