summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--config/nvim/lua/lsp.lua2
-rw-r--r--default.nix3
-rw-r--r--flake.lock22
-rw-r--r--flake.nix4
-rw-r--r--hosts/jonbox/default.nix16
-rw-r--r--modules/desktop/apps/games/prism.nix17
-rw-r--r--modules/desktop/apps/mpd.nix14
-rw-r--r--modules/hardware/audio.nix9
-rw-r--r--overlay.nix34
-rw-r--r--packages/betacraft.nix65
-rw-r--r--packages/betacraft/default.nix15
11 files changed, 143 insertions, 58 deletions
diff --git a/config/nvim/lua/lsp.lua b/config/nvim/lua/lsp.lua
index 2e823ec..1c2b0ae 100644
--- a/config/nvim/lua/lsp.lua
+++ b/config/nvim/lua/lsp.lua
@@ -192,7 +192,7 @@ keyset("n", "<space>k", ":<C-u>CocPrev<cr>", opts)
-- Resume latest coc list
keyset("n", "<space>p", ":<C-u>CocListResume<cr>", opts)
-require("nvim-treesitter.configs").setup({
+require("nvim-treesitter.config").setup({
highlight = { enable = true, },
})
diff --git a/default.nix b/default.nix
index 191e7b1..19464b0 100644
--- a/default.nix
+++ b/default.nix
@@ -66,6 +66,7 @@
];
};
};
+ hardware.enableAllFirmware = true;
- system.stateVersion = "25.11";
+ system.stateVersion = "26.05";
}
diff --git a/flake.lock b/flake.lock
index 91a8a41..57f28aa 100644
--- a/flake.lock
+++ b/flake.lock
@@ -7,43 +7,43 @@
]
},
"locked": {
- "lastModified": 1764866045,
- "narHash": "sha256-0GsEtXV9OquDQ1VclQfP16cU5VZh7NEVIOjSH4UaJuM=",
+ "lastModified": 1781319724,
+ "narHash": "sha256-ZGuxexEMo4Xv28KJ0dX/m/PHN4oZIOnxHZpNTyrvx4M=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "f63d0fe9d81d36e5fc95497217a72e02b8b7bcab",
+ "rev": "8355f0a16b2dbb06a97959a918af5b239bbe05ae",
"type": "github"
},
"original": {
"owner": "nix-community",
- "ref": "release-25.11",
+ "ref": "release-26.05",
"repo": "home-manager",
"type": "github"
}
},
"nixpkgs": {
"locked": {
- "lastModified": 1764831616,
- "narHash": "sha256-OtzF5wBvO0jgW1WW1rQU9cMGx7zuvkF7CAVJ1ypzkxA=",
+ "lastModified": 1781216227,
+ "narHash": "sha256-9mUW6gNwoN2SWc/l0fW4svPNOulXLl8ijqKyeSOGgJE=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "c97c47f2bac4fa59e2cbdeba289686ae615f8ed4",
+ "rev": "a0374025a863d007d98e3297f6aa46cc3141c2f0",
"type": "github"
},
"original": {
"owner": "nixos",
- "ref": "nixos-25.11",
+ "ref": "nixos-26.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
- "lastModified": 1758035966,
- "narHash": "sha256-qqIJ3yxPiB0ZQTT9//nFGQYn8X/PBoJbofA7hRKZnmE=",
+ "lastModified": 1772198003,
+ "narHash": "sha256-I45esRSssFtJ8p/gLHUZ1OUaaTaVLluNkABkk6arQwE=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "8d4ddb19d03c65a36ad8d189d001dc32ffb0306b",
+ "rev": "dd9b079222d43e1943b6ebd802f04fd959dc8e61",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index a45bca1..75c9e76 100644
--- a/flake.nix
+++ b/flake.nix
@@ -2,11 +2,11 @@
description = "Jon's NixOS configuration";
inputs = {
- nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
+ nixpkgs.url = "github:nixos/nixpkgs/nixos-26.05";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = {
- url = "github:nix-community/home-manager/release-25.11";
+ url = "github:nix-community/home-manager/release-26.05";
inputs.nixpkgs.follows = "nixpkgs";
};
};
diff --git a/hosts/jonbox/default.nix b/hosts/jonbox/default.nix
index f74d4a0..2809f70 100644
--- a/hosts/jonbox/default.nix
+++ b/hosts/jonbox/default.nix
@@ -57,6 +57,7 @@
gpu = "nvidia";
drive = "nvme";
hasBluetooth = true;
+ hasPrinter = true;
};
desktop = {
niri.enable = true;
@@ -112,17 +113,22 @@
pkgs.linuxPackages_latest.perf
pkgs.perf-tools
- pkgs.unstable.yafc-ce
];
home.packages = with pkgs; [
- cataclysm-dda
- cataclysm-tlg
- (callPackage (rootPath + /packages/freeciv/default.nix) {})
- unstable.unciv
vintagestory
+ betacraft
+
+ freeciv
+ freeorion
+
+ starsector
+
+ unstable.yafc-ce
];
+ programs.gamemode.enable = true;
+
#services.clamav.daemon.enable = true;
#services.clamav.updater.enable = true;
diff --git a/modules/desktop/apps/games/prism.nix b/modules/desktop/apps/games/prism.nix
index b586451..4ee10b0 100644
--- a/modules/desktop/apps/games/prism.nix
+++ b/modules/desktop/apps/games/prism.nix
@@ -16,9 +16,20 @@ in {
};
config = lib.mkIf (prismConf.enable) {
- home.packages = [
- pkgs.javaPackages.compiler.temurin-bin.jre-25
- pkgs.prismlauncher
+ home.packages = with pkgs; [
+ (prismlauncher.override {
+ jdks = [
+ graalvmPackages.graalvm-ce
+ (graalvmPackages.graalvm-ce.overrideAttrs (old: rec {
+ version = "17.0.9";
+ src = pkgs.fetchurl {
+ sha256 = "sha256-5HunIpzvAjk+GdW49G9/HKtIKd0Xv+hNVDH8j/DiKpY=";
+ url = "https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-17.0.9/graalvm-community-jdk-17.0.9_linux-x64_bin.tar.gz";
+ };
+ doInstallCheck = false;
+ }))
+ ];
+ })
];
};
}
diff --git a/modules/desktop/apps/mpd.nix b/modules/desktop/apps/mpd.nix
index 3ec86e4..f6f9ff3 100644
--- a/modules/desktop/apps/mpd.nix
+++ b/modules/desktop/apps/mpd.nix
@@ -23,12 +23,14 @@ in
services.mpd = {
enable = true;
musicDirectory = "/home/jon/mus";
- extraConfig = ''
-audio_output {
- type "pipewire"
- name "Pipewire Output"
-}
- '';
+ settings = {
+ audio_output = [
+ {
+ type = "pipewire";
+ name = "Pipewire";
+ }
+ ];
+ };
user = "jon";
};
systemd.services.mpd.environment = {
diff --git a/modules/hardware/audio.nix b/modules/hardware/audio.nix
index a674597..d70b1d2 100644
--- a/modules/hardware/audio.nix
+++ b/modules/hardware/audio.nix
@@ -29,10 +29,19 @@ in {
"bluez5.enable-sbc-xq" = true;
"bluez5.enable-msbc" = true;
"bluez5.enable-hw-volume" = true;
+ "bluez5.roles" = [ "hsp_hs" "hsp_ag" "hfp_hf" "hfp_ag" "a2dp_source" "bap_source" ];
};
};
};
+ environment.systemPackages = with pkgs; [
+ alsa-firmware
+ alsa-oss
+ alsa-ucm-conf
+ ];
+
+ hardware.alsa.enablePersistence = true;
+
user.extraGroups = ["audio"];
home.packages = [pkgs.pavucontrol];
}
diff --git a/overlay.nix b/overlay.nix
index aacbcaa..93d2283 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -8,6 +8,8 @@
config.allowUnfree = true;
};
+ betacraft = prev.pkgs.callPackage ./packages/betacraft.nix {};
+
unciv = prev.unciv.overrideAttrs (old: rec {
version = "4.18.14";
src = prev.fetchurl {
@@ -16,40 +18,14 @@
};
});
- vintagestory = prev.vintagestory.overrideAttrs (old: {
- version = "1.21.6";
- src = prev.fetchurl {
- url = "https://cdn.vintagestory.at/gamefiles/stable/vs_client_linux-x64_${final.vintagestory.version}.tar.gz";
- hash = "sha256-LkiL/8W9MKpmJxtK+s5JvqhOza0BLap1SsaDvbLYR0c=";
- };
- });
-
- cataclysm-dda = prev.cataclysm-dda.overrideAttrs (old: {
+ cataclysm-dda-indigo = prev.cataclysm-dda.overrideAttrs (old: {
version = "0.I";
src = prev.fetchFromGitHub {
owner = "CleverRaven";
repo = "Cataclysm-DDA";
- rev = "${final.cataclysm-dda.version}-branch";
- sha256 = "sha256-XdrmnWgfIz1d8FSQE45efx4Lnz3AE1o6QbggbS3fuMI=";
+ rev = "${final.cataclysm-dda-indigo.version}-branch";
+ hash = "sha256-FA1ivcg+8JBKs9AM0l2iyYE7wAT7IIlnzRp+fCIomso=";
};
patches = [];
});
-
- cataclysm-tlg = prev.cataclysm-dda-git.overrideAttrs (old: {
- meta.mainProgram = "cataclysm-tlg-tiles";
- pname = "cataclysm-tlg";
- version = "2025-12-15-2247";
- src = prev.fetchFromGitHub {
- owner = "Cataclysm-TLG";
- repo = "Cataclysm-TLG";
- tag = "cataclysm-tlg-1.0-${final.cataclysm-tlg.version}";
- sha256 = "sha256-KJ3/uZ6d18dES5qgElIUDdncEWBQIzaZMEHzvzcpJoA=";
- };
- makeFlags = prev.cataclysm-dda-git.makeFlags ++ [ "TESTS=0" ];
- postInstall = ''
- substituteInPlace $out/share/applications/com.cataclysm-tlg.cataclysm-tlg.desktop \
- --replace-fail "Exec=cataclysm-tlg-tiles" "Exec=$out/bin/cataclysm-tlg-tiles"
- rm $out/bin/zzip
- '';
- });
}
diff --git a/packages/betacraft.nix b/packages/betacraft.nix
new file mode 100644
index 0000000..1e2b080
--- /dev/null
+++ b/packages/betacraft.nix
@@ -0,0 +1,65 @@
+{
+ lib,
+ stdenv,
+ fetchurl,
+ makeWrapper,
+ makeDesktopItem,
+ copyDesktopItems,
+ jre8,
+ libxxf86vm,
+ libGL,
+ openal,
+ pulseaudio,
+ xrandr
+}:
+stdenv.mkDerivation rec {
+ pname = "betacraft";
+ version = "1.09_17";
+
+ launcherjar = fetchurl {
+ url = "https://github.com/betacraftuk/betacraft-launcher/releases/download/${version}/launcher-${version}.jar";
+ hash = "sha256-CMemX7mrCa5d9kQJN1/ryeBnJ/s6yz3aHq9ym4WWWOM";
+ };
+
+ nativeBuildInputs = [
+ makeWrapper
+ copyDesktopItems
+ ];
+
+ runtimeLibs = lib.makeLibraryPath ([
+ libxxf86vm
+ libGL
+ openal
+ ]);
+
+ runtimeBins = lib.makeBinPath ([
+ xrandr
+ ]);
+
+ desktopItems = [
+ (makeDesktopItem {
+ name = "betacraft";
+ desktopName = "Betacraft Launcher";
+ exec = "betacraft";
+ categories = [ "Game" ];
+ })
+ ];
+
+ phases = [ "installPhase" "preFixup" ];
+
+ installPhase = ''
+ runHook preInstall
+ mkdir -p $out/share/betacraft $out/bin
+ cp -r ${launcherjar} $out/share/betacraft/launcher-${version}.jar
+ runHook postInstall
+ '';
+ preFixup = ''
+ makeWrapper ${pulseaudio}/bin/padsp $out/bin/betacraft \
+ --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \
+ --prefix PATH : "${runtimeBins}" \
+ --set DISPLAY ":0" \
+ --add-flags ${jre8}/lib/openjdk/jre/bin/java \
+ --add-flags -jar \
+ --add-flags $out/share/betacraft/launcher-${version}.jar
+ '';
+}
diff --git a/packages/betacraft/default.nix b/packages/betacraft/default.nix
new file mode 100644
index 0000000..ecf90ff
--- /dev/null
+++ b/packages/betacraft/default.nix
@@ -0,0 +1,15 @@
+{
+ lib,
+ stdenv,
+ fetchFromGitHub,
+ autoreconfHook,
+}:
+stdenv.mkDerivation (finalAttrs: {
+ pname = "betacraft";
+ version = "1.09_17";
+
+ src = fetchurl {
+ url = "https://github.com/betacraftuk/betacraft-launcher/releases/download/${version}/launcher-${version}.jar";
+ sha256 = "";
+ }
+})