speedify: init at 15.6.4-12495
Co-authored-by: Sandro <sandro.jaeckel@gmail.com> Co-authored-by: emaryn <197520219+emaryn@users.noreply.github.com>
This commit is contained in:
parent
7d123199cc
commit
1c26e0e7a9
@ -54,6 +54,8 @@
|
|||||||
|
|
||||||
- [qBittorrent](https://www.qbittorrent.org/), is a bittorrent client programmed in C++ / Qt that uses libtorrent by Arvid Norberg. Available as [services.qbittorrent](#opt-services.qbittorrent.enable).
|
- [qBittorrent](https://www.qbittorrent.org/), is a bittorrent client programmed in C++ / Qt that uses libtorrent by Arvid Norberg. Available as [services.qbittorrent](#opt-services.qbittorrent.enable).
|
||||||
|
|
||||||
|
- [Speedify](https://speedify.com/), a proprietary VPN which allows combining multiple internet connections (Wi-Fi, 4G, 5G, Ethernet, Starlink, Satellite, and more) to improve the stability, speed, and security of online experiences. Available as [services.speedify](#opt-services.speedify.enable).
|
||||||
|
|
||||||
- [Szurubooru](https://github.com/rr-/szurubooru), an image board engine inspired by services such as Danbooru, dedicated for small and medium communities. Available as [services.szurubooru](#opt-services.szurubooru.enable).
|
- [Szurubooru](https://github.com/rr-/szurubooru), an image board engine inspired by services such as Danbooru, dedicated for small and medium communities. Available as [services.szurubooru](#opt-services.szurubooru.enable).
|
||||||
|
|
||||||
- The [Neat IP Address Planner](https://spritelink.github.io/NIPAP/) (NIPAP) can now be enabled through [services.nipap.enable](#opt-services.nipap.enable).
|
- The [Neat IP Address Planner](https://spritelink.github.io/NIPAP/) (NIPAP) can now be enabled through [services.nipap.enable](#opt-services.nipap.enable).
|
||||||
|
@ -1335,6 +1335,7 @@
|
|||||||
./services/networking/soju.nix
|
./services/networking/soju.nix
|
||||||
./services/networking/solanum.nix
|
./services/networking/solanum.nix
|
||||||
./services/networking/spacecookie.nix
|
./services/networking/spacecookie.nix
|
||||||
|
./services/networking/speedify.nix
|
||||||
./services/networking/spiped.nix
|
./services/networking/spiped.nix
|
||||||
./services/networking/squid.nix
|
./services/networking/squid.nix
|
||||||
./services/networking/ssh/sshd.nix
|
./services/networking/ssh/sshd.nix
|
||||||
|
59
nixos/modules/services/networking/speedify.nix
Executable file
59
nixos/modules/services/networking/speedify.nix
Executable file
@ -0,0 +1,59 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.services.speedify;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.services.speedify = {
|
||||||
|
enable = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
This option enables Speedify daemon.
|
||||||
|
This sets {option}`networking.firewall.checkReversePath` to "loose", which might be undesirable for security.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
package = lib.mkPackageOption pkgs "speedify" { };
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
boot.kernelModules = [ "tun" ];
|
||||||
|
|
||||||
|
networking.firewall.checkReversePath = "loose";
|
||||||
|
|
||||||
|
systemd.services.speedify = {
|
||||||
|
description = "Speedify Service";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
wants = [
|
||||||
|
"network.target"
|
||||||
|
"network-online.target"
|
||||||
|
];
|
||||||
|
after = [
|
||||||
|
"network-online.target"
|
||||||
|
]
|
||||||
|
++ lib.optional config.networking.networkmanager.enable "NetworkManager.service";
|
||||||
|
path = [
|
||||||
|
pkgs.procps
|
||||||
|
pkgs.nettools
|
||||||
|
];
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${cfg.package}/share/speedify/SpeedifyStartup.sh";
|
||||||
|
ExecStop = "${cfg.package}/share/speedify/SpeedifyShutdown.sh";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 5;
|
||||||
|
TimeoutStartSec = 30;
|
||||||
|
TimeoutStopSec = 30;
|
||||||
|
Type = "forking";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with lib.maintainers; [
|
||||||
|
zahrun
|
||||||
|
];
|
||||||
|
}
|
61
pkgs/by-name/sp/speedify/package.nix
Executable file
61
pkgs/by-name/sp/speedify/package.nix
Executable file
@ -0,0 +1,61 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
dpkg,
|
||||||
|
fetchurl,
|
||||||
|
procps,
|
||||||
|
net-tools,
|
||||||
|
autoPatchelfHook,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "speedify";
|
||||||
|
version = "15.6.4-12495";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://apt.connectify.me/pool/main/s/speedify/speedify_${version}_amd64.deb";
|
||||||
|
hash = "sha256-b8J7JqVxuRREC16DeKD7hOBX4IZMbJPLArLmPtnDUB4=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
dpkg
|
||||||
|
autoPatchelfHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
procps
|
||||||
|
net-tools
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
substituteInPlace "usr/share/speedify/SpeedifyStartup.sh" "usr/share/speedify/SpeedifyShutdown.sh" "usr/share/speedify/GenerateLogs.sh" \
|
||||||
|
--replace-fail '/usr/share/' "$out/share/"
|
||||||
|
substituteInPlace "usr/share/speedify/SpeedifyStartup.sh" \
|
||||||
|
--replace-fail 'logs' "/var/log/speedify"
|
||||||
|
|
||||||
|
mkdir -p $out/share/
|
||||||
|
mv usr/share $out/
|
||||||
|
mkdir -p $out/etc/
|
||||||
|
mv lib/systemd $out/etc/
|
||||||
|
|
||||||
|
mkdir -p $out/bin
|
||||||
|
ln -s $out/share/speedify/speedify_cli $out/bin/speedify_cli
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://speedify.com/";
|
||||||
|
description = "Use multiple internet connections in parallel";
|
||||||
|
longDescription = ''
|
||||||
|
Combine multiple internet connections (Wi-Fi, 4G, 5G, Ethernet, Starlink, Satellite, and more)
|
||||||
|
to improve the stability, speed, and security of your online experiences.
|
||||||
|
Check corresponding option {option}`services.speedify.enable`
|
||||||
|
'';
|
||||||
|
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||||
|
license = lib.licenses.unfree;
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
maintainers = with lib.maintainers; [ zahrun ];
|
||||||
|
};
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user