diff --git a/configs/desktop.nix b/configs/desktop.nix index b701fea..239a00f 100644 --- a/configs/desktop.nix +++ b/configs/desktop.nix @@ -88,7 +88,7 @@ chromium gimp gparted - idea-ultimate-fixed + idea-ultimate-fhs mpv obsidian strawberry diff --git a/exprs/idea-fixed.nix b/exprs/idea-fixed.nix deleted file mode 100644 index 9655ad5..0000000 --- a/exprs/idea-fixed.nix +++ /dev/null @@ -1,69 +0,0 @@ -{ - lib, - stdenv, - jetbrains, - makeWrapper, - symlinkJoin, - alsa-lib, - flite, - glfw3-minecraft, - libGL, - libX11, - libXcursor, - libXext, - libXrandr, - libXxf86vm, - libjack2, - libpulseaudio, - mesa-demos, - openal, - pciutils, - pipewire, - udev, - xrandr, -}: let - inherit (jetbrains) idea-ultimate; -in - symlinkJoin { - name = "idea-ultimate-fixed-${idea-ultimate.version}"; - - paths = [idea-ultimate]; - - nativeBuildInputs = [makeWrapper]; - - postBuild = let - runtimeLibs = [ - stdenv.cc.cc.lib - ## native versions - glfw3-minecraft - openal - - ## openal - alsa-lib - libjack2 - libpulseaudio - pipewire - - ## glfw - libGL - libX11 - libXcursor - libXext - libXrandr - libXxf86vm - - udev # oshi - flite # tts - ]; - - runtimePrograms = [ - mesa-demos - pciutils # need lspci - xrandr # needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128 - ]; - in '' - wrapProgram $out/bin/idea-ultimate \ - --set LD_LIBRARY_PATH ${lib.makeLibraryPath runtimeLibs} \ - --prefix PATH : ${lib.makeBinPath runtimePrograms} - ''; - } diff --git a/exprs/openssh-fhs-fix.patch b/exprs/openssh-fhs-fix.patch new file mode 100644 index 0000000..27cc5ce --- /dev/null +++ b/exprs/openssh-fhs-fix.patch @@ -0,0 +1,13 @@ +diff --git a/readconf.h b/readconf.h +index ded13c9..94f489e 100644 +--- a/readconf.h ++++ b/readconf.h +@@ -203,7 +203,7 @@ typedef struct { + #define SESSION_TYPE_SUBSYSTEM 1 + #define SESSION_TYPE_DEFAULT 2 + +-#define SSHCONF_CHECKPERM 1 /* check permissions on config file */ ++#define SSHCONF_CHECKPERM 0 /* check permissions on config file */ + #define SSHCONF_USERCONF 2 /* user provided config file not system */ + #define SSHCONF_FINAL 4 /* Final pass over config, after canon. */ + #define SSHCONF_NEVERMATCH 8 /* Match/Host never matches; internal only */ \ No newline at end of file diff --git a/exprs/overlay.nix b/exprs/overlay.nix index 1af7aa5..7397303 100644 --- a/exprs/overlay.nix +++ b/exprs/overlay.nix @@ -10,5 +10,43 @@ final: prev: { }; }); - idea-ultimate-fixed = prev.callPackage ./idea-fixed.nix {}; + fhs-openssh = prev.openssh.overrideAttrs (old: { + patches = old.patches or [] ++ [./openssh-fhs-fix.patch]; + }); + + idea-ultimate-fhs = prev.buildFHSEnv { + name = "idea-ultimate"; + + targetPkgs = pkgs: (with pkgs; [ + fhs-openssh + stdenv.cc.cc.lib + glfw3-minecraft + openal + + ## openal + alsa-lib + libjack2 + libpulseaudio + pipewire + + ## glfw + libGL + xorg.libX11 + xorg.libXcursor + xorg.libXext + xorg.libXrandr + xorg.libXxf86vm + + udev # oshi + flite + + esbuild + ]); + + extraInstallCommands = '' + ln -s "${prev.jetbrains.idea-ultimate}/share" "$out/" + ''; + + runScript = prev.lib.getExe prev.jetbrains.idea-ultimate; + }; } diff --git a/systems/fuji-wsl/default.nix b/systems/fuji-wsl/default.nix index f0a9df2..e37a24c 100644 --- a/systems/fuji-wsl/default.nix +++ b/systems/fuji-wsl/default.nix @@ -8,6 +8,11 @@ nixos-wsl.nixosModules.default ]; + programs.nix-ld = { + enable = true; + package = pkgs.nix-ld-rs; + }; + environment.sessionVariables.LD_LIBRARY_PATH = ["/run/opengl-driver/lib"]; wsl = {