morty: drop (#446354)

Changed files
+4 -169
nixos
modules
services
networking
tests
pkgs
by-name
mo
morty
top-level
-1
nixos/modules/module-list.nix
···
./services/networking/mmsd.nix
./services/networking/modemmanager.nix
./services/networking/monero.nix
-
./services/networking/morty.nix
./services/networking/mosquitto.nix
./services/networking/mozillavpn.nix
./services/networking/mptcpd.nix
+3
nixos/modules/rename.nix
···
"services"
"moinmoin"
] "The corresponding package was removed from nixpkgs.")
+
(mkRemovedOptionModule [ "services" "morty" ]
+
"services.morty has been removed from NixOS. As the morty package was unmaintained and removed and searxng, its main consumer, dropped support for it."
+
)
(mkRemovedOptionModule [ "services" "mwlib" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "pantheon" "files" ] ''
This module was removed, please add pkgs.pantheon.elementary-files to environment.systemPackages directly.
-97
nixos/modules/services/networking/morty.nix
···
-
{
-
config,
-
lib,
-
pkgs,
-
...
-
}:
-
-
with lib;
-
-
let
-
-
cfg = config.services.morty;
-
-
in
-
-
{
-
-
###### interface
-
-
options = {
-
-
services.morty = {
-
-
enable = mkEnableOption "Morty proxy server. See <https://github.com/asciimoo/morty>";
-
-
ipv6 = mkOption {
-
type = types.bool;
-
default = true;
-
description = "Allow IPv6 HTTP requests?";
-
};
-
-
key = mkOption {
-
type = types.str;
-
default = "";
-
description = ''
-
HMAC url validation key (hexadecimal encoded).
-
Leave blank to disable. Without validation key, anyone can
-
submit proxy requests. Leave blank to disable.
-
Generate with `printf %s somevalue | openssl dgst -sha1 -hmac somekey`
-
'';
-
};
-
-
timeout = mkOption {
-
type = types.int;
-
default = 2;
-
description = "Request timeout in seconds.";
-
};
-
-
package = mkPackageOption pkgs "morty" { };
-
-
port = mkOption {
-
type = types.port;
-
default = 3000;
-
description = "Listing port";
-
};
-
-
listenAddress = mkOption {
-
type = types.str;
-
default = "127.0.0.1";
-
description = "The address on which the service listens";
-
};
-
-
};
-
-
};
-
-
###### Service definition
-
-
config = mkIf config.services.morty.enable {
-
-
users.users.morty = {
-
description = "Morty user";
-
createHome = true;
-
home = "/var/lib/morty";
-
isSystemUser = true;
-
group = "morty";
-
};
-
users.groups.morty = { };
-
-
systemd.services.morty = {
-
description = "Morty sanitizing proxy server.";
-
after = [ "network.target" ];
-
wantedBy = [ "multi-user.target" ];
-
serviceConfig = {
-
User = "morty";
-
ExecStart = ''
-
${cfg.package}/bin/morty \
-
-listen ${cfg.listenAddress}:${toString cfg.port} \
-
${optionalString cfg.ipv6 "-ipv6"} \
-
${optionalString (cfg.key != "") "-key " + cfg.key} \
-
'';
-
};
-
};
-
environment.systemPackages = [ cfg.package ];
-
-
};
-
}
-1
nixos/tests/all-tests.nix
···
moosefs = runTest ./moosefs.nix;
mopidy = runTest ./mopidy.nix;
morph-browser = runTest ./morph-browser.nix;
-
morty = runTest ./morty.nix;
mosquitto = runTest ./mosquitto.nix;
movim = import ./web-apps/movim { inherit recurseIntoAttrs runTest; };
mpd = runTest ./mpd.nix;
-31
nixos/tests/morty.nix
···
-
{ pkgs, ... }:
-
-
{
-
name = "morty";
-
meta = with pkgs.lib.maintainers; {
-
maintainers = [ leenaars ];
-
};
-
-
nodes = {
-
mortyProxyWithKey =
-
-
{ ... }:
-
{
-
services.morty = {
-
enable = true;
-
key = "78a9cd0cfee20c672f78427efb2a2a96036027f0";
-
port = 3001;
-
};
-
};
-
-
};
-
-
testScript =
-
{ ... }:
-
''
-
mortyProxyWithKey.wait_for_unit("default.target")
-
mortyProxyWithKey.wait_for_open_port(3001)
-
mortyProxyWithKey.succeed("curl -fL 127.0.0.1:3001 | grep MortyProxy")
-
'';
-
-
}
-39
pkgs/by-name/mo/morty/package.nix
···
-
{
-
lib,
-
buildGoModule,
-
fetchFromGitHub,
-
nixosTests,
-
}:
-
-
buildGoModule {
-
pname = "morty";
-
version = "unstable-2021-04-22";
-
-
src = fetchFromGitHub {
-
owner = "asciimoo";
-
repo = "morty";
-
rev = "f5bff1e285d3f973cacf73318e55175edafd633f";
-
sha256 = "sha256-ik2VAPdxllt76UVFt77c1ltxIwFNahAKjn3FuErNFYo=";
-
};
-
-
vendorHash = "sha256-3sllcoTDYQBAyAT7e9KeKNrlTEbgnoZc0Vt0ksQByvo=";
-
-
passthru.tests = { inherit (nixosTests) morty; };
-
-
meta = with lib; {
-
description = "Privacy aware web content sanitizer proxy as a service";
-
mainProgram = "morty";
-
longDescription = ''
-
Morty rewrites web pages to exclude malicious HTML tags and attributes.
-
It also replaces external resource references to prevent third party information leaks.
-
-
The main goal of morty is to provide a result proxy for searx, but it can be used as a standalone sanitizer service too.
-
'';
-
homepage = "https://github.com/asciimoo/morty";
-
maintainers = with maintainers; [
-
leenaars
-
SuperSandro2000
-
];
-
license = licenses.agpl3Only;
-
};
-
}
+1
pkgs/top-level/aliases.nix
···
mongodb-6_0 = throw "mongodb-6_0 has been removed, it's end of life since July 2025"; # Added 2025-07-23
moralerspace-nf = throw "moralerspace-nf has been removed, use moralerspace instead."; # Added 2025-08-30
moralerspace-hwnf = throw "moralerspace-hwnf has been removed, use moralerspace-hw instead."; # Added 2025-08-30
+
morty = throw "morty has been removed, as searxng removed support for it and it was unmaintained."; # Added 2025-09-26
moz-phab = mozphab; # Added 2022-08-09
mp3info = throw "'mp3info' has been removed due to lack of maintenance upstream. Consider using 'eartag' or 'tagger' instead"; # Added 2024-09-14
mp3splt = throw "'mp3splt' has been removed due to lack of maintenance upstream."; # Added 2025-05-17