From 33b960143b6a6a8f6fea42b29040b86b81e4e7ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kier=C3=A1n=20Meinhardt?= Date: Wed, 22 Dec 2021 22:55:43 +0100 Subject: [PATCH] feat: remove nur-packages --- packages/daybook.nix | 27 +++++++++++++++++ packages/depp.nix | 29 ++++++++++++++++++ packages/devour.nix | 28 +++++++++++++++++ packages/mahlzeit.nix | 30 +++++++++++++++++++ packages/opustags.nix | 26 ++++++++++++++++ packages/python3Packages/betacode/default.nix | 12 ++++++++ .../indic-transliteration/default.nix | 14 +++++++++ .../indic-transliteration/regex-version.patch | 9 ++++++ .../python3Packages/instaloader/default.nix | 12 ++++++++ packages/python3Packages/pygtrie/default.nix | 10 +++++++ .../spotify-cli-linux/default.nix | 23 ++++++++++++++ packages/scripts/default.nix | 17 ++++++++--- packages/sncli.nix | 22 ++++++++++++++ packages/text2pdf.nix | 15 ++++++++++ packages/vimv.nix | 22 ++++++++++++++ packages/when.nix | 23 ++++++++++++++ 16 files changed, 315 insertions(+), 4 deletions(-) create mode 100644 packages/daybook.nix create mode 100644 packages/depp.nix create mode 100644 packages/devour.nix create mode 100644 packages/mahlzeit.nix create mode 100644 packages/opustags.nix create mode 100644 packages/python3Packages/betacode/default.nix create mode 100644 packages/python3Packages/indic-transliteration/default.nix create mode 100644 packages/python3Packages/indic-transliteration/regex-version.patch create mode 100644 packages/python3Packages/instaloader/default.nix create mode 100644 packages/python3Packages/pygtrie/default.nix create mode 100644 packages/python3Packages/spotify-cli-linux/default.nix create mode 100644 packages/sncli.nix create mode 100644 packages/text2pdf.nix create mode 100644 packages/vimv.nix create mode 100644 packages/when.nix diff --git a/packages/daybook.nix b/packages/daybook.nix new file mode 100644 index 0000000..2204d60 --- /dev/null +++ b/packages/daybook.nix @@ -0,0 +1,27 @@ +{ lib, stdenv, makeWrapper, pandoc, fetchFromGitHub }: +stdenv.mkDerivation { + name = "daybook"; + src = fetchFromGitHub { + owner = "kmein"; + repo = "daybook"; + rev = "db2c34830e09183c80f3381bf5e4c44d52f05d53"; + sha256 = "0nbsv8f12qh5spq7zhimhdf3p7msk33xrb0ilqvlc6jmlkpislmv"; + }; + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ pandoc ]; + buildPhase = '' + mkdir -p $out/man/man1 + pandoc --standalone --to man daybook.1.md -o $out/man/man1/daybook.1 + ''; + installPhase = '' + mkdir -p $out/bin + install daybook $out/bin + wrapProgram $out/bin/daybook --prefix PATH ":" ${pandoc}/bin ; + ''; + meta = with lib; { + homepage = https://github.com/kmein/daybook; + description = "A diary writing utility in sh"; + license = licenses.mit; + platforms = platforms.linux; + }; +} diff --git a/packages/depp.nix b/packages/depp.nix new file mode 100644 index 0000000..00130e4 --- /dev/null +++ b/packages/depp.nix @@ -0,0 +1,29 @@ +{ lib, writeShellScriptBin }: +let + aliasFlag = name: value: "-c alias.${name}=${lib.escapeShellArg value}"; + aliases = { + eroeffne = "init"; + machnach = "clone"; + zieh = "pull"; + fueghinzu = "add"; + drueck = "push"; + pfusch = "push --force"; + zweig = "branch"; + verzweige = "branch"; + uebergib = "commit"; + erde = "rebase"; + unterscheide = "diff"; + vereinige = "merge"; + bunkere = "stash"; + markiere = "tag"; + nimm = "checkout"; + tagebuch = "log"; + zustand = "status"; + }; +in writeShellScriptBin "depp" '' + if [ $# -gt 0 ]; then + git ${lib.concatStringsSep " " (lib.attrsets.mapAttrsToList aliasFlag aliases)} "$@" + else + printf "${lib.concatStringsSep "\n" (lib.attrsets.mapAttrsToList (n: v: n + " " + v) aliases)}\n" + fi +'' diff --git a/packages/devour.nix b/packages/devour.nix new file mode 100644 index 0000000..c894a1f --- /dev/null +++ b/packages/devour.nix @@ -0,0 +1,28 @@ +{ lib, stdenv, xdo, makeWrapper, fetchFromGitHub }: +stdenv.mkDerivation { + name = "devour"; + version = "master"; + + src = fetchFromGitHub { + owner = "salman-abedin"; + repo = "devour"; + rev = "ceb871c3046ce290c27e2887365b9a19ca38113c"; + sha256 = "0f2jb8knx7lqy6wmf3rchgq2n2dj496lm8vgcs58rppzrmsk59d5"; + }; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ xdo ]; + + DESTDIR="$(out)"; + + fixupPhase = '' + wrapProgram $out/bin/devour --prefix PATH ":" ${xdo}/bin ; + ''; + + meta = with lib; { + homepage = "https://github.com/salman-abedin/devour"; + description = "Window Manager agnostic swallowing feature for terminal emulators"; + license = licenses.gpl3; + platforms = platforms.all; + }; +} diff --git a/packages/mahlzeit.nix b/packages/mahlzeit.nix new file mode 100644 index 0000000..2739fc5 --- /dev/null +++ b/packages/mahlzeit.nix @@ -0,0 +1,30 @@ +{ lib, fetchFromGitHub, mkDerivation, ansi-terminal, base, directory, doctest, filepath +, megaparsec, optparse-applicative, prettyprinter, process +, raw-strings-qq, stdenv, tasty, tasty-hunit, text, yaml +}: +mkDerivation { + pname = "mahlzeit"; + version = "0.1.0"; + src = fetchFromGitHub { + owner = "kmein"; + repo = "mahlzeit"; + rev = "954c0fb3f45815999bc65d003794af6a850b069c"; + sha256 = "046yrr40hjmxkjmwzcvmwb39fxx2v2i6hgdxrjfiwilzvhikarrg"; + }; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + ansi-terminal base directory filepath megaparsec prettyprinter text + yaml + ]; + executableHaskellDepends = [ + ansi-terminal base directory filepath optparse-applicative process + text yaml + ]; + testHaskellDepends = [ + base doctest megaparsec raw-strings-qq tasty tasty-hunit + ]; + homepage = "https://github.com/kmein/mahlzeit"; + description = "Recipe toolkit"; + license = lib.licenses.mit; +} diff --git a/packages/opustags.nix b/packages/opustags.nix new file mode 100644 index 0000000..a1fdbe2 --- /dev/null +++ b/packages/opustags.nix @@ -0,0 +1,26 @@ +{ lib, stdenv, cmake, pkgconfig, libogg, fetchFromGitHub }: +stdenv.mkDerivation rec { + name = "opustags"; + version = "1.3.0"; + + src = fetchFromGitHub { + owner = "fmang"; + repo = "opustags"; + rev = version; + sha256 = "09z0cdg20algaj2yyhfz3hxh1biwjjvzx1pc2vdc64n8lkswqsc1"; + }; + + cmakeFlags = [ + "-DCMAKE_INSTALL_PREFIX=$out" + ]; + + buildInputs = [ libogg ]; + + nativeBuildInputs = [ cmake pkgconfig ]; + + meta = with lib; { + homepage = "https://github.com/fmang/opustags"; + description = "Ogg Opus tags editor"; + platforms = platforms.all; + }; +} diff --git a/packages/python3Packages/betacode/default.nix b/packages/python3Packages/betacode/default.nix new file mode 100644 index 0000000..c65ab56 --- /dev/null +++ b/packages/python3Packages/betacode/default.nix @@ -0,0 +1,12 @@ +{ fetchPypi, buildPythonPackage, pygtrie, ... }: +buildPythonPackage rec { + pname = "betacode"; + version = "0.2"; + src = fetchPypi { + inherit pname version; + sha256 = "08fnjzjvnm9m6p4ddyr8qgfb9bs2nipv4ls50784v0xazgxx7siv"; + }; + preBuild = ''echo > README.rst''; + propagatedBuildInputs = [ pygtrie ]; + doCheck = false; +} diff --git a/packages/python3Packages/indic-transliteration/default.nix b/packages/python3Packages/indic-transliteration/default.nix new file mode 100644 index 0000000..45593cf --- /dev/null +++ b/packages/python3Packages/indic-transliteration/default.nix @@ -0,0 +1,14 @@ +{ fetchFromGitHub, buildPythonPackage, backports_functools_lru_cache, selenium, regex, ... }: +buildPythonPackage rec { + pname = "indic_transliteration"; + version = "unstable-2020-12-15"; + src = fetchFromGitHub { + repo = pname; + owner = "sanskrit-coders"; + rev = "2ea25a03af15937916b6768835e056166986c567"; + sha256 = "1pcf800hl0zkcffc47mkjq9mizsxdi0hwxlnij5bvbqdshd3w9ll"; + }; + patches = [ ./regex-version.patch ]; + propagatedBuildInputs = [ backports_functools_lru_cache selenium regex ]; + doCheck = false; +} diff --git a/packages/python3Packages/indic-transliteration/regex-version.patch b/packages/python3Packages/indic-transliteration/regex-version.patch new file mode 100644 index 0000000..f80cea6 --- /dev/null +++ b/packages/python3Packages/indic-transliteration/regex-version.patch @@ -0,0 +1,9 @@ +diff --git a/requirements.txt b/requirements.txt +index 76b12d7..27fdc79 100644 +--- a/requirements.txt ++++ b/requirements.txt +@@ -1,3 +1,3 @@ + backports.functools_lru_cache==1.6.1 + selenium==3.141.0 +-regex==2020.10.11 ++regex>=2020.7.14 diff --git a/packages/python3Packages/instaloader/default.nix b/packages/python3Packages/instaloader/default.nix new file mode 100644 index 0000000..3390c9c --- /dev/null +++ b/packages/python3Packages/instaloader/default.nix @@ -0,0 +1,12 @@ +{ buildPythonApplication, fetchPypi, requests }: +let +in buildPythonApplication rec { + pname = "instaloader"; + version = "4.2.4"; + src = fetchPypi { + inherit pname version; + sha256 = "02zqb02idk2pzks7dv42vigcmmpjpfhfdyjp911yr0ix7dy3q0b9"; + }; + propagatedBuildInputs = [ requests ]; + doCheck = false; +} diff --git a/packages/python3Packages/pygtrie/default.nix b/packages/python3Packages/pygtrie/default.nix new file mode 100644 index 0000000..0465337 --- /dev/null +++ b/packages/python3Packages/pygtrie/default.nix @@ -0,0 +1,10 @@ +{ fetchPypi, buildPythonPackage, ... }: +buildPythonPackage rec { + pname = "pygtrie"; + version = "2.3"; + src = fetchPypi { + inherit pname version; + sha256 = "00x7q4p9r75zdnw3a8vd0d0w0i5l28w408g5bsfl787yv6b1h9i8"; + }; + doCheck = false; +} diff --git a/packages/python3Packages/spotify-cli-linux/default.nix b/packages/python3Packages/spotify-cli-linux/default.nix new file mode 100644 index 0000000..593dd08 --- /dev/null +++ b/packages/python3Packages/spotify-cli-linux/default.nix @@ -0,0 +1,23 @@ +{ buildPythonPackage, buildPythonApplication, fetchPypi, pytestrunner, six, beautifulsoup4, requests, dbus-python }: +let + lyricwikia = buildPythonPackage rec { + pname = "lyricwikia"; + version = "0.1.9"; + src = fetchPypi { + inherit pname version; + sha256 = "0sa5wkbgp5bpgkl8hgn7byyz9zj0786647ikf2l0k8m4fimq623y"; + }; + buildInputs = [ pytestrunner ]; + propagatedBuildInputs = [ six beautifulsoup4 requests ]; + doCheck = false; + }; +in buildPythonApplication rec { + pname = "spotify-cli-linux"; + version = "1.4.2"; + src = fetchPypi { + inherit pname version; + sha256 = "1gxich3v2i4lmh60abbw3mw15399afvvqflv8g6plvvbmvxmbgp0"; + }; + propagatedBuildInputs = [ lyricwikia dbus-python ]; + doCheck = false; +} diff --git a/packages/scripts/default.nix b/packages/scripts/default.nix index a45cd6f..0d061f6 100644 --- a/packages/scripts/default.nix +++ b/packages/scripts/default.nix @@ -1,7 +1,8 @@ { pkgs, lib, ... }: let - nur = import {}; kpaste = pkgs.callPackage { }; + opustags = pkgs.callPackage { }; + betacode = pkgs.callPackage { }; wrapScript = { packages ? [ ], name, script }: pkgs.writers.writeDashBin name '' PATH=$PATH:${ @@ -98,7 +99,7 @@ in rec { ''; tag = wrapScript { - packages = [ pkgs.vorbisTools pkgs.python3Packages.eyeD3 nur.opustags ]; + packages = [ pkgs.vorbisTools pkgs.python3Packages.eyeD3 opustags ]; script = "${voidrice}/.local/bin/tag"; name = "tag"; }; @@ -296,7 +297,7 @@ in rec { ''; betacode = pkgs.writers.writePython3Bin "betacode" { - libraries = [ nur.python3Packages.betacode ]; + libraries = [ betacode ]; } '' import betacode.conv import sys @@ -405,4 +406,12 @@ in rec { curl -L "https://github.com/Mic92/nix-index-database/releases/download/$tag/files" -o $XDG_RUNTIME_DIR/files-$tag mv $XDG_RUNTIME_DIR/files-$tag $HOME/.cache/nix-index/files ''; -} // nur +} // { + devour = pkgs.callPackage { }; + depp = pkgs.callPackage { }; + text2pdf = pkgs.callPackage { }; + vimv = pkgs.callPackage { }; + when = pkgs.callPackage { }; + mahlzeit = pkgs.callPackage { }; + inherit opustags; +} diff --git a/packages/sncli.nix b/packages/sncli.nix new file mode 100644 index 0000000..fd129eb --- /dev/null +++ b/packages/sncli.nix @@ -0,0 +1,22 @@ +{ buildPythonPackage, buildPythonApplication, fetchPypi, requests, urwid }: +let + Simperium3 = buildPythonPackage rec { + pname = "Simperium3"; + version = "0.1.3"; + src = fetchPypi { + inherit pname version; + sha256 = "1j1w4dji39v44l96qq9kbrxpcjkjmika8065gwy8bf847f9fa76p"; + }; + propagatedBuildInputs = [ requests ]; + }; +in buildPythonApplication rec { + pname = "sncli"; + version = "0.3.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "18s5a6s2z7k14cbiyfdf98kw92r2hf1xwaavx67dxhadxm18xr4v"; + }; + + propagatedBuildInputs = [ requests urwid Simperium3 ]; +} diff --git a/packages/text2pdf.nix b/packages/text2pdf.nix new file mode 100644 index 0000000..b8c7049 --- /dev/null +++ b/packages/text2pdf.nix @@ -0,0 +1,15 @@ +{ stdenv, fetchurl }: +stdenv.mkDerivation rec { + name = "${pname}-${version}"; + pname = "text2pdf"; + version = "1.1"; + src = fetchurl { + url = "http://www.eprg.org/pdfcorner/text2pdf/text2pdf.c"; + sha256 = "002nyky12vf1paj7az6j6ra7lljwkhqzz238v7fyp7sfgxw0f7d1"; + }; + phases = [ "buildPhase" ]; + buildPhase = '' + mkdir -p $out/bin + gcc -o $out/bin/text2pdf $src + ''; +} diff --git a/packages/vimv.nix b/packages/vimv.nix new file mode 100644 index 0000000..4321aae --- /dev/null +++ b/packages/vimv.nix @@ -0,0 +1,22 @@ +{ lib, stdenv, bash, fetchFromGitHub }: +stdenv.mkDerivation { + name = "vimv"; + src = fetchFromGitHub { + owner = "thameera"; + repo = "vimv"; + rev = "4152496c1946f68a13c648fb7e583ef23dac4eb8"; + sha256 = "1fsrfx2gs6bqx7wk7pgcji2i2x4alqpsi66aif4kqvnpqfhcfzjd"; + }; + phases = [ "installPhase" ]; + installPhase = '' + mkdir -p $out/bin + sed 's:#!/bin/bash:#!${bash}/bin/bash:' $src/vimv > $out/bin/vimv + chmod 755 $out/bin/vimv + ''; + meta = with lib; { + homepage = https://github.com/thameera/vimv; + description = "Batch-rename files using Vim"; + license = licenses.mit; + platforms = platforms.linux; + }; +} diff --git a/packages/when.nix b/packages/when.nix new file mode 100644 index 0000000..e4cca9f --- /dev/null +++ b/packages/when.nix @@ -0,0 +1,23 @@ +{ lib, stdenv, perl, which }: +stdenv.mkDerivation { + name = "when"; + version = "1.1.40"; + + src = builtins.fetchTarball { + url = "http://www.lightandmatter.com/when/when.tar.gz"; + sha256 = "12d0zmvg66lwzr7q8zky0kz1x3w6q8dvyzm4x7lf1vy2z4pm4cvx"; + }; + + nativeBuildInputs = [ which ]; + buildInputs = [ perl ]; + + installFlags = [ "prefix=$(out)" ]; + + meta = with lib; { + homepage = "http://www.lightandmatter.com/when/when.html"; + description = "An extremely simple personal calendar program"; + longDescription = "When is an extremely simple personal calendar program, aimed at the Unix geek who wants something minimalistic."; + license = licenses.gpl2; + platforms = platforms.all; + }; +}