Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 100 lines 2.1 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 desktop-file-utils, 6 meson, 7 ninja, 8 pkg-config, 9 wrapGAppsHook4, 10 vala, 11 evolution-data-server-gtk4, 12 gdk-pixbuf, 13 glib, 14 glib-networking, 15 gnutls, 16 gst_all_1, 17 json-glib, 18 libadwaita, 19 libpeas2, 20 libphonenumber, 21 libportal-gtk4, 22 pipewire, 23 pulseaudio, 24 tinysparql, 25}: 26 27stdenv.mkDerivation (finalAttrs: { 28 pname = "valent"; 29 version = "1.0.0.alpha.46-unstable-2024-10-26"; 30 31 src = fetchFromGitHub { 32 owner = "andyholmes"; 33 repo = "valent"; 34 rev = "165a2791d4bf3e7dee69e3dd7885dbe4948265b9"; 35 hash = "sha256-7klvOvwyAg+Xno6zWo8UByjaS9OkOuCceuZcAIEgdyU="; 36 fetchSubmodules = true; 37 }; 38 39 nativeBuildInputs = [ 40 desktop-file-utils 41 meson 42 ninja 43 pkg-config 44 wrapGAppsHook4 45 vala 46 ]; 47 48 buildInputs = [ 49 evolution-data-server-gtk4 50 gdk-pixbuf 51 glib 52 glib-networking 53 gnutls 54 gst_all_1.gstreamer 55 gst_all_1.gst-plugins-base 56 json-glib 57 libadwaita 58 libpeas2 59 libphonenumber 60 libportal-gtk4 61 pipewire 62 pulseaudio 63 tinysparql 64 ]; 65 66 mesonFlags = [ 67 (lib.mesonBool "plugin_bluez" true) 68 ]; 69 70 meta = { 71 description = "Implementation of the KDE Connect protocol, built on GNOME platform libraries"; 72 mainProgram = "valent"; 73 longDescription = '' 74 Note that you have to open firewall ports for other devices 75 to connect to it. Use either: 76 ```nix 77 programs.kdeconnect = { 78 enable = true; 79 package = pkgs.valent; 80 } 81 ``` 82 or open corresponding firewall ports directly: 83 ```nix 84 networking.firewall = rec { 85 allowedTCPPortRanges = [ { from = 1714; to = 1764; } ]; 86 allowedUDPPortRanges = allowedTCPPortRanges; 87 } 88 ``` 89 ''; 90 homepage = "https://valent.andyholmes.ca"; 91 changelog = "https://github.com/andyholmes/valent/blob/${finalAttrs.src.rev}/CHANGELOG.md"; 92 license = with lib.licenses; [ 93 gpl3Plus 94 cc0 95 cc-by-sa-30 96 ]; 97 maintainers = with lib.maintainers; [ aleksana ]; 98 platforms = lib.platforms.linux; 99 }; 100})