about summary refs log tree commit diff
path: root/nixpkgs/pkgs/by-name/sh
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/by-name/sh')
-rw-r--r--nixpkgs/pkgs/by-name/sh/sha2wordlist/package.nix40
-rw-r--r--nixpkgs/pkgs/by-name/sh/shadershark/package.nix63
-rwxr-xr-xnixpkgs/pkgs/by-name/sh/shadershark/update.sh14
-rw-r--r--nixpkgs/pkgs/by-name/sh/shopware-cli/package.nix6
-rw-r--r--nixpkgs/pkgs/by-name/sh/show-midi/package.nix83
5 files changed, 203 insertions, 3 deletions
diff --git a/nixpkgs/pkgs/by-name/sh/sha2wordlist/package.nix b/nixpkgs/pkgs/by-name/sh/sha2wordlist/package.nix
new file mode 100644
index 000000000000..c3a6710efb17
--- /dev/null
+++ b/nixpkgs/pkgs/by-name/sh/sha2wordlist/package.nix
@@ -0,0 +1,40 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, libbsd
+}:
+
+stdenv.mkDerivation {
+  pname = "sha2wordlist";
+  version = "unstable-2023-02-20";
+
+  src = fetchFromGitHub {
+    owner = "kirei";
+    repo = "sha2wordlist";
+    rev = "2017b7ac786cfb5ad7f35f3f9068333b426d65f7";
+    hash = "sha256-A5KIXvwllzUcUm52lhw0QDjhEkCVTcbLQGFZWmHrFpU=";
+  };
+
+  postPatch = ''
+    substituteInPlace Makefile \
+      --replace "gcc" "$CC"
+  '';
+
+  buildInputs = [
+    libbsd
+  ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    install -m 755 sha2wordlist $out/bin
+  '';
+
+  meta = with lib; {
+    description = "Display SHA-256 as PGP words";
+    homepage = "https://github.com/kirei/sha2wordlist";
+    maintainers = with maintainers; [ baloo ];
+    license = [ licenses.bsd2 ];
+    platforms = platforms.all;
+    mainProgram = "sha2wordlist";
+  };
+}
diff --git a/nixpkgs/pkgs/by-name/sh/shadershark/package.nix b/nixpkgs/pkgs/by-name/sh/shadershark/package.nix
new file mode 100644
index 000000000000..e27036575be7
--- /dev/null
+++ b/nixpkgs/pkgs/by-name/sh/shadershark/package.nix
@@ -0,0 +1,63 @@
+{ stdenv
+, lib
+, fetchhg
+, libepoxy
+, xorg
+, libGLU
+, glm
+, pkg-config
+, imagemagick
+, makeWrapper
+, installShellFiles
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "shadershark";
+  version = "0.1";
+
+  src = fetchhg {
+    url = "https://hg.globalcode.info/graphics/shader-shark";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-AYZWfqMckPKgXNIX9kAAv1mvD3opLi5EUElFsigiF3c=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    makeWrapper
+    installShellFiles
+  ];
+
+  buildInputs = [
+    libepoxy
+    xorg.libX11
+    libGLU
+    glm
+    imagemagick
+  ];
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/{bin,share/shadershark}
+
+    install -m755 -D build/shader-shark $out/bin
+    cp -r shaders textures $out/share/shadershark
+
+    wrapProgram $out/bin/shader-shark \
+      --set SHADER_SHARK_DATA_DIR $out/share/shadershark
+
+    installShellCompletion --bash --name shader-shark.bash bash-completion.sh
+
+    runHook postInstall
+  '';
+
+  passthru.updateScript = [ ./update.sh finalAttrs.src.url ];
+
+  meta = with lib; {
+    mainProgram = "shader-shark";
+    description = "OpenGL/X11 application for GNU/Linux consisting of a single window that shows simple 3D scene of a textured rectangle with applied vertex and fragment shaders (GLSL)";
+    homepage = "https://graphics.globalcode.info/v_0/shader-shark.xhtml";
+    license = licenses.gpl3;
+    maintainers = [ maintainers.lucasew ];
+    platforms = platforms.linux;
+  };
+})
diff --git a/nixpkgs/pkgs/by-name/sh/shadershark/update.sh b/nixpkgs/pkgs/by-name/sh/shadershark/update.sh
new file mode 100755
index 000000000000..0bd125caac95
--- /dev/null
+++ b/nixpkgs/pkgs/by-name/sh/shadershark/update.sh
@@ -0,0 +1,14 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p curl common-updater-scripts
+
+set -e
+
+repo_url="$1"; shift
+
+data="$(curl "$repo_url/tags")"
+
+rev="$(echo "$data" | grep '/rev/v' | sed 's;.*/rev/v\([^"]*\)[^$]*;\1;' | head -n 1)"
+echo "new rev: $rev"
+
+update-source-version shadershark "$rev" \
+  --print-changes
diff --git a/nixpkgs/pkgs/by-name/sh/shopware-cli/package.nix b/nixpkgs/pkgs/by-name/sh/shopware-cli/package.nix
index 9723eb530762..ac8a75db8d3b 100644
--- a/nixpkgs/pkgs/by-name/sh/shopware-cli/package.nix
+++ b/nixpkgs/pkgs/by-name/sh/shopware-cli/package.nix
@@ -9,18 +9,18 @@
 
 buildGoModule rec {
   pname = "shopware-cli";
-  version = "0.4.4";
+  version = "0.4.5";
   src = fetchFromGitHub {
     repo = "shopware-cli";
     owner = "FriendsOfShopware";
     rev = version;
-    hash = "sha256-cic2J1xm/DbZP/qL5jWE7H9x38QAVPwUGpaWEwGTdDk=";
+    hash = "sha256-1ZF7xqON3zRGZaBqTSKyUQd3mKEQEXZNWujZayjFBfY=";
   };
 
   nativeBuildInputs = [ installShellFiles makeWrapper ];
   nativeCheckInputs = [ git dart-sass ];
 
-  vendorHash = "sha256-Cllujomvlf3u3MjIhoh2BpDD3Tfo6kIbJsoPInIUaPI";
+  vendorHash = "sha256-iS1yY3zXPtHS19DqZIZ6Z9B6oocQVy4KQuQPoXWLfBc=";
 
   postInstall = ''
     export HOME="$(mktemp -d)"
diff --git a/nixpkgs/pkgs/by-name/sh/show-midi/package.nix b/nixpkgs/pkgs/by-name/sh/show-midi/package.nix
new file mode 100644
index 000000000000..e1a433fc8fb4
--- /dev/null
+++ b/nixpkgs/pkgs/by-name/sh/show-midi/package.nix
@@ -0,0 +1,83 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, pkg-config
+, alsa-lib
+, freetype
+, libX11
+, libXrandr
+, libXinerama
+, libXext
+, libXcursor
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "show-midi";
+  version = "0.8.0";
+
+  src = fetchFromGitHub {
+    owner = "gbevin";
+    repo = "ShowMIDI";
+    rev = finalAttrs.version;
+    hash = "sha256-BtkfeHZyeSZH6wIojj3dd2nCS5R535dSWsis/hXJbPc=";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [
+    alsa-lib
+    freetype
+    libX11
+    libXrandr
+    libXinerama
+    libXext
+    libXcursor
+  ];
+
+  enableParallelBuilding = true;
+
+  makeFlags = [
+    "-C Builds/LinuxMakefile"
+    "CONFIG=Release"
+    # Specify targets by hand, because it tries to build VST by default,
+    # even though it's not supported in JUCE anymore
+    "LV2"
+    "LV2_MANIFEST_HELPER"
+    "Standalone"
+    "VST3"
+    "VST3_MANIFEST_HELPER"
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dt $out/share/ShowMIDI/themes Themes/*
+
+    mkdir -p $out/bin $out/lib/lv2 $out/lib/vst3
+    cd Builds/LinuxMakefile/build/
+    cp -r ShowMIDI.lv2 $out/lib/lv2
+    cp -r ShowMIDI.vst3 $out/lib/vst3
+    cp ShowMIDI $out/bin
+
+    runHook postInstall
+  '';
+
+  # JUCE dlopens these, make sure they are in rpath
+  # Otherwise, segfault will happen
+  env.NIX_LDFLAGS = toString [
+    "-lX11"
+    "-lXext"
+    "-lXcursor"
+    "-lXinerama"
+    "-lXrandr"
+  ];
+
+  meta = with lib; {
+    description = "Multi-platform GUI application to effortlessly visualize MIDI activity";
+    homepage = "https://github.com/gbevin/ShowMIDI";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ minijackson ];
+    mainProgram = "ShowMIDI";
+    platforms = platforms.linux;
+  };
+})