summary refs log tree commit diff
path: root/pkgs/servers/grocy
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/servers/grocy')
-rw-r--r--pkgs/servers/grocy/0001-Define-configs-with-env-vars.patch60
-rw-r--r--pkgs/servers/grocy/0002-Remove-check-for-config-file-as-it-s-stored-in-etc-g.patch46
-rw-r--r--pkgs/servers/grocy/default.nix10
3 files changed, 59 insertions, 57 deletions
diff --git a/pkgs/servers/grocy/0001-Define-configs-with-env-vars.patch b/pkgs/servers/grocy/0001-Define-configs-with-env-vars.patch
index ed315c854c8..4e3d36c33c9 100644
--- a/pkgs/servers/grocy/0001-Define-configs-with-env-vars.patch
+++ b/pkgs/servers/grocy/0001-Define-configs-with-env-vars.patch
@@ -1,76 +1,76 @@
-From 931958d8f11cb55f2e88a178a3b828f3c537eba8 Mon Sep 17 00:00:00 2001

+From 035709eeac697945a26276cc17b996c1a0678ddc Mon Sep 17 00:00:00 2001

 From: Maximilian Bosch <maximilian@mbosch.me>

-Date: Fri, 6 Mar 2020 23:43:58 +0100

-Subject: [PATCH 1/2] Define configs with env vars

+Date: Tue, 22 Dec 2020 15:38:56 +0100

+Subject: [PATCH] Define configs with env vars

 

 ---

  app.php                      | 4 ++--

  services/DatabaseService.php | 2 +-

  services/FilesService.php    | 2 +-

- services/StockService.php    | 2 +-

- 4 files changed, 5 insertions(+), 5 deletions(-)

+ services/StockService.php    | 3 +--

+ 4 files changed, 5 insertions(+), 6 deletions(-)

 

 diff --git a/app.php b/app.php

-index af65ad1..4963c28 100644

+index 17ba6a99..89f48089 100644

 --- a/app.php

 +++ b/app.php

-@@ -25,7 +25,7 @@ else

+@@ -11,7 +11,7 @@ use Slim\Views\Blade;

  require_once __DIR__ . '/vendor/autoload.php';

  

  // Load config files

 -require_once GROCY_DATAPATH . '/config.php';

 +require_once getenv('GROCY_CONFIG_FILE');

  require_once __DIR__ . '/config-dist.php'; // For not in own config defined values we use the default ones

+ require_once __DIR__ . '/helpers/ConfigurationValidator.php';

+ 

+@@ -62,7 +62,7 @@ $app = AppFactory::create();

  

- // Definitions for dev/demo/prerelease mode

-@@ -50,7 +50,7 @@ $app = AppFactory::create();

  $container = $app->getContainer();

- $container->set('view', function(Container $container)

- {

--	return new Slim\Views\Blade(__DIR__ . '/views', GROCY_DATAPATH . '/viewcache');

-+	return new \Slim\Views\Blade(__DIR__ . '/views', getenv('GROCY_CACHE_DIR'));

+ $container->set('view', function (Container $container) {

+-	return new Blade(__DIR__ . '/views', GROCY_DATAPATH . '/viewcache');

++	return new Blade(__DIR__ . '/views', getenv('GROCY_CACHE_DIR'));

  });

- $container->set('LoginControllerInstance', function(Container $container)

- {

+ 

+ $container->set('UrlManager', function (Container $container) {

 diff --git a/services/DatabaseService.php b/services/DatabaseService.php

-index 23fc7b9..daa1993 100644

+index dfcd5d4b..bc8d1a1d 100644

 --- a/services/DatabaseService.php

 +++ b/services/DatabaseService.php

-@@ -25,7 +25,7 @@ class DatabaseService

- 			return GROCY_DATAPATH . '/grocy_' . GROCY_CULTURE . '.db';

+@@ -107,6 +107,6 @@ class DatabaseService

+ 			return GROCY_DATAPATH . '/grocy_' . $dbSuffix . '.db';

  		}

  

 -		return GROCY_DATAPATH . '/grocy.db';

 +		return getenv('GROCY_DB_FILE');

  	}

- 

-     private static $DbConnectionRaw = null;

+ }

 diff --git a/services/FilesService.php b/services/FilesService.php

-index cecdae3..357298d 100644

+index 7d070350..fba2e923 100644

 --- a/services/FilesService.php

 +++ b/services/FilesService.php

-@@ -12,7 +12,7 @@ class FilesService extends BaseService

- 	{

- 		parent::__construct();

+@@ -103,7 +103,7 @@ class FilesService extends BaseService

  

--		$this->StoragePath = GROCY_DATAPATH . '/storage';

+ 	public function GetFilePath($group, $fileName)

+ 	{

+-		$groupFolderPath = $this->StoragePath . '/' . $group;

 +		$this->StoragePath = getenv('GROCY_STORAGE_DIR');

  

- 		if (!file_exists($this->StoragePath))

+ 		if (!file_exists($groupFolderPath))

  		{

 diff --git a/services/StockService.php b/services/StockService.php

-index bfde3fc..53b2245 100644

+index f73ac5bd..6b6e693a 100644

 --- a/services/StockService.php

 +++ b/services/StockService.php

-@@ -934,7 +934,7 @@ class StockService extends BaseService

+@@ -1589,8 +1589,7 @@ class StockService extends BaseService

  			throw new \Exception('No barcode lookup plugin defined');

  		}

  

 -		$path = GROCY_DATAPATH . "/plugins/$pluginName.php";

-+		$path = getenv('GROCY_PLUGIN_DIR');

+-

++		$path = getenv('GROCY_PLUGIN_DIR') . "/$pluginName.php";

  		if (file_exists($path))

  		{

  			require_once $path;

 -- 

-2.25.0

+2.31.1

 

diff --git a/pkgs/servers/grocy/0002-Remove-check-for-config-file-as-it-s-stored-in-etc-g.patch b/pkgs/servers/grocy/0002-Remove-check-for-config-file-as-it-s-stored-in-etc-g.patch
index e7f84a146fb..b065ca801d5 100644
--- a/pkgs/servers/grocy/0002-Remove-check-for-config-file-as-it-s-stored-in-etc-g.patch
+++ b/pkgs/servers/grocy/0002-Remove-check-for-config-file-as-it-s-stored-in-etc-g.patch
@@ -1,24 +1,24 @@
-From 1556489f0b475ae56e5ed3afba19cc2abb696a76 Mon Sep 17 00:00:00 2001
-From: Maximilian Bosch <maximilian@mbosch.me>
-Date: Thu, 16 Apr 2020 19:37:32 +0200
-Subject: [PATCH 2/2] Remove check for config-file as it's stored in /etc/grocy
-
----
- helpers/PrerequisiteChecker.php | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/helpers/PrerequisiteChecker.php b/helpers/PrerequisiteChecker.php
-index d4bf74c6..ca7686c9 100644
---- a/helpers/PrerequisiteChecker.php
-+++ b/helpers/PrerequisiteChecker.php
-@@ -8,7 +8,6 @@ class PrerequisiteChecker
+From c46323dfc4a3d5bf17f7508f5b5f223858a598c3 Mon Sep 17 00:00:00 2001

+From: Maximilian Bosch <maximilian@mbosch.me>

+Date: Tue, 22 Dec 2020 15:39:15 +0100

+Subject: [PATCH 2/2] Remove check for config-file as it's stored in /etc/grocy

+

+---

+ helpers/PrerequisiteChecker.php | 1 -

+ 1 file changed, 1 deletion(-)

+

+diff --git a/helpers/PrerequisiteChecker.php b/helpers/PrerequisiteChecker.php

+index cbe0a3a..a484db2 100644

+--- a/helpers/PrerequisiteChecker.php

++++ b/helpers/PrerequisiteChecker.php

+@@ -11,7 +11,6 @@ class PrerequisiteChecker

  {

-     public function checkRequirements()

-     {

--        self::checkForConfigFile();

-         self::checkForConfigDistFile();

-         self::checkForComposer();

-         self::checkForYarn();

--- 
-2.25.0
-
+ 	public function checkRequirements()

+ 	{

+-		self::checkForConfigFile();

+ 		self::checkForConfigDistFile();

+ 		self::checkForComposer();

+ 		self::checkForPhpExtensions();

+-- 

+2.29.2

+

diff --git a/pkgs/servers/grocy/default.nix b/pkgs/servers/grocy/default.nix
index 193f3929809..96c7cbbdf71 100644
--- a/pkgs/servers/grocy/default.nix
+++ b/pkgs/servers/grocy/default.nix
@@ -1,12 +1,12 @@
-{ stdenv, fetchurl, unzip, nixosTests }:
+{ lib, stdenv, fetchurl, unzip, nixosTests }:
 
 stdenv.mkDerivation rec {
   pname = "grocy";
-  version = "2.7.1";
+  version = "3.1.0";
 
   src = fetchurl {
     url = "https://github.com/grocy/grocy/releases/download/v${version}/grocy_${version}.zip";
-    sha256 = "0ab1yxj499vadakq2c1lils3ir6fm02wrdgrirrlar4s4z6c4p7r";
+    sha256 = "sha256-ohviTI2np6z+SjV2CDScouI8Lh2Ru4+CE00KlgT40i8=";
   };
 
   nativeBuildInputs = [ unzip ];
@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
     unzip ${src} -d .
   '';
 
+  # NOTE: if patches are created from a git checkout, those should be modified
+  # with `unixdos` to make sure those apply here.
   patches = [
     ./0001-Define-configs-with-env-vars.patch
     ./0002-Remove-check-for-config-file-as-it-s-stored-in-etc-g.patch
@@ -29,7 +31,7 @@ stdenv.mkDerivation rec {
     cp -R . $out/
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     license = licenses.mit;
     maintainers = with maintainers; [ ma27 ];
     description = "ERP beyond your fridge - grocy is a web-based self-hosted groceries & household management solution for your home";