push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation rec {
pname = "em";
version = "1.0.0";
src = fetchurl {
url = "http://pgas.freeshell.org/C/em/${pname}-${version}.tar.gz";
hash = "sha256-ijMBkl7U1f9MTXgli9kUFB8ttMG6TMQnxfDMP9AblTQ=";
};
meta = with lib; {
homepage = "http://pgas.freeshell.org/C/em/";
description = "Editor for Mortals";
longDescription = ''
Em is a QMC variant of the standard Unix text editor - ed. It includes all
of ed, so the documentation for ed is fully applicable to em. Em also has
a number of new commands and facilities designed to improve its
interaction and increase its usefulness to users at fast vdu terminals
(such as the ITT's at QMC).
'';
license = licenses.publicDomain;
maintainers = [ ];
platforms = platforms.unix;
mainProgram = "em";
};
}

View File

@@ -0,0 +1,51 @@
{
curl,
fetchgit,
lib,
libusb1,
pkg-config,
stdenv,
}:
stdenv.mkDerivation {
pname = "em100";
version = "0-unstable-2024-11-14";
src = fetchgit {
url = "https://review.coreboot.org/em100";
# No git tags available. Use latest rev from the main branch.
rev = "a78b4ba4774f05ecd7af495604b437113596d70e";
hash = "sha256-jzP56SMMiWiOynW17CFksi1VhpGt4oYYJrf4Rp9Vfs4=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [
curl
libusb1
];
buildFlags = [
"em100"
"makedpfw"
];
doInstallCheck = true;
installPhase = ''
runHook preInstall
install -Dm755 em100 $out/bin/em100
install -Dm755 makedpfw $out/bin/makedpfw
install -Dm644 60-dediprog-em100pro.rules $out/lib/udev/rules.d/dediprog_em100.rules
runHook postInstall
'';
meta = with lib; {
homepage = "https://www.coreboot.org";
description = "Open source tool for the EM100 SPI flash emulator";
license = licenses.gpl2;
maintainers = with maintainers; [ felixsinger ];
platforms = platforms.linux;
mainProgram = "em100";
};
}

View File

@@ -0,0 +1,42 @@
{
lib,
stdenvNoCC,
fetchzip,
}:
stdenvNoCC.mkDerivation rec {
pname = "emacs-all-the-icons-fonts";
version = "5.0.0";
src = fetchzip {
url = "https://github.com/domtronn/all-the-icons.el/archive/${version}.zip";
hash = "sha256-70ysVxOey6NLlCwhEYhxpxO6uuarMFDpg3Efh+3bj1M=";
};
installPhase = ''
runHook preInstall
install -Dm644 fonts/*.ttf -t $out/share/fonts/all-the-icons
runHook postInstall
'';
meta = with lib; {
description = "Icon fonts for emacs all-the-icons";
longDescription = ''
The emacs package all-the-icons provides icons to improve
presentation of information in emacs. This package provides
the fonts needed to make the package work properly.
'';
homepage = "https://github.com/domtronn/all-the-icons.el";
/*
The fonts come under a mixture of licenses - the MIT license,
SIL OFL license, and Apache license v2.0. See the GitHub page
for further information.
*/
license = licenses.free;
platforms = platforms.all;
maintainers = with maintainers; [ rlupton20 ];
};
}

View File

@@ -0,0 +1,29 @@
{
lib,
rustPlatform,
fetchFromGitHub,
emacs,
}:
rustPlatform.buildRustPackage rec {
pname = "emacs-lsp-booster";
version = "0.2.1";
src = fetchFromGitHub {
owner = "blahgeek";
repo = "emacs-lsp-booster";
rev = "v${version}";
hash = "sha256-uP/xJfXQtk8oaG5Zk+dw+C2fVFdjpUZTDASFuj1+eYs=";
};
cargoHash = "sha256-BR0IELLzm+9coaiLXQn+Rw6VLyiFEAk/nkO08qPwAac=";
nativeCheckInputs = [ emacs ]; # tests/bytecode_test
meta = with lib; {
description = "Emacs LSP performance booster";
homepage = "https://github.com/blahgeek/emacs-lsp-booster";
license = licenses.mit;
maintainers = with maintainers; [ icy-thought ];
mainProgram = "emacs-lsp-booster";
};
}

View File

@@ -0,0 +1,35 @@
{
lib,
fetchFromGitHub,
buildGoModule,
gnumake,
}:
buildGoModule {
pname = "emacsclient-commands";
version = "0-unstable-2023-09-22";
src = fetchFromGitHub {
owner = "szermatt";
repo = "emacsclient-commands";
rev = "8f5c8a877794ed51f8225036e36fd5ce272b17f3";
hash = "sha256-OlcB5VqWYdl0wz1y8nmG6Xgdf5IPOUQ31UG1TDxQAis=";
};
vendorHash = "sha256-8oREed2Igz5UvUTDdOFwW5wQQy3H8Xj8epxo6gqnZFA=";
buildInputs = [ gnumake ];
buildPhase = ''
runHook preBuild
DESTDIR=$out/ make install
runHook postBuild
'';
meta = with lib; {
description = "Collection of small shell utilities that connect to a local Emacs server";
homepage = "https://github.com/szermatt/emacsclient-commands";
license = licenses.gpl2Only;
maintainers = with maintainers; [ binarycat ];
};
}

View File

@@ -0,0 +1,68 @@
{
lib,
emacs,
espeak-ng,
fetchFromGitHub,
makeWrapper,
stdenv,
tcl,
tclPackages,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "emacspeak";
version = "59.0";
src = fetchFromGitHub {
owner = "tvraman";
repo = "emacspeak";
rev = finalAttrs.version;
hash = "sha256-npS/wlqI7nBde/2S/rzp79jdfYXIIhgsVs5VizxEDAQ=";
};
nativeBuildInputs = [
emacs
makeWrapper
];
buildInputs = [
espeak-ng
tcl
tclPackages.tclx
];
strictDeps = true;
preConfigure = ''
make config
'';
postBuild = ''
make -C servers/native-espeak PREFIX=$out "TCL_INCLUDE=${tcl}/include"
'';
postInstall = ''
make -C servers/native-espeak PREFIX=$out install
local d=$out/share/emacs/site-lisp/emacspeak/
install -d -- "$d"
cp -a . "$d"
find "$d" \( -type d -or \( -type f -executable \) \) -execdir chmod 755 {} +
find "$d" -type f -not -executable -execdir chmod 644 {} +
makeWrapper ${lib.getExe emacs} $out/bin/emacspeak \
--set DTK_PROGRAM "${placeholder "out"}/share/emacs/site-lisp/emacspeak/servers/espeak" \
--set TCLLIBPATH "${tclPackages.tclx}/lib" \
--add-flags '-l "${placeholder "out"}/share/emacs/site-lisp/emacspeak/lisp/emacspeak-setup.elc"'
'';
meta = {
homepage = "https://github.com/tvraman/emacspeak/";
description = "Emacs extension that provides spoken output";
changelog = "https://github.com/tvraman/emacspeak/blob/${finalAttrs.src.rev}/etc/NEWS";
license = with lib.licenses; [ gpl2Plus ];
mainProgram = "emacspeak";
maintainers = [ ];
platforms = lib.platforms.linux;
# Emacspeak requires a minimal Emacs version; let's use the broken flag
broken = lib.versionOlder (lib.getVersion emacs) "29.1";
};
})

View File

@@ -0,0 +1,58 @@
{
stdenv,
lib,
fetchFromGitHub,
fetchpatch,
openssl,
}:
let
eMailSrc = fetchFromGitHub {
owner = "deanproxy";
repo = "eMail";
rev = "7d23c8f508a52bd8809e2af4290417829b6bb5ae";
sha256 = "1cxxzhm36civ6vjdgrk7mfmlzkih44kdii6l2xgy4r434s8rzcpn";
};
srcRoot = eMailSrc.name;
dlibSrc = fetchFromGitHub {
owner = "deanproxy";
repo = "dlib";
rev = "f62f29e918748b7cea476220f7492672be81c9de";
sha256 = "0h34cikch98sb7nsqjnb9wl384c8ndln3m6yb1172l4y89qjg9rr";
};
in
stdenv.mkDerivation {
pname = "email-git";
version = "unstable-2016-01-31";
src = eMailSrc;
patches = [
# Pul patch pending upstream inclusion for -fno-common toolchain support:
# https://github.com/deanproxy/eMail/pull/61
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/deanproxy/eMail/commit/c3c1e52132832be0e51daa6e0037d5bb79a17751.patch";
sha256 = "17ndrb65g0v4y521333h4244419s8nncm0yx2jwv12sf0dl6gy8i";
})
];
buildInputs = [ openssl ];
unpackPhase = ''
unpackPhase;
cp -Rp ${dlibSrc}/* ${srcRoot}/dlib;
chmod -R +w ${srcRoot}/dlib;
'';
meta = {
description = "Command line SMTP client";
license = with lib.licenses; [ gpl2Plus ];
homepage = "https://deanproxy.com/code";
platforms = lib.platforms.unix;
mainProgram = "email";
};
}

View File

@@ -0,0 +1,75 @@
{
lib,
stdenv,
fetchFromGitHub,
meson,
ninja,
pkg-config,
glib,
blueprint-compiler,
gobject-introspection,
gtk4,
desktop-file-utils,
gettext,
wrapGAppsHook4,
libadwaita,
gjs,
gnome-autoar,
libsoup_3,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "embellish";
version = "0.5.1";
src = fetchFromGitHub {
owner = "getnf";
repo = "embellish";
tag = "v${finalAttrs.version}";
hash = "sha256-Db7/vo9LVE7IeFFHx/BKs+qxzsvuB+6ZLRb7A1NHrxQ=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
glib
blueprint-compiler
gobject-introspection
gtk4
gettext
desktop-file-utils
wrapGAppsHook4
];
buildInputs = [
gtk4
libadwaita
gjs
gnome-autoar
libsoup_3
];
passthru.updateScript = nix-update-script { };
meta = {
description = "User-friendly application designed for managing Nerd Fonts on your system";
longDescription = ''
Embellish provides a seamless experience for installing, uninstalling
and updating of Nerd Fonts. It's able to:
- List all available Nerd Fonts
- Download and install a Font
- Uninstall an installed Font
- Update an installed font
- Preview fonts
- Search fonts
- Read font's licence(s)
'';
homepage = "https://github.com/getnf/embellish";
changelog = "https://github.com/getnf/embellish/releases/tag/v${finalAttrs.version}";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ normalcea ];
mainProgram = "io.github.getnf.embellish";
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,43 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
fetchYarnDeps,
yarnConfigHook,
yarnInstallHook,
nodejs,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "ember-cli";
version = "5.3.0";
src = fetchFromGitHub {
owner = "ember-cli";
repo = "ember-cli";
tag = "v${finalAttrs.version}";
hash = "sha256-xkMsPE+iweIV14m4kE4ytEp4uHMJW6gr+n9oJblr4VQ=";
};
offlineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-QgT2JFvMupJo+pJc13n2lmHMZkROJRJWoozCho3E6+c=";
};
strictDeps = true;
nativeBuildInputs = [
yarnConfigHook
yarnInstallHook
nodejs
];
meta = with lib; {
homepage = "https://github.com/ember-cli/ember-cli";
description = "Ember.js command line utility";
license = licenses.mit;
maintainers = with maintainers; [ jfvillablanca ];
platforms = platforms.all;
mainProgram = "ember";
};
})

View File

@@ -0,0 +1,50 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchYarnDeps,
nodejs,
yarnConfigHook,
yarnInstallHook,
yarnBuildHook,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ember-language-server";
version = "2.30.5";
src = fetchFromGitHub {
owner = "ember-tooling";
repo = "ember-language-server";
tag = "v${finalAttrs.version}";
hash = "sha256-/6j71pBmZor7C1u9BkptwwQonh6ZWoLmMDCMOGCpMik=";
};
yarnOfflineCache = fetchYarnDeps {
yarnLock = "${finalAttrs.src}/yarn.lock";
hash = "sha256-vWCG+FDf6XTNrgqOQGMnE6xNZ5A8PU5DA+FcTLLurIg=";
};
nativeBuildInputs = [
yarnConfigHook
yarnBuildHook
yarnInstallHook
# Needed for executing package.json scripts
nodejs
];
yarnBuildScript = "compile";
postInstall = ''
ln -s $out/bin/@ember-tooling/ember-language-server $out/bin/ember-language-server
'';
meta = {
description = "Language Server Protocol implementation for Ember.js projects";
homepage = "https://github.com/ember-tooling/ember-language-server";
changelog = "https://github.com/ember-tooling/ember-language-server/blob/v${finalAttrs.version}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ThaoTranLePhuong ];
mainProgram = "ember-language-server";
};
})

View File

@@ -0,0 +1,76 @@
{
lib,
stdenv,
fetchFromGitLab,
rustPlatform,
cargo,
desktop-file-utils,
glib,
meson,
ninja,
pkg-config,
rustc,
wrapGAppsHook4,
libadwaita,
libxml2,
nix-update-script,
}:
stdenv.mkDerivation rec {
pname = "emblem";
version = "1.5.0";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
group = "World";
owner = "design";
repo = "emblem";
rev = version;
sha256 = "sha256-knq8OKoc8Xv7lOr0ub9+2JfeQE84UlTHR1q4SFFF8Ug=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit pname version src;
hash = "sha256-CsISaVlRGtVVEna1jyGZo/IdWcJdwHJv6LXcXYha2UE=";
};
nativeBuildInputs = [
desktop-file-utils
glib
meson
ninja
pkg-config
wrapGAppsHook4
rustPlatform.cargoSetupHook
cargo
rustc
];
buildInputs = [
libadwaita
libxml2
];
env.NIX_CFLAGS_COMPILE = toString (
lib.optionals stdenv.hostPlatform.isDarwin [
"-Wno-error=incompatible-function-pointer-types"
]
);
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "Generate project icons and avatars from a symbolic icon";
mainProgram = "emblem";
homepage = "https://gitlab.gnome.org/World/design/emblem";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [
figsoda
foo-dogsquared
];
teams = [ lib.teams.gnome-circle ];
};
}

View File

@@ -0,0 +1,54 @@
{
lib,
stdenv,
fetchurl,
readline,
perl,
libharu,
libX11,
libpng,
libXt,
zlib,
}:
stdenv.mkDerivation rec {
pname = "emboss";
version = "6.6.0";
src = fetchurl {
url = "ftp://emboss.open-bio.org/pub/EMBOSS/EMBOSS-${version}.tar.gz";
sha256 = "7184a763d39ad96bb598bfd531628a34aa53e474db9e7cac4416c2a40ab10c6e";
};
buildInputs = [
readline
perl
libharu
libpng
libX11
libXt
zlib
];
configureFlags = [
"--with-hpdf=${libharu}"
"--with-pngdriver=${zlib}"
];
postConfigure = ''
sed -i 's@$(bindir)/embossupdate@true@' Makefile
'';
meta = {
description = "European Molecular Biology Open Software Suite";
longDescription = ''
EMBOSS is a free Open Source software analysis package
specially developed for the needs of the molecular biology (e.g. EMBnet)
user community, including libraries. The software automatically copes with
data in a variety of formats and even allows transparent retrieval of
sequence data from the web.
'';
license = lib.licenses.gpl2;
homepage = "https://emboss.sourceforge.net/";
};
}

View File

@@ -0,0 +1,70 @@
{
stdenv,
lib,
fetchFromGitHub,
cmake,
pkg-config,
ispc,
onetbb,
glfw,
openimageio,
libjpeg,
libpng,
libpthreadstubs,
libX11,
glib,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "embree";
version = "4.4.0";
src = fetchFromGitHub {
owner = "embree";
repo = "embree";
tag = "v${finalAttrs.version}";
hash = "sha256-bHVokEfnTW2cJqx3Zz2x1hIH07WamPAVFY9tiv6nHd0=";
};
postPatch = ''
# Fix duplicate /nix/store/.../nix/store/.../ paths
sed -i "s|SET(EMBREE_ROOT_DIR .*)|set(EMBREE_ROOT_DIR $out)|" \
common/cmake/embree-config.cmake
sed -i "s|$""{EMBREE_ROOT_DIR}/||" common/cmake/embree-config.cmake
substituteInPlace common/math/emath.h --replace 'defined(__MACOSX__) && !defined(__INTEL_COMPILER)' 0
substituteInPlace common/math/emath.h --replace 'defined(__WIN32__) || defined(__FreeBSD__)' 'defined(__WIN32__) || defined(__FreeBSD__) || defined(__MACOSX__)'
'';
cmakeFlags = [
"-DEMBREE_TUTORIALS=OFF"
"-DEMBREE_RAY_MASK=ON"
"-DTBB_ROOT=${onetbb}"
"-DTBB_INCLUDE_DIR=${onetbb.dev}/include"
];
nativeBuildInputs = [
ispc
pkg-config
cmake
];
buildInputs = [
onetbb
glfw
openimageio
libjpeg
libpng
libX11
libpthreadstubs
]
++ lib.optionals stdenv.hostPlatform.isDarwin [ glib ];
meta = {
description = "High performance ray tracing kernels from Intel";
homepage = "https://embree.github.io/";
maintainers = with lib.maintainers; [
hodapp
];
license = lib.licenses.asl20;
platforms = lib.platforms.unix;
};
})

View File

@@ -0,0 +1,51 @@
{
lib,
fetchFromGitHub,
buildGoModule,
versionCheckHook,
nix-update-script,
}:
buildGoModule (finalAttrs: {
pname = "emcee";
version = "0.6.1";
src = fetchFromGitHub {
owner = "loopwork-ai";
repo = "emcee";
tag = "v${finalAttrs.version}";
hash = "sha256-k8W3kCVF1WuX5nYX75HvfMlxpEcVbuX2lZKlLOf1qGI=";
};
vendorHash = "sha256-e8LPcKue7rhAh03uCRG0VTcwwyj3kDOBoeo3t7Hwvi0=";
ldflags = [
"-X main.version=${finalAttrs.version}"
];
__darwinAllowLocalNetworking = true;
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgramArg = [ "--version" ];
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Connect agents to APIs";
longDescription = ''
emcee is a tool that provides a Model Context Protocol (MCP) server
for any web application with an OpenAPI specification.
You can use emcee to connect Claude Desktop
and other apps to external tools and data services, similar to ChatGPT plugins.
'';
homepage = "https://github.com/loopwork-ai/emcee";
changelog = "https://github.com/loopwork-ai/emcee/releases/tag/v${finalAttrs.version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ genga898 ];
mainProgram = "emcee";
};
})

View File

@@ -0,0 +1,45 @@
{
lib,
stdenv,
fetchurl,
jdk,
}:
stdenv.mkDerivation rec {
pname = "emem";
version = "0.2.50";
inherit jdk;
src = fetchurl {
url = "https://github.com/ebzzry/${pname}/releases/download/v${version}/${pname}.jar";
sha256 = "18x3s3jrph8k3pc75jgwkfqazygpsx93zjxx68zms58my17cybh1";
};
dontUnpack = true;
buildPhase = ''
mkdir -p $out/bin $out/share/java
'';
installPhase = ''
cp $src $out/share/java/${pname}.jar
cat > $out/bin/${pname} << EOF
#! $SHELL
$jdk/bin/java -jar $out/share/java/${pname}.jar "\$@"
EOF
chmod +x $out/bin/${pname}
'';
meta = with lib; {
homepage = "https://github.com/ebzzry/emem";
description = "Trivial Markdown to HTML converter";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
license = licenses.epl10;
maintainers = [ maintainers.ebzzry ];
platforms = platforms.unix;
mainProgram = "emem";
};
}

View File

@@ -0,0 +1,39 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "emhash";
version = "1.0.1";
src = fetchFromGitHub {
owner = "ktprime";
repo = "emhash";
tag = "v${finalAttrs.version}";
hash = "sha256-dFj/QaGdTJYdcxKlS9tES6OHae8xPMnrG9ccRNM/hi8=";
};
nativeBuildInputs = [
cmake
];
cmakeFlags = [
# By default, it will try to build the benchmark suite,
# but we only care about the headers copied by the install target.
"-DWITH_BENCHMARKS=Off"
];
passthru.update-script = nix-update-script { };
meta = {
homepage = "https://github.com/ktprime/emhash";
changelog = "https://github.com/ktprime/emhash/releases/tag/v${finalAttrs.version}";
description = "Fast and memory efficient c++ flat hash map/set";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ blenderfreaky ];
platforms = lib.platforms.all;
};
})

View File

@@ -0,0 +1,44 @@
{
lib,
buildGoModule,
fetchFromGitHub,
writableTmpDirAsHomeHook,
}:
buildGoModule rec {
pname = "emitter";
version = "3.1";
src = fetchFromGitHub {
owner = "emitter-io";
repo = "emitter";
tag = "v${version}";
hash = "sha256-eWBgRG0mLdiJj1TMSAxYPs+8CqLNaFUOW6/ghDn/zKE=";
};
vendorHash = "sha256-6K9KAvb+05nn2pFuVDiQ9IHZWpm+q01su6pl7CxXxBY=";
nativeCheckInputs = [ writableTmpDirAsHomeHook ];
ldflags = [
"-X github.com/emitter-io/emitter/internal/command/version.version=${version}"
"-X github.com/emitter-io/emitter/internal/command/version.commit=${src.rev}"
];
doCheck = true;
checkFlags = [
# Tests require network access
"-skip=^Test(NewClient|Statsd_BadSnapshot|Statsd_Configure|Join|Random)$"
];
__darwinAllowLocalNetworking = true;
meta = {
description = "High performance, distributed and low latency publish-subscribe platform";
homepage = "https://emitter.io/";
license = lib.licenses.agpl3Plus;
maintainers = with lib.maintainers; [ sikmir ];
mainProgram = "emitter";
};
}

View File

@@ -0,0 +1,31 @@
{
lib,
stdenv,
fetchurl,
unzip,
}:
stdenv.mkDerivation rec {
pname = "emma";
version = "2.0.5312";
src = fetchurl {
url = "mirror://sourceforge/${pname}/${pname}-${version}.zip";
sha256 = "0xxy39s2lvgs56vicjzpcz936l1vjaplliwa0dm7v3iyvw6jn7vj";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out/lib/jars
cp lib/*.jar $out/lib/jars/
'';
meta = {
homepage = "https://emma.sourceforge.net/";
description = "Code coverage tool for Java";
sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
platforms = lib.platforms.unix;
license = lib.licenses.cpl10;
};
}

View File

@@ -0,0 +1,76 @@
{
lib,
stdenvNoCC,
nodejs,
pnpm_9,
fetchFromGitHub,
nix-update-script,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "emmet-language-server";
version = "2.8.0";
src = fetchFromGitHub {
owner = "olrtg";
repo = "emmet-language-server";
tag = "v${finalAttrs.version}";
hash = "sha256-EY/xfrf6sGnZPbkbf9msauOoZ0h0EjLSwQC0aiS/Kco=";
};
pnpmDeps = pnpm_9.fetchDeps {
inherit (finalAttrs) pname version src;
fetcherVersion = 1;
hash = "sha256-sMOC5MQmJKwXZoUZnOmBy2I83SNMdrPc6WQKmeVGiCc=";
};
nativeBuildInputs = [
nodejs
pnpm_9.configHook
];
buildPhase = ''
runHook preBuild
# TODO: use deploy after resolved https://github.com/pnpm/pnpm/issues/5315
pnpm build
runHook postBuild
'';
# remove unnecessary and non-deterministic files
preInstall = ''
CI=true pnpm --ignore-scripts --prod prune
find -type f \( -name "*.ts" -o -name "*.map" \) -exec rm -rf {} +
# https://github.com/pnpm/pnpm/issues/3645
find node_modules -xtype l -delete
rm node_modules/.modules.yaml
'';
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,lib/emmet-language-server}
mv {node_modules,dist} $out/lib/emmet-language-server
chmod +x $out/lib/emmet-language-server/dist/index.js
patchShebangs $out/lib/emmet-language-server/dist/index.js
ln -s $out/lib/emmet-language-server/dist/index.js $out/bin/emmet-language-server
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "Language server for emmet.io";
homepage = "https://github.com/olrtg/emmet-language-server";
changelog = "https://github.com/olrtg/emmet-language-server/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
gepbird
];
mainProgram = "emmet-language-server";
};
})

View File

@@ -0,0 +1,38 @@
{
lib,
buildNpmPackage,
fetchFromGitHub,
fetchpatch,
}:
buildNpmPackage rec {
pname = "emmet-ls";
version = "0.4.1";
src = fetchFromGitHub {
owner = "aca";
repo = "emmet-ls";
rev = version;
hash = "sha256-TmsJpVLF9FZf/6uOM9LZBKC6S3bMPjA3QMiRMPaY9Dg=";
};
npmDepsHash = "sha256-Boaxkad7S6H+eTW5AHwBa/zj/f1oAGGSsmW1QrzuFWc=";
patches = [
# update package-lock.json as it is outdated
(fetchpatch {
name = "fix-lock-file-to-match-package-json.patch";
url = "https://github.com/aca/emmet-ls/commit/111111a2c2113f751fa12a716ccfbeae61c32079.patch";
hash = "sha256-/3ZbOBxScnfhL1F66cnIoD2flVeYTJ2sLxNHQ9Yrgjw=";
})
];
meta = {
description = "Emmet support based on LSP";
homepage = "https://github.com/aca/emmet-ls";
changelog = "https://github.com/aca/emmet-ls/releases/tag/${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ figsoda ];
mainProgram = "emmet-ls";
};
}

View File

@@ -0,0 +1,45 @@
{
lib,
fetchFromGitHub,
rustPlatform,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "emmylua_check";
version = "0.14.0";
src = fetchFromGitHub {
owner = "EmmyLuaLs";
repo = "emmylua-analyzer-rust";
tag = finalAttrs.version;
hash = "sha256-V/Sy5h0dLayf9Oxgh9eFfDm00hJbwq1WAD8k0AA5GTw=";
};
buildAndTestSubdir = "crates/emmylua_check";
cargoHash = "sha256-ijxLMf7FjX4LzrYwQilC1QfqRP91yFvq5WCoVFJ9V8M=";
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgram = "${placeholder "out"}/bin/emmylua_check";
versionCheckProgramArg = "--version";
doInstallCheck = true;
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "Comprehensive Lua static analysis tool for code quality assurance";
homepage = "https://github.com/EmmyLuaLs/emmylua-analyzer-rust";
changelog = "https://github.com/EmmyLuaLs/emmylua-analyzer-rust/blob/${finalAttrs.src.tag}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
mrcjkb
];
platforms = lib.platforms.all;
mainProgram = "emmylua_check";
};
})

View File

@@ -0,0 +1,40 @@
{
fetchFromGitHub,
lib,
rustPlatform,
versionCheckHook,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "emmylua_doc_cli";
version = "0.14.0";
src = fetchFromGitHub {
owner = "EmmyLuaLs";
repo = "emmylua-analyzer-rust";
tag = finalAttrs.version;
hash = "sha256-V/Sy5h0dLayf9Oxgh9eFfDm00hJbwq1WAD8k0AA5GTw=";
};
buildAndTestSubdir = "crates/emmylua_doc_cli";
cargoHash = "sha256-ijxLMf7FjX4LzrYwQilC1QfqRP91yFvq5WCoVFJ9V8M=";
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgram = "${placeholder "out"}/bin/emmylua_doc_cli";
versionCheckProgramArg = "--version";
doInstallCheck = true;
meta = {
description = "Professional documentation generator creating beautiful, searchable API docs from your Lua code and annotations.";
homepage = "https://github.com/EmmyLuaLs/emmylua-analyzer-rust";
changelog = "https://github.com/EmmyLuaLs/emmylua-analyzer-rust/blob/${finalAttrs.src.tag}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
mrcjkb
];
platforms = lib.platforms.all;
mainProgram = "emmylua_doc_cli";
};
})

View File

@@ -0,0 +1,45 @@
{
lib,
fetchFromGitHub,
rustPlatform,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "emmylua_ls";
version = "0.14.0";
src = fetchFromGitHub {
owner = "EmmyLuaLs";
repo = "emmylua-analyzer-rust";
tag = finalAttrs.version;
hash = "sha256-V/Sy5h0dLayf9Oxgh9eFfDm00hJbwq1WAD8k0AA5GTw=";
};
buildAndTestSubdir = "crates/emmylua_ls";
cargoHash = "sha256-ijxLMf7FjX4LzrYwQilC1QfqRP91yFvq5WCoVFJ9V8M=";
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgram = "${placeholder "out"}/bin/emmylua_ls";
versionCheckProgramArg = "--version";
doInstallCheck = true;
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "EmmyLua Language Server";
homepage = "https://github.com/EmmyLuaLs/emmylua-analyzer-rust";
changelog = "https://github.com/EmmyLuaLs/emmylua-analyzer-rust/blob/${finalAttrs.src.tag}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
mrcjkb
];
platforms = lib.platforms.all;
mainProgram = "emmylua_ls";
};
})

View File

@@ -0,0 +1,28 @@
{
lib,
buildNimPackage,
fetchFromGitLab,
unicode-emoji,
}:
buildNimPackage (finalAttrs: {
pname = "emocli";
version = "1.0.0";
src = fetchFromGitLab {
owner = "AsbjornOlling";
repo = "emocli";
rev = "v${finalAttrs.version}";
hash = "sha256-yJu+8P446gzRFOi9/+TcN8AKL0jKHUxhOvi/HXNWL1A=";
};
nimFlags = [
"--maxLoopIterationsVM:1000000000"
];
env.EMOCLI_DATAFILE = "${unicode-emoji}/share/unicode/emoji/emoji-test.txt";
meta = {
homepage = "https://gitlab.com/AsbjornOlling/emocli";
description = "Emoji picker for your command line";
license = lib.licenses.eupl12;
maintainers = with lib.maintainers; [ asbjornolling ];
mainProgram = "emocli";
};
})

View File

@@ -0,0 +1,28 @@
{
buildGoModule,
fetchFromGitHub,
lib,
}:
buildGoModule rec {
pname = "emoji-picker";
version = "0.2.0";
src = fetchFromGitHub {
owner = "bcongdon";
repo = "ep";
rev = version;
hash = "sha256-ElUsmuJ43kOsu4cGvNytM+xHTfuzMo0jcG8Z1cIeHJs=";
};
patches = [ ./xsys.patch ];
vendorHash = "sha256-Xeh5JKIBiyOXRGVx9udoUNs+Wv49BMyFvmnAbDfG3rA=";
meta = with lib; {
description = "CLI Emoji Picker";
homepage = "https://github.com/bcongdon/ep";
license = licenses.mit;
maintainers = with maintainers; [ urandom ];
mainProgram = "ep";
};
}

View File

@@ -0,0 +1,63 @@
diff --git a/go.mod b/go.mod
index ce4c67d..fcd88f6 100644
--- a/go.mod
+++ b/go.mod
@@ -1,12 +1,22 @@
module github.com/bcongdon/ep
-go 1.12
+go 1.17
require (
github.com/atotto/clipboard v0.1.2
github.com/bcongdon/emoji-ordering v0.0.0-20201127221446-8e57a6480ccf
github.com/gdamore/tcell/v2 v2.0.1-0.20201017141208-acf90d56d591
github.com/rivo/tview v0.0.0-20201118063654-f007e9ad3893
- github.com/stretchr/testify v1.6.1 // indirect
golang.org/x/crypto v0.0.0-20201124201722-c8d3bf9c5392
)
+
+require (
+ github.com/gdamore/encoding v1.0.0 // indirect
+ github.com/lucasb-eyer/go-colorful v1.0.3 // indirect
+ github.com/mattn/go-runewidth v0.0.9 // indirect
+ github.com/rivo/uniseg v0.2.0 // indirect
+ github.com/stretchr/testify v1.6.1 // indirect
+ golang.org/x/sys v0.1.0 // indirect
+ golang.org/x/term v0.0.0-20201117132131-f5c789dd3221 // indirect
+ golang.org/x/text v0.3.3 // indirect
+)
diff --git a/go.sum b/go.sum
index 3479558..cf61f93 100644
--- a/go.sum
+++ b/go.sum
@@ -10,7 +10,6 @@ github.com/gdamore/tcell/v2 v2.0.1-0.20201017141208-acf90d56d591 h1:0WWUDZ1oxq7N
github.com/gdamore/tcell/v2 v2.0.1-0.20201017141208-acf90d56d591/go.mod h1:vSVL/GV5mCSlPC6thFP5kfOFdM9MGZcalipmpTxTgQA=
github.com/lucasb-eyer/go-colorful v1.0.3 h1:QIbQXiugsb+q10B+MI+7DI1oQLdmnep86tWFlaaUAac=
github.com/lucasb-eyer/go-colorful v1.0.3/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
-github.com/mattn/go-runewidth v0.0.7 h1:Ei8KR0497xHyKJPAv59M1dkC+rOZCMBJ+t3fZ+twI54=
github.com/mattn/go-runewidth v0.0.7/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
github.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0=
github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
@@ -28,19 +27,17 @@ golang.org/x/crypto v0.0.0-20201124201722-c8d3bf9c5392 h1:xYJJ3S178yv++9zXV/hnr2
golang.org/x/crypto v0.0.0-20201124201722-c8d3bf9c5392/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
-golang.org/x/sys v0.0.0-20190626150813-e07cf5db2756 h1:9nuHUbU8dRnRRfj9KjWUVrJeoexdbeMjttk6Oh1rD10=
golang.org/x/sys v0.0.0-20190626150813-e07cf5db2756/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20201017003518-b09fb700fbb7 h1:XtNJkfEjb4zR3q20BBBcYUykVOEMgZeIUOpBPfNYgxg=
golang.org/x/sys v0.0.0-20201017003518-b09fb700fbb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.1.0 h1:kunALQeHf1/185U1i0GOB/fy1IPRDDpuoOOqRReG57U=
+golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221 h1:/ZHdbVpdR/jk3g30/d4yUL0JU9kksj8+F/bnQUVLGDM=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
-golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
-gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

View File

@@ -0,0 +1,32 @@
{
lib,
stdenv,
fetchFromGitHub,
}:
stdenv.mkDerivation rec {
pname = "emojify";
version = "2.2.0";
src = fetchFromGitHub {
owner = "mrowa44";
repo = "emojify";
rev = version;
hash = "sha256-6cV+S8wTqJxPGsxiJ3hP6/CYPMWdF3qnz4ddL+F/oJU=";
};
installPhase = ''
runHook preInstall
install -Dm755 emojify $out/bin/emojify
runHook postInstall
'';
meta = with lib; {
description = "Emoji on the command line";
homepage = "https://github.com/mrowa44/emojify";
license = licenses.mit;
maintainers = [ ];
platforms = platforms.all;
mainProgram = "emojify";
};
}

View File

@@ -0,0 +1,66 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
inkscape,
imagemagick,
potrace,
svgo,
scfbuild,
}:
stdenv.mkDerivation rec {
pname = "emojione";
version = "1.4";
src = fetchFromGitHub {
owner = "eosrei";
repo = "emojione-color-font";
rev = "v${version}";
sha256 = "1781kxfbhnvylypbkwxc3mx6hi0gcjisfjr9cf0jdz4d1zkf09b3";
};
patches = [
# Fix build with Inkscape 1.0
# https://github.com/eosrei/twemoji-color-font/pull/82
(fetchpatch {
url = "https://github.com/eosrei/twemoji-color-font/commit/208ad63c2ceb38c528b5237abeb2b85ceedc1d37.patch";
sha256 = "7tDWIkpcdir1V6skgXSM3r0FwHy0F6PyJ07OPRsSStA=";
postFetch = ''
substituteInPlace $out \
--replace "inkscape --without-gui" "inkscape --export-png" \
--replace TWEMOJI EMOJIONE \
--replace "the assets" "the emojione assets" \
--replace twemoji emojione
'';
})
];
preBuild = ''
sed -i 's,SCFBUILD :=.*,SCFBUILD := scfbuild,' Makefile
# Shut up inkscape's warnings
export HOME="$NIX_BUILD_ROOT"
'';
nativeBuildInputs = [
inkscape
imagemagick
potrace
svgo
scfbuild
];
enableParallelBuilding = true;
installPhase = ''
install -Dm755 build/EmojiOneColor-SVGinOT.ttf $out/share/fonts/truetype/EmojiOneColor-SVGinOT.ttf
'';
meta = with lib; {
description = "Open source emoji set";
homepage = "http://emojione.com/";
license = licenses.cc-by-40;
maintainers = [ ];
};
}

View File

@@ -0,0 +1,73 @@
{
stdenvNoCC,
fetchFromGitHub,
lib,
python3,
xclip,
libnotify,
dmenu,
rofi,
emojipick-use-rofi ? false,
emojipick-copy-to-clipboard ? true,
emojipick-show-notifications ? true,
emojipick-print-emoji ? true,
emojipick-font-family ? "Noto Color Emoji",
emojipick-font-size ? "18",
}:
let
boolToInt = b: if b then "1" else "0"; # Convert boolean to integer string
in
stdenvNoCC.mkDerivation {
pname = "emojipick";
version = "2021-01-27";
src = fetchFromGitHub {
owner = "thingsiplay";
repo = "emojipick";
tag = "20210127";
sha256 = "1kib3cyx6z9v9qw6yrfx5sklanpk5jbxjc317wi7i7ljrg0vdazp";
};
dontConfigure = true;
dontBuild = true;
# Patch configuration
# notify-send has to be patched in a bash file
postPatch = ''
substituteInPlace emojipick \
--replace "use_rofi=0" "use_rofi=${boolToInt emojipick-use-rofi}" \
--replace "copy_to_clipboard=1" "copy_to_clipboard=${boolToInt emojipick-copy-to-clipboard}" \
--replace "show_notification=1" "show_notification=${boolToInt emojipick-show-notifications}" \
--replace "print_emoji=1" "print_emoji=${boolToInt emojipick-print-emoji}" \
--replace "font_family='\"Noto Color Emoji\"'" "font_family='\"${emojipick-font-family}\"'" \
--replace 'font_size="18"' 'font_size="${emojipick-font-size}"' \
${lib.optionalString emojipick-use-rofi "--replace 'rofi ' '${rofi}/bin/rofi '"} \
--replace notify-send ${libnotify}/bin/notify-send
'';
buildInputs = [
python3
xclip
libnotify
]
++ (if emojipick-use-rofi then [ rofi ] else [ dmenu ]);
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp ./emojipick $out/bin
cp ./emojiget.py $out/bin
runHook postInstall
'';
meta = with lib; {
description = "Get a selection of emojis with dmenu or rofi";
homepage = "https://github.com/thingsiplay/emojipick";
license = licenses.mit;
maintainers = with maintainers; [ alexnortung ];
platforms = platforms.linux;
};
}

View File

@@ -0,0 +1,85 @@
{
lib,
fetchFromGitHub,
python3Packages,
meson,
ninja,
pkg-config,
wrapGAppsHook3,
gobject-introspection,
keybinder3,
xdotool,
wl-clipboard,
}:
python3Packages.buildPythonApplication rec {
pname = "emote";
version = "4.1.0";
pyproject = false; # Built with meson
src = fetchFromGitHub {
owner = "tom-james-watson";
repo = "Emote";
rev = "v${version}";
hash = "sha256-c5EY1Cc3oD8EG1oTChbl10jJlNeAETQbAFGoA9Lw5PY=";
};
postPatch = ''
substituteInPlace emote/picker.py \
--replace-fail 'os.environ.get("SNAP_VERSION", "dev build")' "'$version'"
substituteInPlace emote/config.py \
--replace-fail 'is_flatpak = os.environ.get("FLATPAK") is not None' 'is_flatpak = False' \
--replace-fail 'os.environ.get("SNAP")' "'$out/share/emote'"
'';
nativeBuildInputs = [
meson
ninja
pkg-config
wrapGAppsHook3
gobject-introspection
];
buildInputs = [
# used by gobject-introspection's setup-hook and only detected at runtime
keybinder3
];
dependencies = with python3Packages; [
dbus-python.out # don't propagate dev output
manimpango
pygobject3.out # don't propagate dev output
setproctitle
];
postInstall = ''
rm $out/share/emote/emote/{emote.in,meson.build}
rm $out/share/emote/static/{meson.build,com.tomjwatson.Emote.desktop,prepare-launch}
'';
dontWrapGApps = true;
preFixup = ''
makeWrapperArgs+=(
"''${gappsWrapperArgs[@]}"
--prefix PATH : ${
lib.makeBinPath [
xdotool
wl-clipboard
]
}
)
'';
meta = with lib; {
description = "Modern emoji picker for Linux";
mainProgram = "emote";
homepage = "https://github.com/tom-james-watson/emote";
license = licenses.gpl3Plus;
maintainers = with maintainers; [
emilytrau
SuperSandro2000
aleksana
];
platforms = platforms.linux;
};
}

View File

@@ -0,0 +1,72 @@
[
{
"pname": "Microsoft.CodeAnalysis.Analyzers",
"version": "3.0.0-beta2.20059.3",
"hash": "sha256-A62m36Ra9xx6qdU8t5ie7hIBcU+uCZUJUU4Smto90xM="
},
{
"pname": "Microsoft.CodeAnalysis.Common",
"version": "3.5.0",
"hash": "sha256-k6PiYI8QqWXWxUL4oSbvPHVBFRolS1ZApphnSQW+ITg="
},
{
"pname": "Microsoft.CodeAnalysis.CSharp",
"version": "3.5.0",
"hash": "sha256-D/1EQqFrTiwACdknW0fpodraz9JaA+ebIrQVLMw8pc8="
},
{
"pname": "Microsoft.NETCore.Platforms",
"version": "2.1.2",
"hash": "sha256-gYQQO7zsqG+OtN4ywYQyfsiggS2zmxw4+cPXlK+FB5Q="
},
{
"pname": "Newtonsoft.Json",
"version": "13.0.1",
"hash": "sha256-K2tSVW4n4beRPzPu3rlVaBEMdGvWSv/3Q1fxaDh4Mjo="
},
{
"pname": "System.Collections.Immutable",
"version": "1.5.0",
"hash": "sha256-BliqYlL9ntbMXo5d7NUrKXwYN+PqdyqDIS5bp4qVr7Q="
},
{
"pname": "System.CommandLine",
"version": "2.0.0-beta4.22272.1",
"hash": "sha256-zSO+CYnMH8deBHDI9DHhCPj79Ce3GOzHCyH1/TiHxcc="
},
{
"pname": "System.Memory",
"version": "4.5.3",
"hash": "sha256-Cvl7RbRbRu9qKzeRBWjavUkseT2jhZBUWV1SPipUWFk="
},
{
"pname": "System.Reflection.Metadata",
"version": "1.6.0",
"hash": "sha256-JJfgaPav7UfEh4yRAQdGhLZF1brr0tUWPl6qmfNWq/E="
},
{
"pname": "System.Runtime.CompilerServices.Unsafe",
"version": "4.5.2",
"hash": "sha256-8eUXXGWO2LL7uATMZye2iCpQOETn2jCcjUhG6coR5O8="
},
{
"pname": "System.Runtime.CompilerServices.Unsafe",
"version": "4.6.0",
"hash": "sha256-FTjQeMuvqnKxpoVsVh/OlQ21NMaZiFtOdv7VdZ+Iv3Y="
},
{
"pname": "System.Text.Encoding.CodePages",
"version": "4.5.1",
"hash": "sha256-PIhkv59IXjyiuefdhKxS9hQfEwO9YWRuNudpo53HQfw="
},
{
"pname": "System.Threading.Tasks.Extensions",
"version": "4.5.3",
"hash": "sha256-8TglbC6KBHlDeSfgr6d5dGn7wu8td4XERl2JUyo0+Tw="
},
{
"pname": "YamlDotNet",
"version": "8.1.1",
"hash": "sha256-B6yNYjnIAGI31fTiTlfZ4eXU3l9qYFgm0Q0ALBNmPTw="
}
]

View File

@@ -0,0 +1,51 @@
{
fetchFromGitHub,
buildDotnetModule,
dotnetCorePackages,
lib,
testers,
nix-update-script,
}:
buildDotnetModule (finalAttrs: {
pname = "empire-compiler";
version = "0.3.4";
src = fetchFromGitHub {
owner = "bc-security";
repo = "empire-compiler";
tag = "v${finalAttrs.version}";
hash = "sha256-HV61N76yNh16TL93L0LlBWBar1/AzHNX5/zsxl65AGM=";
};
postPatch = ''
substituteInPlace EmpireCompiler/EmpireCompiler.csproj \
--replace-fail 'net6.0' 'net9.0'
'';
dotnet-sdk = dotnetCorePackages.sdk_9_0;
dotnet-runtime = dotnetCorePackages.aspnetcore_9_0;
nugetDeps = ./deps.json;
projectFile = "EmpireCompiler/EmpireCompiler.csproj";
passthru = {
updateScript = nix-update-script { };
tests.version = testers.testVersion {
package = finalAttrs.finalPackage;
command = "EmpireCompiler --version";
version = "${finalAttrs.version}";
};
};
meta = {
homepage = "https://github.com/BC-SECURITY/Empire-Compiler";
license = lib.licenses.mit;
platforms = lib.platforms.linux;
description = "C# Compiler for Empire";
maintainers = with lib.maintainers; [
fzakaria
vrose
];
};
})

View File

@@ -0,0 +1,35 @@
{
lib,
rustPlatform,
fetchpatch,
fetchFromGitHub,
}:
rustPlatform.buildRustPackage rec {
pname = "emplace";
version = "1.6.0";
src = fetchFromGitHub {
owner = "tversteeg";
repo = "emplace";
tag = "v${version}";
sha256 = "sha256-FZ+lvf5HRSruUdmkm/Hqz0aRa95SjfIa43WQczRCGNg=";
};
cargoPatches = [
(fetchpatch {
url = "https://github.com/tversteeg/emplace/pull/397/commits/fe32ab280234b1fb1a81a22f78bbc8af188b5fa7.patch";
hash = "sha256-9O0J9cJlXUGdQ9fqWeW8OIFA48qlYxGl+2yHHt3MaMU=";
})
];
cargoHash = "sha256-nBpM8i4jlxtnaonOx71DWjbLS8tYznJkoR2JI/B25LM=";
meta = {
description = "Mirror installed software on multiple machines";
homepage = "https://github.com/tversteeg/emplace";
license = lib.licenses.agpl3Plus;
maintainers = with lib.maintainers; [ Br1ght0ne ];
mainProgram = "emplace";
};
}

View File

@@ -0,0 +1,37 @@
{
buildGoModule,
fetchFromGitHub,
lib,
libX11,
pam,
stdenv,
}:
buildGoModule rec {
pname = "emptty";
version = "0.14.0";
src = fetchFromGitHub {
owner = "tvrzna";
repo = "emptty";
rev = "v${version}";
hash = "sha256-AsIt7EI5RkSchhaMGKofOsfPNROhX8f5gDaqZ7Q2394=";
};
buildInputs = [
pam
libX11
];
vendorHash = "sha256-PLyemAUcCz9H7+nAxftki3G7rQoEeyPzY3YUEj2RFn4=";
meta = with lib; {
description = "Dead simple CLI Display Manager on TTY";
homepage = "https://github.com/tvrzna/emptty";
license = licenses.mit;
maintainers = with maintainers; [ urandom ];
# many undefined functions
broken = stdenv.hostPlatform.isDarwin;
mainProgram = "emptty";
};
}

View File

@@ -0,0 +1,113 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
sfml,
libX11,
glew,
python3,
glm,
meshoptimizer,
SDL2,
ninja,
}:
let
version = {
seriousproton = "2024.12.08";
emptyepsilon = "2024.12.08";
basis-universal = "1.15_final";
};
basis-universal = fetchFromGitHub {
owner = "BinomialLLC";
repo = "basis_universal";
tag = version.basis-universal;
hash = "sha256-pKvfVvdbPIdzdSOklicThS7xwt4i3/21bE6wg9f8kHY=";
};
serious-proton = stdenv.mkDerivation {
pname = "serious-proton";
version = version.seriousproton;
src = fetchFromGitHub {
owner = "daid";
repo = "SeriousProton";
tag = "EE-${version.seriousproton}";
hash = "sha256-k1YCB7EJIL+kdlHEU4cJjmLZZAZyxIPU0XlSn2t4C90=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
sfml
libX11
glm
SDL2
];
cmakeFlags = [
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_BASIS" "${basis-universal}")
(lib.cmakeFeature "CMAKE_CXX_FLAGS" "-DGLM_ENABLE_EXPERIMENTAL")
];
meta = with lib; {
description = "C++ game engine coded on top of SFML used for EmptyEpsilon";
homepage = "https://github.com/daid/SeriousProton";
license = licenses.mit;
maintainers = with maintainers; [ fpletz ];
platforms = platforms.linux;
};
};
in
stdenv.mkDerivation {
pname = "empty-epsilon";
version = version.emptyepsilon;
src = fetchFromGitHub {
owner = "daid";
repo = "EmptyEpsilon";
tag = "EE-${version.emptyepsilon}";
hash = "sha256-JsHFwbt4VGsgaZz9uxEmwzZGfkYTNsIZTKkpvCCmI48=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
serious-proton
sfml
glew
libX11
python3
glm
SDL2
ninja
];
cmakeFlags = [
(lib.cmakeFeature "SERIOUS_PROTON_DIR" "${serious-proton.src}")
(lib.cmakeFeature "CPACK_PACKAGE_VERSION" "${version.emptyepsilon}")
(lib.cmakeFeature "CPACK_PACKAGE_VERSION_MAJOR" "${lib.versions.major version.emptyepsilon}")
(lib.cmakeFeature "CPACK_PACKAGE_VERSION_MINOR" "${lib.versions.minor version.emptyepsilon}")
(lib.cmakeFeature "CPACK_PACKAGE_VERSION_PATCH" "${lib.versions.patch version.emptyepsilon}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_BASIS" "${basis-universal}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_MESHOPTIMIZER" "${meshoptimizer.src}")
(lib.cmakeFeature "CMAKE_AR" "${stdenv.cc.cc}/bin/gcc-ar")
(lib.cmakeFeature "CMAKE_RANLIB" "${stdenv.cc.cc}/bin/gcc-ranlib")
(lib.cmakeFeature "CMAKE_CXX_FLAGS" "-DGLM_ENABLE_EXPERIMENTAL")
"-G Ninja"
];
meta = with lib; {
description = "Open source bridge simulator based on Artemis";
mainProgram = "EmptyEpsilon";
homepage = "https://daid.github.io/EmptyEpsilon/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [
fpletz
ma27
];
platforms = platforms.linux;
};
}

View File

@@ -0,0 +1,13 @@
diff --git a/Makefile b/Makefile
index 1fe4c41..2c69558 100644
--- a/Makefile
+++ b/Makefile
@@ -16,7 +16,7 @@ LIBS = -lutil
PREFIX = /usr/local
all:
- ${CC} ${CFLAGS} -Wall ${LIBS} -o empty empty.c
+ ${CC} ${CFLAGS} -Wall -o empty empty.c ${LIBS}
FreeBSD: all
NetBSD: all

View File

@@ -0,0 +1,52 @@
{
fetchzip,
lib,
stdenv,
which,
}:
stdenv.mkDerivation rec {
pname = "empty";
version = "0.6.21b";
src = fetchzip {
url = "mirror://sourceforge/empty/empty/empty-${version}.tgz";
sha256 = "1rkixh2byr70pdxrwr4lj1ckh191rjny1m5xbjsa7nqw1fw6c2xs";
stripRoot = false;
};
patches = [
./0.6-Makefile.patch
];
nativeBuildInputs = [ which ];
makeFlags = [ "PREFIX=$(out)" ];
postPatch = ''
rm empty
'';
meta = with lib; {
homepage = "https://empty.sourceforge.net";
description = "Simple tool to automate interactive terminal applications";
license = licenses.bsd3;
platforms = platforms.all;
longDescription = ''
The empty utility provides an interface to execute and/or interact with
processes under pseudo-terminal sessions (PTYs). This tool is definitely
useful in programming of shell scripts designed to communicate with
interactive programs like telnet, ssh, ftp, etc. In some cases empty can
be the simplest replacement for TCL/expect or other similar programming
tools because empty:
- can be easily invoked directly from shell prompt or script
- does not use TCL, Perl, PHP, Python or anything else as an underlying language
- is written entirely in C
- has small and simple source code
- can easily be ported to almost all UNIX-like systems
'';
maintainers = [ maintainers.djwf ];
mainProgram = "empty";
};
}

View File

@@ -0,0 +1,28 @@
{
lib,
stdenv,
fetchFromGitHub,
}:
stdenv.mkDerivation {
pname = "emu2";
version = "0.pre+unstable=2021-09-22";
src = fetchFromGitHub {
owner = "dmsc";
repo = "emu2";
rev = "8d01b53f154d6bfc9561a44b9c281b46e00a4e87";
hash = "sha256-Jafl0Pw2k5RCF9GgpdAWcQ+HBTsiX7dOKSMCWPHQ+2E=";
};
makeFlags = [ "PREFIX=$(out)" ];
meta = with lib; {
homepage = "https://github.com/dmsc/emu2/";
description = "Simple text-mode x86 + DOS emulator";
platforms = platforms.linux;
maintainers = [ ];
license = licenses.gpl2Plus;
mainProgram = "emu2";
};
}

View File

@@ -0,0 +1,69 @@
{
lib,
stdenv,
fetchurl,
unzip,
makeDesktopItem,
copyDesktopItems,
nwjs,
wrapGAppsHook3,
gsettings-desktop-schemas,
gtk3,
}:
stdenv.mkDerivation rec {
pname = "emuflight-configurator";
version = "0.4.3";
src = fetchurl {
url = "https://github.com/emuflight/EmuConfigurator/releases/download/${version}/emuflight-configurator_${version}_linux64.zip";
sha256 = "sha256-7NcN1wF3BUClJBVm13VnV80N/+a2jAEIRqB/x9+GDEg=";
};
nativeBuildInputs = [
wrapGAppsHook3
unzip
copyDesktopItems
];
buildInputs = [
gsettings-desktop-schemas
gtk3
];
installPhase = ''
mkdir -p $out/bin $out/share/${pname}
cp -r . $out/share/${pname}/
install -m 444 -D icon/emu_icon_128.png $out/share/icons/hicolor/128x128/apps/${pname}.png
makeWrapper ${nwjs}/bin/nw $out/bin/${pname} --add-flags $out/share/${pname}
'';
desktopItems = [
(makeDesktopItem {
name = pname;
exec = pname;
icon = pname;
comment = "Emuflight configuration tool";
desktopName = "Emuflight Configurator";
genericName = "Flight controller configuration tool";
})
];
meta = with lib; {
description = "Emuflight flight control system configuration tool";
mainProgram = "emuflight-configurator";
longDescription = ''
A crossplatform configuration tool for the Emuflight flight control system.
Various types of aircraft are supported by the tool and by Emuflight, e.g.
quadcopters, hexacopters, octocopters and fixed-wing aircraft.
The application allows you to configure the Emuflight software running on any supported Emuflight target.
'';
homepage = "https://github.com/emuflight/EmuConfigurator";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.gpl3Only;
maintainers = with maintainers; [ beezow ];
platforms = platforms.linux;
};
}

View File

@@ -0,0 +1,12 @@
--- a/resources/systems/linux/es_find_rules.xml 2024-09-13 16:19:36.000000000 +0300
+++ b/resources/systems/linux/es_find_rules.xml 2024-11-26 23:08:49.204498848 +0200
@@ -41,6 +41,9 @@
<entry>/usr/lib64/libretro</entry>
<!-- Manjaro repository -->
<entry>/usr/lib/libretro</entry>
+ <!-- NixOS and Nixpkgs repository -->
+ <entry>/run/current-system/sw/lib/retroarch/cores</entry>
+ <entry>~/.nix-profile/lib/retroarch/cores</entry>
</rule>
</core>
<emulator name="3DSEN-WINDOWS">

View File

@@ -0,0 +1,74 @@
{
lib,
stdenv,
fetchzip,
cmake,
pkg-config,
alsa-lib,
bluez,
curl,
ffmpeg,
freeimage,
freetype,
gettext,
harfbuzz,
icu,
libgit2,
poppler,
pugixml,
SDL2,
libGL,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "emulationstation-de";
version = "3.2.0";
src = fetchzip {
url = "https://gitlab.com/es-de/emulationstation-de/-/archive/v${finalAttrs.version}/emulationstation-de-v${finalAttrs.version}.tar.gz";
hash = "sha256-tW8+7ImcJ3mBhoIHVE8h4cba+4SQLP55kiFYE7N8jyI=";
};
patches = [
./001-add-nixpkgs-retroarch-cores.patch
];
postPatch = ''
# ldd-based detection fails for cross builds
substituteInPlace CMake/Packages/FindPoppler.cmake \
--replace-fail 'GET_PREREQUISITES("''${POPPLER_LIBRARY}" POPPLER_PREREQS 1 0 "" "")' ""
'';
nativeBuildInputs = [
cmake
gettext # msgfmt
pkg-config
];
buildInputs = [
alsa-lib
bluez
curl
ffmpeg
freeimage
freetype
harfbuzz
icu
libgit2
poppler
pugixml
SDL2
libGL
];
cmakeFlags = [ (lib.cmakeBool "APPLICATION_UPDATER" false) ];
meta = {
description = "ES-DE (EmulationStation Desktop Edition) is a frontend for browsing and launching games from your multi-platform collection";
homepage = "https://es-de.org";
maintainers = with lib.maintainers; [ ivarmedi ];
license = lib.licenses.mit;
platforms = lib.platforms.linux;
mainProgram = "es-de";
};
})

View File

@@ -0,0 +1,87 @@
{
lib,
SDL2,
alsa-lib,
boost,
callPackage,
cmake,
curl,
freeimage,
freetype,
libGL,
libGLU,
libvlc,
pkg-config,
rapidjson,
stdenv,
}:
let
sources = callPackage ./sources.nix { };
in
stdenv.mkDerivation {
inherit (sources.emulationstation) pname version src;
postUnpack = ''
pushd $sourceRoot/external/pugixml
cp --verbose --archive ${sources.pugixml.src}/* .
chmod --recursive 744 .
popd
'';
nativeBuildInputs = [
SDL2
cmake
pkg-config
];
buildInputs = [
SDL2
alsa-lib
boost
curl
freeimage
freetype
libGL
libGLU
libvlc
rapidjson
];
cmakeFlags = [ (lib.cmakeBool "GL" true) ];
strictDeps = true;
installPhase = ''
runHook preInstall
install -Dm755 ../emulationstation $out/bin/emulationstation
mkdir -p $out/share/emulationstation/
cp -r ../resources $out/share/emulationstation/
runHook postInstall
'';
# es-core/src/resources/ResourceManager.cpp: resources are searched at the
# same place of binaries.
postFixup = ''
pushd $out
ln -s $out/share/emulationstation/resources $out/bin/
popd
'';
passthru = {
inherit sources;
};
meta = {
homepage = "https://github.com/RetroPie/EmulationStation";
description = "Flexible emulator front-end supporting keyboardless navigation and custom system themes (forked by RetroPie)";
license = with lib.licenses; [ mit ];
mainProgram = "emulationstation";
maintainers = with lib.maintainers; [
edwtjo
];
platforms = lib.platforms.linux;
};
}

View File

@@ -0,0 +1,35 @@
{ fetchFromGitHub }:
{
emulationstation =
let
self = {
pname = "emulationstation";
version = "2.11.2";
src = fetchFromGitHub {
owner = "RetroPie";
repo = "EmulationStation";
rev = "v${self.version}";
hash = "sha256-f2gRkp+3Pp2qnvg2RBzaHPpzhAnwx0+5x1Pe3kD90xE=";
};
};
in
self;
pugixml =
let
self = {
pname = "pugixml";
version = "1.8.1";
src = fetchFromGitHub {
owner = "zeux";
repo = "pugixml";
rev = "v${self.version}";
hash = "sha256-LbjTN1hnIbqI79C+gCdwuDG0+B/5yXf7hg0Q+cDFIf4=";
};
};
in
self;
}

View File

@@ -0,0 +1,55 @@
{
stdenv,
lib,
fetchFromGitHub,
meson,
ninja,
vala,
wrapGAppsHook4,
libadwaita,
json-glib,
libgee,
pkg-config,
gtk3,
desktop-file-utils,
}:
stdenv.mkDerivation rec {
pname = "emulsion-palette";
version = "3.3.9";
src = fetchFromGitHub {
owner = "lainsce";
repo = "emulsion";
rev = version;
sha256 = "sha256-xG7yZKbbNao/pzFhdTMof/lw9K12NKZi47YRaEd65ok=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
vala
wrapGAppsHook4
];
buildInputs = [
desktop-file-utils
gtk3 # We're only using it for the gtk-update-icon-cache utility.
json-glib
libadwaita
libgee
];
postFixup = ''
ln -s $out/bin/io.github.lainsce.Emulsion $out/bin/emulsion-palette
'';
meta = with lib; {
description = "Store your color palettes in an easy way";
homepage = "https://github.com/lainsce/emulsion";
license = licenses.gpl3Only;
platforms = platforms.linux;
maintainers = with maintainers; [ foo-dogsquared ];
};
}

View File

@@ -0,0 +1,69 @@
{
stdenv,
lib,
fetchFromGitHub,
rustPlatform,
installShellFiles,
makeWrapper,
pkg-config,
python3,
libGL,
libX11,
libXcursor,
libXi,
libXrandr,
libXxf86vm,
libxcb,
libxkbcommon,
wayland,
}:
let
rpathLibs = [
libGL
libX11
libXcursor
libXi
libXrandr
libXxf86vm
libxcb
]
++ lib.optionals stdenv.hostPlatform.isLinux [
libxkbcommon
wayland
];
in
rustPlatform.buildRustPackage rec {
pname = "emulsion";
version = "11.0";
src = fetchFromGitHub {
owner = "ArturKovacs";
repo = "emulsion";
rev = "v${version}";
sha256 = "sha256-0t+MUZu1cvkJSL9Ly9kblH8fMr05KuRpOo+JDn/VUc8=";
};
cargoHash = "sha256-1s5kCUxn4t1A40QHuygGKaqphLmcl+EYfx++RZQmL00=";
nativeBuildInputs = [
installShellFiles
makeWrapper
pkg-config
python3
];
buildInputs = rpathLibs;
postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
patchelf --set-rpath "${lib.makeLibraryPath rpathLibs}" $out/bin/emulsion
'';
meta = with lib; {
description = "Fast and minimalistic image viewer";
homepage = "https://arturkovacs.github.io/emulsion-website/";
maintainers = [ maintainers.magnetophon ];
platforms = platforms.unix;
license = licenses.mit;
mainProgram = "emulsion";
};
}

View File

@@ -0,0 +1,31 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation {
pname = "emv";
version = "1.95";
src = fetchurl {
url = "http://www.i0i0.de/toolchest/emv";
sha256 = "7e0e12afa45ef5ed8025e5f2c6deea0ff5f512644a721f7b1b95b63406a8f7ce";
};
dontUnpack = true;
installPhase = ''
mkdir -pv $out/bin
cp $src $out/bin/emv
chmod +x $out/bin/emv
'';
meta = {
homepage = "http://www.i0i0.de/toolchest/emv";
description = "Editor Move: Rename files with your favourite text editor";
license = lib.licenses.publicDomain;
platforms = lib.platforms.unix;
mainProgram = "emv";
};
}