diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index c68e50f10578..246a78bc02ab 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -18498,6 +18498,11 @@ githubId = 56157634; name = "Ruben Hönle"; }; + rubikcubed = { + github = "rubikcubed"; + githubId = 91467402; + name = "rubikcubed"; + }; ruby0b = { github = "ruby0b"; githubId = 106119328; diff --git a/pkgs/by-name/ca/cables/package.nix b/pkgs/by-name/ca/cables/package.nix new file mode 100644 index 000000000000..4ce71233cb19 --- /dev/null +++ b/pkgs/by-name/ca/cables/package.nix @@ -0,0 +1,46 @@ +{ + lib, + fetchurl, + appimageTools, + stdenv, +}: + +let + pname = "cables"; + version = "0.3.2"; + name = "${pname}-${version}"; + + src = fetchurl { + url = "https://github.com/cables-gl/cables_electron/releases/download/v${version}/cables-${version}-linux-x64.AppImage"; + sha256 = "sha256-D5Bgg5D03FPQF2HKow4yehcqToo4dpPudBg0W4UnqFs="; + }; + + appimageContents = appimageTools.extract { + inherit pname version src; + postExtract = '' + substituteInPlace $out/${name}.desktop --replace 'Exec=AppRun' 'Exec=cables' + ''; + }; + +in +appimageTools.wrapType2 { + inherit name src; + + extraInstallCommands = '' + mv $out/bin/${name} $out/bin/cables + + install -m 444 -D ${appimageContents}/${name}.desktop $out/share/applications/cables.desktop + install -m 444 -D ${appimageContents}/${name}.png $out/share/icons/hicolor/512x512/apps/cables.png + ''; + + meta = with lib; { + description = "Standalone version of cables, a tool for creating beautiful interactive content."; + homepage = "https://cables.gl"; + changelog = "https://cables.gl/changelog"; + license = licenses.mit; + maintainers = with maintainers; [ rubikcubed ]; + platforms = with platforms; linux ++ darwin ++ windows; + broken = !(stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64); + mainProgram = "cables"; + }; +}