diff --git a/flake.nix b/flake.nix index 635032e..3b5ea1a 100644 --- a/flake.nix +++ b/flake.nix @@ -72,12 +72,18 @@ inherit system; overlays = [ inputs.self.overlays.packagesOverlay + inputs.self.overlays.frappixFrappeOverlay + inputs.self.overlays.frappixLibsOverlay + inputs.self.overlays.frappixPythonOverlay + inputs.self.overlays.frappixToolsOverlay ]; config = { }; }; packages.think = pkgs.think-gtcm; packages.think-be = pkgs.think-backend-gtcm; packages.file-uploader = pkgs.gtcm-file-uploader; + packages.erpnext_thailand = pkgs.erpnext_thailand; + packages.thai_payroll = pkgs.thai_payroll; }; } ); diff --git a/machines/canopus/configuration.nix b/machines/canopus/configuration.nix index 21ddf28..f66e559 100644 --- a/machines/canopus/configuration.nix +++ b/machines/canopus/configuration.nix @@ -13,6 +13,7 @@ in imports = [ inputs.frappix.nixosModules.x86_64-linux.frappix ]; nixpkgs.overlays = [ + inputs.self.overlays.packagesOverlay inputs.self.overlays.frappixFrappeOverlay inputs.self.overlays.frappixLibsOverlay inputs.self.overlays.frappixPythonOverlay @@ -47,6 +48,8 @@ in apps = [ pkgs.frappix.erpnext pkgs.frappix.hrms + pkgs.erpnext_thailand + pkgs.thai_payroll ]; sites = { "${sitename}" = { diff --git a/pkgs/frappe/erpnext_thailand/default.nix b/pkgs/frappe/erpnext_thailand/default.nix new file mode 100644 index 0000000..8d369e1 --- /dev/null +++ b/pkgs/frappe/erpnext_thailand/default.nix @@ -0,0 +1,37 @@ +{ + buildPythonPackage, + pythonRelaxDepsHook, + flit-core, + fetchFromGitHub, + mkAssets, + pandas, +}: +buildPythonPackage (finalAttrs: { + + pname = "erpnext_thailand"; + version = "1.0.2"; + format = "pyproject"; + + src = + let + erpnext_thailand_src = fetchFromGitHub { + owner = "ecosoft-frappe"; + repo = "erpnext_thailand"; + rev = "69ebd41b6e616a96677f79f57019a4bcd310b638"; + hash = "sha256-72acMrJQKEQKp/u3gcUSBZ6mYbAKCD240j2zMARwUEc="; + }; + in + mkAssets { + src = erpnext_thailand_src; + inherit (finalAttrs) pname version; + yarnHash = ""; + }; + + dependencies = [ pandas ]; + + nativeBuildInputs = [ + pythonRelaxDepsHook + flit-core + ]; + +}) diff --git a/pkgs/frappe/thai_payroll/default.nix b/pkgs/frappe/thai_payroll/default.nix new file mode 100644 index 0000000..32342cc --- /dev/null +++ b/pkgs/frappe/thai_payroll/default.nix @@ -0,0 +1,37 @@ +{ + buildPythonPackage, + pythonRelaxDepsHook, + flit-core, + fetchFromGitHub, + mkAssets, + pandas, +}: +buildPythonPackage (finalAttrs: { + + pname = "thai_payroll"; + version = "0.0.1"; + format = "pyproject"; + + src = + let + erpnext_thailand_src = fetchFromGitHub { + owner = "ecosoft-frappe"; + repo = "thai_payroll"; + rev = "c3ceefb0fc6f29ed05c1086bb6dfb4eeaf59f779"; + hash = "sha256-tYJU6EmIqa8hZ1eNaOVvJUjg8S+ANqZVAqWnnjY/2oY="; + }; + in + mkAssets { + src = erpnext_thailand_src; + inherit (finalAttrs) pname version; + yarnHash = ""; + }; + + dependencies = [ pandas ]; + + nativeBuildInputs = [ + pythonRelaxDepsHook + flit-core + ]; + +}) diff --git a/pkgs/overlay.nix b/pkgs/overlay.nix index d8ab3c0..4d56124 100644 --- a/pkgs/overlay.nix +++ b/pkgs/overlay.nix @@ -26,4 +26,6 @@ final: prev: { }) ]; inventree = final.callPackage ./inventree { python3 = final.python312; }; + erpnext_thailand = final.python3.pkgs.callPackage ./frappe/erpnext_thailand/default.nix { }; + thai_payroll = final.python3.pkgs.callPackage ./frappe/thai_payroll/default.nix { }; }