From 71da7bc98fe2a629dd4a3ad4b876ecce28493827 Mon Sep 17 00:00:00 2001 From: Daniel Siepmann Date: Tue, 11 Apr 2023 08:38:39 +0200 Subject: [PATCH] Revert "Use upstream phpactor" As the fetched version causes system crash and high cpu usage. This reverts commit bd6c8adb7f5001793115b6836290b1025e2462dc. --- .../custom/build-phpactor/default.nix | 32 +++++++++++++++++++ home/packages/custom/default.nix | 1 + home/programs/neovim.nix | 2 +- home/programs/neovim/nix-plugins/phpactor.nix | 29 ++++++++++------- 4 files changed, 51 insertions(+), 13 deletions(-) create mode 100644 home/packages/custom/build-phpactor/default.nix diff --git a/home/packages/custom/build-phpactor/default.nix b/home/packages/custom/build-phpactor/default.nix new file mode 100644 index 0000000..72dcefe --- /dev/null +++ b/home/packages/custom/build-phpactor/default.nix @@ -0,0 +1,32 @@ +{ + writeShellApplication, + php82, + php82Packages, + git +}: + +writeShellApplication { + name = "custom-build-phpactor"; + + runtimeInputs = [ + php82 + php82Packages.composer + git + ]; + + # TODO: Use nix build environment?! + text = '' + rm -rf /tmp/phpactor + mkdir /tmp/phpactor + cd /tmp/phpactor + git clone --depth 1 https://github.com/phpactor/phpactor.git . + composer install -o --no-dev + version=$(git show -s --format=%H) + rm -rf .git/ + cd /tmp + tar -czf "phpactor-$version.tar.gz" phpactor + rsync -vaz "phpactor-$version.tar.gz" daniel-siepmann.de:webs/daniel-siepmann.de/htdocs/public/fileadmin/ + cd /tmp + rm -rf /tmp/phpactor "phpactor-$version.tar.gz" + ''; +} diff --git a/home/packages/custom/default.nix b/home/packages/custom/default.nix index f63628c..8d170ab 100644 --- a/home/packages/custom/default.nix +++ b/home/packages/custom/default.nix @@ -9,6 +9,7 @@ (callPackage ./nextcloud-sync/from-local.nix { }) (callPackage ./nextcloud-sync/from-remote.nix { }) (callPackage ./typo3-documentation-rendering { }) + (callPackage ./build-phpactor { }) (callPackage ./project { inherit ownLib; }) diff --git a/home/programs/neovim.nix b/home/programs/neovim.nix index 9eabf51..2cd09f5 100644 --- a/home/programs/neovim.nix +++ b/home/programs/neovim.nix @@ -308,7 +308,7 @@ in { require('lspconfig').phpactor.setup({ cmd = { - '${pkgs.phpactor}/bin/phpactor', + '${phpactor}/bin/phpactor', 'language-server', }, }) diff --git a/home/programs/neovim/nix-plugins/phpactor.nix b/home/programs/neovim/nix-plugins/phpactor.nix index d1bf7a9..5e08680 100644 --- a/home/programs/neovim/nix-plugins/phpactor.nix +++ b/home/programs/neovim/nix-plugins/phpactor.nix @@ -1,18 +1,22 @@ { - vimUtils - , makeWrapper - , lib - , phpactor - , php82 - , php82Packages - , git + vimUtils, + fetchurl, + makeWrapper, + lib, + php82, + php82Packages, + git }: -vimUtils.buildVimPluginFrom2Nix rec { - inherit (phpactor) version; - - pname = "vim-phpactor"; - src = "${phpactor}/share/php/phpactor"; +let + pname = "phpactor"; + version = "3e7cb48b0ca429f92bcd57c236c39f170e9d23b1"; +in vimUtils.buildVimPluginFrom2Nix { + inherit pname version; + src = fetchurl { + url = "https://daniel-siepmann.de/fileadmin/${pname}-${version}.tar.gz"; + sha256 = "JX6aLuzmJ4rrcG0FNgzt2zITmnRrpitUI591oPn+fhY="; + }; nativeBuildInputs = [ makeWrapper @@ -35,6 +39,7 @@ vimUtils.buildVimPluginFrom2Nix rec { requirements.txt ''; + postInstall = '' wrapProgram $out/bin/phpactor \ --prefix PATH : ${lib.strings.makeBinPath [ php82 php82Packages.composer git]}