diff --git a/homes/julian/features/fonts/default.nix b/homes/julian/features/fonts/default.nix index c0292a3..87b2ad8 100644 --- a/homes/julian/features/fonts/default.nix +++ b/homes/julian/features/fonts/default.nix @@ -10,7 +10,7 @@ with lib; { fonts.fontconfig.enable = true; # required to autoload fonts from packages home.packages = with pkgs; [ - (nerdfonts.override { fonts = [ "FiraCode" ]; }) + nerd-fonts.fira-code font-awesome dejavu_fonts noto-fonts diff --git a/homes/julian/global/default.nix b/homes/julian/global/default.nix index ac713d8..2ca778a 100644 --- a/homes/julian/global/default.nix +++ b/homes/julian/global/default.nix @@ -8,6 +8,7 @@ }: { imports = [ + ../features/fonts # ../features/cli # ../features/helix ] ++ (builtins.attrValues outputs.homeManagerModules); diff --git a/homes/julian/v3ms/fonts.nix b/homes/julian/v3ms/fonts.nix index 3d468a1..5186475 100644 --- a/homes/julian/v3ms/fonts.nix +++ b/homes/julian/v3ms/fonts.nix @@ -2,7 +2,7 @@ with pkgs; [ - (nerdfonts.override { fonts = [ "FiraCode" ]; }) + nerd-fonts.fira-code font-awesome dejavu_fonts noto-fonts diff --git a/pkgs/pob2/default.nix b/pkgs/pob2/default.nix new file mode 100644 index 0000000..bbc3ab9 --- /dev/null +++ b/pkgs/pob2/default.nix @@ -0,0 +1,89 @@ +{ + pkgs, + stdenv, + lib, + fetchFromGitHub, + unzip, + ... +}: +let + data = stdenv.mkDerivation (finalAttrs: { + pname = "path-of-building-data"; + version = "dev-version"; + + src = fetchFromGitHub { + owner = "PathOfBuildingCommunity"; + repo = "PathOfBuilding-PoE2"; + rev = "3c579af5612d2137d37558d40d797801b5bbaa69"; + hash = "sha256-apZYU0PrB3wehzJPNNH3aFKLMA/fK5vo+dtgbho6EiM="; + }; + + nativeBuildInputs = [ unzip ]; + + buildCommand = '' + # I have absolutely no idea how this file is generated + # and I don't think I want to know. The Flatpak also does this. + unzip -j -d $out $src/runtime-win32.zip lua/sha1.lua + + # Install the actual data + cp -r $src/src $src/runtime/lua/*.lua $src/manifest.xml $out + + # Pretend this is an official build so we don't get the ugly "dev mode" warning + substituteInPlace $out/manifest.xml --replace ' $out/src/UpdateCheck.lua + ''; + }); +in +stdenv.mkDerivation { + pname = "path-of-building-2"; + version = "${data.version}-unstable-2023-04-09"; + + src = fetchFromGitHub { + owner = "ernstp"; + repo = "pobfrontend"; + rev = "9faa19aa362f975737169824c1578d5011487c18"; + hash = "sha256-zhw2PZ6ZNMgZ2hG+a6AcYBkeg7kbBHNc2eSt4if17Wk="; + }; + + nativeBuildInputs = with pkgs; [ + meson + ninja + pkg-config + kdePackages.qttools + kdePackages.wrapQtAppsHook + ]; + buildInputs = with pkgs; [ + kdePackages.qtbase + luajit + luajit.pkgs.lua-curl + ]; + + installPhase = '' + runHook preInstall + install -Dm555 pobfrontend $out/bin/pobfrontend + runHook postInstall + ''; + + preFixup = '' + qtWrapperArgs+=( + --set LUA_PATH "$LUA_PATH" + --set LUA_CPATH "$LUA_CPATH" + --chdir "${data}" + ) + ''; + + passthru.data = data; + + meta = { + description = "Offline build planner for Path of Exile"; + homepage = "https://pathofbuilding.community/"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.k900 ]; + mainProgram = "pobfrontend"; + broken = stdenv.isDarwin; # doesn't find uic6 for some reason + }; +}