diff --git a/modules/graphical/basics.nix b/modules/graphical/basics.nix index 40c5523..dc591e7 100644 --- a/modules/graphical/basics.nix +++ b/modules/graphical/basics.nix @@ -29,7 +29,7 @@ in { v4l-utils logseq # notes ani-cli - mangal + mangal-patched ]; }; } diff --git a/modules/services/kavita.nix b/modules/services/kavita.nix index 79570fc..4e48df5 100644 --- a/modules/services/kavita.nix +++ b/modules/services/kavita.nix @@ -26,7 +26,7 @@ in { useStepCa = false; # config.services.step-ca.enable; useHttps = cfg.https; baseDir = cfg.dir; - mangal = "${pkgs.mangal}/bin/mangal"; + mangal = "${pkgs.mangal-patched}/bin/mangal"; githubRunnerEnabled = config.services.github-runners ? oberprofis.enable; in lib.mkIf cfg.enable { networking.firewall.allowedTCPPorts = [ 5000 ]; diff --git a/overlays.nix b/overlays.nix index 20ea4d1..23b5abc 100644 --- a/overlays.nix +++ b/overlays.nix @@ -53,7 +53,6 @@ in { # example = prev.example.overrideAttrs (oldAttrs: rec { # ... # }); - mangal = addPatches prev.mangal [ ./pkgs/patches/mangal.diff ]; }; # When applied, the unstable nixpkgs set (declared in the flake inputs) will diff --git a/pkgs/default.nix b/pkgs/default.nix index 52630e2..7e8fe6d 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,12 +1,13 @@ { pkgs, ... }: rec { - kop-hub = pkgs.callPackage ./hub/default.nix { }; + adam-site = pkgs.callPackage ./adam-site/default.nix { }; ente-frontend = pkgs.callPackage ./ente-frontend/default.nix { }; - kop-website = - pkgs.callPackage ./website/default.nix { inherit kop-hub ente-frontend; }; + kop-fhcalendar = pkgs.callPackage ./kop-fhcalendar/default.nix { }; + kop-fileshare = pkgs.callPackage ./kop-fileshare/default.nix { }; + kop-hub = pkgs.callPackage ./hub/default.nix { }; kop-monitor = pkgs.callPackage ./kop-monitor/default.nix { }; kop-newproject = pkgs.callPackage ./kop-newproject/default.nix { }; - kop-fileshare = pkgs.callPackage ./kop-fileshare/default.nix { }; - kop-fhcalendar = pkgs.callPackage ./kop-fhcalendar/default.nix { }; - adam-site = pkgs.callPackage ./adam-site/default.nix { }; + kop-website = + pkgs.callPackage ./website/default.nix { inherit kop-hub ente-frontend; }; sddm-astronaut = pkgs.callPackage ./sddm-astronaut/default.nix { }; + mangal-patched = pkgs.callPackage ./mangal/default.nix { mangal = pkgs.mangal; }; } diff --git a/pkgs/mangal/default.nix b/pkgs/mangal/default.nix new file mode 100644 index 0000000..c5b4dc7 --- /dev/null +++ b/pkgs/mangal/default.nix @@ -0,0 +1,6 @@ +{ mangal }: +let + addPatches = pkg: patches: + pkg.overrideAttrs + (oldAttrs: { patches = (oldAttrs.patches or [ ]) ++ patches; }); +in addPatches mangal [ ./mangal.diff ] diff --git a/pkgs/patches/mangal.diff b/pkgs/mangal/mangal.diff similarity index 56% rename from pkgs/patches/mangal.diff rename to pkgs/mangal/mangal.diff index 80f006f..52ceea9 100644 --- a/pkgs/patches/mangal.diff +++ b/pkgs/mangal/mangal.diff @@ -11,3 +11,18 @@ index e7d0c62..7af6542 100644 return fmt.Sprintf(template, query) }, MangaExtractor: &generic.Extractor{ +diff --git a/inline/inline.go b/inline/inline.go +index 26ad0c6..dc02fda 100644 +--- a/inline/inline.go ++++ b/inline/inline.go +@@ -131,6 +132,10 @@ func Run(options *Options) (err error) { + if err != nil { + log.Warn(err) + } ++ // free memory after downloading ++ for _, page := range chapter.Pages { ++ page.Contents = nil ++ } + } else { + err := downloader.Read(chapter, func(string) {}) + if err != nil {