Merge remote-tracking branch 'origin/master' into staging-next
This commit is contained in:
commit
d0bfb3ccbb
65
.github/CODEOWNERS
vendored
65
.github/CODEOWNERS
vendored
|
@ -10,9 +10,6 @@
|
||||||
# IMPORTANT NOTE: in order to actually get pinged, commit access is required.
|
# IMPORTANT NOTE: in order to actually get pinged, commit access is required.
|
||||||
# This also holds true for GitHub teams. Since almost none of our teams have write
|
# This also holds true for GitHub teams. Since almost none of our teams have write
|
||||||
# permissions, you need to list all members of the team with commit access individually.
|
# permissions, you need to list all members of the team with commit access individually.
|
||||||
# We still add the team to the list next to its members, this helps keeping things
|
|
||||||
# in sync. (Put non team members before the team to distinguish them.)
|
|
||||||
# See https://github.com/NixOS/nixpkgs/issues/124085 for more details
|
|
||||||
|
|
||||||
# This file
|
# This file
|
||||||
/.github/CODEOWNERS @edolstra
|
/.github/CODEOWNERS @edolstra
|
||||||
|
@ -39,10 +36,10 @@
|
||||||
/pkgs/top-level/stage.nix @nbp @Ericson2314 @matthewbauer
|
/pkgs/top-level/stage.nix @nbp @Ericson2314 @matthewbauer
|
||||||
/pkgs/top-level/splice.nix @Ericson2314 @matthewbauer
|
/pkgs/top-level/splice.nix @Ericson2314 @matthewbauer
|
||||||
/pkgs/top-level/release-cross.nix @Ericson2314 @matthewbauer
|
/pkgs/top-level/release-cross.nix @Ericson2314 @matthewbauer
|
||||||
/pkgs/stdenv/generic @Ericson2314 @matthewbauer @cab404
|
/pkgs/stdenv/generic @Ericson2314 @matthewbauer
|
||||||
/pkgs/stdenv/cross @Ericson2314 @matthewbauer
|
/pkgs/stdenv/cross @Ericson2314 @matthewbauer
|
||||||
/pkgs/build-support/cc-wrapper @Ericson2314 @orivej
|
/pkgs/build-support/cc-wrapper @Ericson2314
|
||||||
/pkgs/build-support/bintools-wrapper @Ericson2314 @orivej
|
/pkgs/build-support/bintools-wrapper @Ericson2314
|
||||||
/pkgs/build-support/setup-hooks @Ericson2314
|
/pkgs/build-support/setup-hooks @Ericson2314
|
||||||
/pkgs/build-support/setup-hooks/auto-patchelf.sh @aszlig
|
/pkgs/build-support/setup-hooks/auto-patchelf.sh @aszlig
|
||||||
|
|
||||||
|
@ -97,8 +94,7 @@
|
||||||
/pkgs/development/python-modules @FRidh @jonringer
|
/pkgs/development/python-modules @FRidh @jonringer
|
||||||
/doc/languages-frameworks/python.section.md @FRidh
|
/doc/languages-frameworks/python.section.md @FRidh
|
||||||
/pkgs/development/tools/poetry2nix @adisbladis
|
/pkgs/development/tools/poetry2nix @adisbladis
|
||||||
/pkgs/development/interpreters/python/hooks @FRidh @jonringer @DavHau
|
/pkgs/development/interpreters/python/hooks @FRidh @jonringer
|
||||||
/pkgs/development/interpreters/python/conda @DavHau
|
|
||||||
|
|
||||||
# Haskell
|
# Haskell
|
||||||
/doc/languages-frameworks/haskell.section.md @cdepillabout @sternenseemann @maralorn @expipiplus1
|
/doc/languages-frameworks/haskell.section.md @cdepillabout @sternenseemann @maralorn @expipiplus1
|
||||||
|
@ -115,8 +111,8 @@
|
||||||
/pkgs/development/perl-modules @stigtsp @zakame
|
/pkgs/development/perl-modules @stigtsp @zakame
|
||||||
|
|
||||||
# R
|
# R
|
||||||
/pkgs/applications/science/math/R @jbedo @bcdarwin
|
/pkgs/applications/science/math/R @jbedo
|
||||||
/pkgs/development/r-modules @jbedo @bcdarwin
|
/pkgs/development/r-modules @jbedo
|
||||||
|
|
||||||
# Ruby
|
# Ruby
|
||||||
/pkgs/development/interpreters/ruby @marsam
|
/pkgs/development/interpreters/ruby @marsam
|
||||||
|
@ -127,10 +123,6 @@
|
||||||
/pkgs/build-support/rust @zowoq
|
/pkgs/build-support/rust @zowoq
|
||||||
/doc/languages-frameworks/rust.section.md @zowoq
|
/doc/languages-frameworks/rust.section.md @zowoq
|
||||||
|
|
||||||
# Darwin-related
|
|
||||||
/pkgs/stdenv/darwin @NixOS/darwin-maintainers
|
|
||||||
/pkgs/os-specific/darwin @NixOS/darwin-maintainers
|
|
||||||
|
|
||||||
# C compilers
|
# C compilers
|
||||||
/pkgs/development/compilers/gcc @matthewbauer
|
/pkgs/development/compilers/gcc @matthewbauer
|
||||||
/pkgs/development/compilers/llvm @matthewbauer
|
/pkgs/development/compilers/llvm @matthewbauer
|
||||||
|
@ -139,15 +131,6 @@
|
||||||
/pkgs/top-level/unix-tools.nix @matthewbauer
|
/pkgs/top-level/unix-tools.nix @matthewbauer
|
||||||
/pkgs/development/tools/xcbuild @matthewbauer
|
/pkgs/development/tools/xcbuild @matthewbauer
|
||||||
|
|
||||||
# Beam-related (Erlang, Elixir, LFE, etc)
|
|
||||||
/pkgs/development/beam-modules @gleber
|
|
||||||
/pkgs/development/interpreters/erlang @gleber
|
|
||||||
/pkgs/development/interpreters/lfe @gleber
|
|
||||||
/pkgs/development/interpreters/elixir @gleber
|
|
||||||
/pkgs/development/tools/build-managers/rebar @gleber
|
|
||||||
/pkgs/development/tools/build-managers/rebar3 @gleber
|
|
||||||
/pkgs/development/tools/erlang @gleber
|
|
||||||
|
|
||||||
# Audio
|
# Audio
|
||||||
/nixos/modules/services/audio/botamusique.nix @mweinelt
|
/nixos/modules/services/audio/botamusique.nix @mweinelt
|
||||||
/nixos/modules/services/audio/snapserver.nix @mweinelt
|
/nixos/modules/services/audio/snapserver.nix @mweinelt
|
||||||
|
@ -215,7 +198,7 @@
|
||||||
/pkgs/development/idris-modules @Infinisil
|
/pkgs/development/idris-modules @Infinisil
|
||||||
|
|
||||||
# Bazel
|
# Bazel
|
||||||
/pkgs/development/tools/build-managers/bazel @mboes @Profpatsch
|
/pkgs/development/tools/build-managers/bazel @Profpatsch
|
||||||
|
|
||||||
# NixOS modules for e-mail and dns services
|
# NixOS modules for e-mail and dns services
|
||||||
/nixos/modules/services/mail/mailman.nix @peti
|
/nixos/modules/services/mail/mailman.nix @peti
|
||||||
|
@ -243,22 +226,22 @@
|
||||||
/nixos/tests/prometheus-exporters.nix @WilliButz
|
/nixos/tests/prometheus-exporters.nix @WilliButz
|
||||||
|
|
||||||
# PHP interpreter, packages, extensions, tests and documentation
|
# PHP interpreter, packages, extensions, tests and documentation
|
||||||
/doc/languages-frameworks/php.section.md @NixOS/php @aanderse @etu @globin @ma27 @talyz
|
/doc/languages-frameworks/php.section.md @aanderse @etu @globin @ma27 @talyz
|
||||||
/nixos/tests/php @NixOS/php @aanderse @etu @globin @ma27 @talyz
|
/nixos/tests/php @aanderse @etu @globin @ma27 @talyz
|
||||||
/pkgs/build-support/build-pecl.nix @NixOS/php @aanderse @etu @globin @ma27 @talyz
|
/pkgs/build-support/build-pecl.nix @aanderse @etu @globin @ma27 @talyz
|
||||||
/pkgs/development/interpreters/php @jtojnar @NixOS/php @aanderse @etu @globin @ma27 @talyz
|
/pkgs/development/interpreters/php @jtojnar @aanderse @etu @globin @ma27 @talyz
|
||||||
/pkgs/development/php-packages @NixOS/php @aanderse @etu @globin @ma27 @talyz
|
/pkgs/development/php-packages @aanderse @etu @globin @ma27 @talyz
|
||||||
/pkgs/top-level/php-packages.nix @jtojnar @NixOS/php @aanderse @etu @globin @ma27 @talyz
|
/pkgs/top-level/php-packages.nix @jtojnar @aanderse @etu @globin @ma27 @talyz
|
||||||
|
|
||||||
# Podman, CRI-O modules and related
|
# Podman, CRI-O modules and related
|
||||||
/nixos/modules/virtualisation/containers.nix @NixOS/podman @zowoq @adisbladis
|
/nixos/modules/virtualisation/containers.nix @zowoq @adisbladis
|
||||||
/nixos/modules/virtualisation/cri-o.nix @NixOS/podman @zowoq @adisbladis
|
/nixos/modules/virtualisation/cri-o.nix @zowoq @adisbladis
|
||||||
/nixos/modules/virtualisation/podman @NixOS/podman @zowoq @adisbladis
|
/nixos/modules/virtualisation/podman @zowoq @adisbladis
|
||||||
/nixos/tests/cri-o.nix @NixOS/podman @zowoq @adisbladis
|
/nixos/tests/cri-o.nix @zowoq @adisbladis
|
||||||
/nixos/tests/podman @NixOS/podman @zowoq @adisbladis
|
/nixos/tests/podman @zowoq @adisbladis
|
||||||
|
|
||||||
# Docker tools
|
# Docker tools
|
||||||
/pkgs/build-support/docker @roberth @utdemir
|
/pkgs/build-support/docker @roberth
|
||||||
/nixos/tests/docker-tools-overlay.nix @roberth
|
/nixos/tests/docker-tools-overlay.nix @roberth
|
||||||
/nixos/tests/docker-tools.nix @roberth
|
/nixos/tests/docker-tools.nix @roberth
|
||||||
/doc/builders/images/dockertools.xml @roberth
|
/doc/builders/images/dockertools.xml @roberth
|
||||||
|
@ -273,8 +256,8 @@
|
||||||
/pkgs/development/go-packages @kalbasit @Mic92 @zowoq
|
/pkgs/development/go-packages @kalbasit @Mic92 @zowoq
|
||||||
|
|
||||||
# GNOME
|
# GNOME
|
||||||
/pkgs/desktops/gnome @NixOS/GNOME @jtojnar @hedning
|
/pkgs/desktops/gnome @jtojnar @hedning
|
||||||
/pkgs/desktops/gnome/extensions @piegamesde @NixOS/GNOME @jtojnar @hedning
|
/pkgs/desktops/gnome/extensions @piegamesde @jtojnar @hedning
|
||||||
|
|
||||||
# Cinnamon
|
# Cinnamon
|
||||||
/pkgs/desktops/cinnamon @mkg20001
|
/pkgs/desktops/cinnamon @mkg20001
|
||||||
|
@ -295,10 +278,10 @@
|
||||||
|
|
||||||
# Matrix
|
# Matrix
|
||||||
/pkgs/servers/heisenbridge @piegamesde
|
/pkgs/servers/heisenbridge @piegamesde
|
||||||
/pkgs/servers/matrix-conduit @piegamesde @pstn
|
/pkgs/servers/matrix-conduit @piegamesde
|
||||||
/pkgs/servers/matrix-synapse/matrix-appservice-irc @piegamesde
|
/pkgs/servers/matrix-synapse/matrix-appservice-irc @piegamesde
|
||||||
/nixos/modules/services/misc/heisenbridge.nix @piegamesde
|
/nixos/modules/services/misc/heisenbridge.nix @piegamesde
|
||||||
/nixos/modules/services/misc/matrix-appservice-irc.nix @piegamesde
|
/nixos/modules/services/misc/matrix-appservice-irc.nix @piegamesde
|
||||||
/nixos/modules/services/misc/matrix-conduit.nix @piegamesde @pstn
|
/nixos/modules/services/misc/matrix-conduit.nix @piegamesde
|
||||||
/nixos/tests/matrix-appservice-irc.nix @piegamesde
|
/nixos/tests/matrix-appservice-irc.nix @piegamesde
|
||||||
/nixos/tests/matrix-conduit.nix @piegamesde @pstn
|
/nixos/tests/matrix-conduit.nix @piegamesde
|
||||||
|
|
|
@ -120,7 +120,7 @@ rec {
|
||||||
Example:
|
Example:
|
||||||
mkPackageOption pkgs "GHC" {
|
mkPackageOption pkgs "GHC" {
|
||||||
default = [ "ghc" ];
|
default = [ "ghc" ];
|
||||||
example = "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
example = "pkgs.haskell.package.ghc922.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||||
}
|
}
|
||||||
=> { _type = "option"; default = «derivation /nix/store/jxx55cxsjrf8kyh3fp2ya17q99w7541r-ghc-8.10.7.drv»; defaultText = { ... }; description = "The GHC package to use."; example = { ... }; type = { ... }; }
|
=> { _type = "option"; default = «derivation /nix/store/jxx55cxsjrf8kyh3fp2ya17q99w7541r-ghc-8.10.7.drv»; defaultText = { ... }; description = "The GHC package to use."; example = { ... }; type = { ... }; }
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -14251,4 +14251,16 @@
|
||||||
github = "nigelgbanks";
|
github = "nigelgbanks";
|
||||||
githubId = 487373;
|
githubId = 487373;
|
||||||
};
|
};
|
||||||
|
zanculmarktum = {
|
||||||
|
name = "Azure Zanculmarktum";
|
||||||
|
email = "zanculmarktum@gmail.com";
|
||||||
|
github = "zanculmarktum";
|
||||||
|
githubId = 16958511;
|
||||||
|
};
|
||||||
|
kuwii = {
|
||||||
|
name = "kuwii";
|
||||||
|
email = "kuwii.someone@gmail.com";
|
||||||
|
github = "kuwii";
|
||||||
|
githubId = 10705175;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
22
maintainers/scripts/haskell/maintained-broken-pkgs.nix
Normal file
22
maintainers/scripts/haskell/maintained-broken-pkgs.nix
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
let
|
||||||
|
nixpkgs = import ../../..;
|
||||||
|
inherit (nixpkgs {}) haskellPackages lib;
|
||||||
|
maintainedPkgs = lib.filterAttrs (
|
||||||
|
_: v: builtins.length (v.meta.maintainers or []) > 0
|
||||||
|
) haskellPackages;
|
||||||
|
brokenPkgs = lib.filterAttrs (_: v: v.meta.broken) maintainedPkgs;
|
||||||
|
transitiveBrokenPkgs = lib.filterAttrs
|
||||||
|
(_: v: !(builtins.tryEval (v.outPath or null)).success && !v.meta.broken)
|
||||||
|
maintainedPkgs;
|
||||||
|
infoList = pkgs: lib.concatStringsSep "\n" (lib.mapAttrsToList (name: drv: "${name} ${(builtins.elemAt drv.meta.maintainers 0).github}") pkgs);
|
||||||
|
in {
|
||||||
|
report = ''
|
||||||
|
BROKEN:
|
||||||
|
${infoList brokenPkgs}
|
||||||
|
|
||||||
|
TRANSITIVE BROKEN:
|
||||||
|
${infoList transitiveBrokenPkgs}
|
||||||
|
'';
|
||||||
|
transitiveErrors =
|
||||||
|
builtins.attrValues transitiveBrokenPkgs;
|
||||||
|
}
|
|
@ -1,26 +1,38 @@
|
||||||
#! /usr/bin/env nix-shell
|
#! /usr/bin/env nix-shell
|
||||||
#! nix-shell -i bash -p nix curl jq nix-prefetch-github git gnused gnugrep -I nixpkgs=.
|
#! nix-shell -i bash -p nix curl jq nix-prefetch-github git gnused gnugrep -I nixpkgs=.
|
||||||
|
# shellcheck shell=bash
|
||||||
|
|
||||||
set -eu -o pipefail
|
set -eu -o pipefail
|
||||||
|
|
||||||
tmpfile=$(mktemp "update-stackage.XXXXXXX")
|
# Stackage solver to use, LTS or Nightly
|
||||||
# shellcheck disable=SC2064
|
# (should be capitalized like the display name)
|
||||||
|
SOLVER=LTS
|
||||||
|
TMP_TEMPLATE=update-stackage.XXXXXXX
|
||||||
|
readonly SOLVER
|
||||||
|
readonly TMP_TEMPLATE
|
||||||
|
|
||||||
|
toLower() {
|
||||||
|
printf "%s" "$1" | tr '[:upper:]' '[:lower:]'
|
||||||
|
}
|
||||||
|
|
||||||
|
tmpfile=$(mktemp "$TMP_TEMPLATE")
|
||||||
|
tmpfile_new=$(mktemp "$TMP_TEMPLATE")
|
||||||
|
|
||||||
stackage_config="pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml"
|
stackage_config="pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml"
|
||||||
|
|
||||||
trap "rm ${tmpfile} ${tmpfile}.new" 0
|
trap 'rm "${tmpfile}" "${tmpfile_new}"' 0
|
||||||
touch "$tmpfile" "$tmpfile.new" # Creating files here so that trap creates no errors.
|
touch "$tmpfile" "$tmpfile_new" # Creating files here so that trap creates no errors.
|
||||||
|
|
||||||
curl -L -s "https://stackage.org/lts/cabal.config" >"$tmpfile"
|
curl -L -s "https://stackage.org/$(toLower "$SOLVER")/cabal.config" >"$tmpfile"
|
||||||
old_version=$(grep "# Stackage" $stackage_config | sed -E 's/.*([0-9]{2}\.[0-9]+)/\1/')
|
old_version=$(grep '^# Stackage' $stackage_config | sed -e 's/.\+ \([A-Za-z]\+ [0-9.-]\+\)$/\1/g')
|
||||||
version=$(sed -rn "s/^--.*http:..(www.)?stackage.org.snapshot.lts-//p" "$tmpfile")
|
version="$SOLVER $(sed -rn "s/^--.*http:..(www.)?stackage.org.snapshot.$(toLower "$SOLVER")-//p" "$tmpfile")"
|
||||||
|
|
||||||
if [[ "$old_version" == "$version" ]]; then
|
if [[ "$old_version" == "$version" ]]; then
|
||||||
echo "No new stackage version"
|
echo "No new stackage version"
|
||||||
exit 0 # Nothing to do
|
exit 0 # Nothing to do
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Updating Stackage LTS from $old_version to $version."
|
echo "Updating Stackage from $old_version to $version."
|
||||||
|
|
||||||
# Create a simple yaml version of the file.
|
# Create a simple yaml version of the file.
|
||||||
sed -r \
|
sed -r \
|
||||||
|
@ -30,10 +42,10 @@ sed -r \
|
||||||
-e 's|,$||' \
|
-e 's|,$||' \
|
||||||
-e '/installed$/d' \
|
-e '/installed$/d' \
|
||||||
-e '/^$/d' \
|
-e '/^$/d' \
|
||||||
< "${tmpfile}" | sort --ignore-case >"${tmpfile}.new"
|
< "${tmpfile}" | sort --ignore-case >"${tmpfile_new}"
|
||||||
|
|
||||||
cat > $stackage_config << EOF
|
cat > $stackage_config << EOF
|
||||||
# Stackage LTS $version
|
# Stackage $version
|
||||||
# This file is auto-generated by
|
# This file is auto-generated by
|
||||||
# maintainers/scripts/haskell/update-stackage.sh
|
# maintainers/scripts/haskell/update-stackage.sh
|
||||||
default-package-overrides:
|
default-package-overrides:
|
||||||
|
@ -45,12 +57,13 @@ sed -r \
|
||||||
-e '/ distribution-nixpkgs /d' \
|
-e '/ distribution-nixpkgs /d' \
|
||||||
-e '/ jailbreak-cabal /d' \
|
-e '/ jailbreak-cabal /d' \
|
||||||
-e '/ language-nix /d' \
|
-e '/ language-nix /d' \
|
||||||
< "${tmpfile}.new" >> $stackage_config
|
-e '/ cabal-install /d' \
|
||||||
|
< "${tmpfile_new}" >> $stackage_config
|
||||||
|
|
||||||
if [[ "${1:-}" == "--do-commit" ]]; then
|
if [[ "${1:-}" == "--do-commit" ]]; then
|
||||||
git add $stackage_config
|
git add $stackage_config
|
||||||
git commit -F - << EOF
|
git commit -F - << EOF
|
||||||
haskellPackages: stackage-lts $old_version -> $version
|
haskellPackages: stackage $old_version -> $version
|
||||||
|
|
||||||
This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
|
This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
|
||||||
EOF
|
EOF
|
||||||
|
|
|
@ -70,6 +70,14 @@ with lib.maintainers; {
|
||||||
scope = "Maintain the Chia blockchain and its dependencies";
|
scope = "Maintain the Chia blockchain and its dependencies";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
cosmopolitan = {
|
||||||
|
members = [
|
||||||
|
lourkeur
|
||||||
|
tomberek
|
||||||
|
];
|
||||||
|
scope = "Maintain the Cosmopolitan LibC and related programs.";
|
||||||
|
};
|
||||||
|
|
||||||
deshaw = {
|
deshaw = {
|
||||||
# Verify additions to this team with at least one already existing member of the team.
|
# Verify additions to this team with at least one already existing member of the team.
|
||||||
members = [
|
members = [
|
||||||
|
@ -117,6 +125,7 @@ with lib.maintainers; {
|
||||||
|
|
||||||
gnome = {
|
gnome = {
|
||||||
members = [
|
members = [
|
||||||
|
bobby285271
|
||||||
hedning
|
hedning
|
||||||
jtojnar
|
jtojnar
|
||||||
dasj19
|
dasj19
|
||||||
|
|
|
@ -120,14 +120,14 @@ lib.mkOption {
|
||||||
```nix
|
```nix
|
||||||
lib.mkPackageOption pkgs "GHC" {
|
lib.mkPackageOption pkgs "GHC" {
|
||||||
default = [ "ghc" ];
|
default = [ "ghc" ];
|
||||||
example = "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
example = "pkgs.haskell.package.ghc922.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||||
}
|
}
|
||||||
# is like
|
# is like
|
||||||
lib.mkOption {
|
lib.mkOption {
|
||||||
type = lib.types.package;
|
type = lib.types.package;
|
||||||
default = pkgs.ghc;
|
default = pkgs.ghc;
|
||||||
defaultText = lib.literalExpression "pkgs.ghc";
|
defaultText = lib.literalExpression "pkgs.ghc";
|
||||||
example = lib.literalExpression "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
example = lib.literalExpression "pkgs.haskell.package.ghc922.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||||
description = "The GHC package to use.";
|
description = "The GHC package to use.";
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
|
@ -183,14 +183,14 @@ lib.mkOption {
|
||||||
<programlisting language="bash">
|
<programlisting language="bash">
|
||||||
lib.mkPackageOption pkgs "GHC" {
|
lib.mkPackageOption pkgs "GHC" {
|
||||||
default = [ "ghc" ];
|
default = [ "ghc" ];
|
||||||
example = "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
example = "pkgs.haskell.package.ghc922.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||||
}
|
}
|
||||||
# is like
|
# is like
|
||||||
lib.mkOption {
|
lib.mkOption {
|
||||||
type = lib.types.package;
|
type = lib.types.package;
|
||||||
default = pkgs.ghc;
|
default = pkgs.ghc;
|
||||||
defaultText = lib.literalExpression "pkgs.ghc";
|
defaultText = lib.literalExpression "pkgs.ghc";
|
||||||
example = lib.literalExpression "pkgs.haskell.package.ghc921.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
example = lib.literalExpression "pkgs.haskell.package.ghc922.ghc.withPackages (hkgs: [ hkgs.primes ])";
|
||||||
description = "The GHC package to use.";
|
description = "The GHC package to use.";
|
||||||
}
|
}
|
||||||
</programlisting>
|
</programlisting>
|
||||||
|
|
|
@ -93,6 +93,14 @@
|
||||||
and their users.
|
and their users.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
The default GHC version has been updated from 8.10.7 to 9.0.2.
|
||||||
|
<literal>pkgs.haskellPackages</literal> and
|
||||||
|
<literal>pkgs.ghc</literal> will now use this version by
|
||||||
|
default.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
<section xml:id="sec-release-22.05-new-services">
|
<section xml:id="sec-release-22.05-new-services">
|
||||||
|
@ -226,6 +234,13 @@
|
||||||
<link xlink:href="options.html#opt-services.prometheus.exporters.pve">services.prometheus.exporters.pve</link>.
|
<link xlink:href="options.html#opt-services.prometheus.exporters.pve">services.prometheus.exporters.pve</link>.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<link xlink:href="https://github.com/netbox-community/netbox">netbox</link>,
|
||||||
|
infrastructure resource modeling (IRM) tool. Available as
|
||||||
|
<link xlink:href="options.html#opt-services.netbox.enable">services.netbox</link>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
<link xlink:href="https://tetrd.app">tetrd</link>, share your
|
<link xlink:href="https://tetrd.app">tetrd</link>, share your
|
||||||
|
@ -1021,8 +1036,8 @@
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
<literal>pkgs.pgadmin</literal> now refers to
|
<literal>pkgs.pgadmin</literal> now refers to
|
||||||
<literal>pkgs.pgadmin4</literal>. If you still need pgadmin3,
|
<literal>pkgs.pgadmin4</literal>. <literal>pgadmin3</literal>
|
||||||
use <literal>pkgs.pgadmin3</literal>.
|
has been removed.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
|
@ -1264,6 +1279,13 @@
|
||||||
example.
|
example.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<literal>pkgs.cosmopolitan</literal> no longer provides the
|
||||||
|
<literal>cosmoc</literal> command. It has been moved to
|
||||||
|
<literal>pkgs.cosmoc</literal>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
<section xml:id="sec-release-22.05-notable-changes">
|
<section xml:id="sec-release-22.05-notable-changes">
|
||||||
|
|
|
@ -3,10 +3,15 @@
|
||||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||||
<title>NixOS Reference Pages</title>
|
<title>NixOS Reference Pages</title>
|
||||||
<info>
|
<info>
|
||||||
<author><personname><firstname>Eelco</firstname><surname>Dolstra</surname></personname>
|
<author>
|
||||||
|
<personname><firstname>Eelco</firstname><surname>Dolstra</surname></personname>
|
||||||
<contrib>Author</contrib>
|
<contrib>Author</contrib>
|
||||||
</author>
|
</author>
|
||||||
<copyright><year>2007-2020</year><holder>Eelco Dolstra</holder>
|
<author>
|
||||||
|
<personname><othername>The Nixpkgs/NixOS contributors</othername></personname>
|
||||||
|
<contrib>Author</contrib>
|
||||||
|
</author>
|
||||||
|
<copyright><year>2007-2022</year><holder>Eelco Dolstra and the Nixpkgs/NixOS contributors</holder>
|
||||||
</copyright>
|
</copyright>
|
||||||
</info>
|
</info>
|
||||||
<xi:include href="man-configuration.xml" />
|
<xi:include href="man-configuration.xml" />
|
||||||
|
|
|
@ -31,6 +31,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
- Module authors can use `mkRenamedOptionModuleWith` to automate the deprecation cycle without annoying out-of-tree module authors and their users.
|
- Module authors can use `mkRenamedOptionModuleWith` to automate the deprecation cycle without annoying out-of-tree module authors and their users.
|
||||||
|
|
||||||
|
- The default GHC version has been updated from 8.10.7 to 9.0.2. `pkgs.haskellPackages` and `pkgs.ghc` will now use this version by default.
|
||||||
|
|
||||||
## New Services {#sec-release-22.05-new-services}
|
## New Services {#sec-release-22.05-new-services}
|
||||||
|
|
||||||
- [aesmd](https://github.com/intel/linux-sgx#install-the-intelr-sgx-psw), the Intel SGX Architectural Enclave Service Manager. Available as [services.aesmd](#opt-services.aesmd.enable).
|
- [aesmd](https://github.com/intel/linux-sgx#install-the-intelr-sgx-psw), the Intel SGX Architectural Enclave Service Manager. Available as [services.aesmd](#opt-services.aesmd.enable).
|
||||||
|
@ -67,6 +69,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
- [prometheus-pve-exporter](https://github.com/prometheus-pve/prometheus-pve-exporter), a tool that exposes information from the Proxmox VE API for use by Prometheus. Available as [services.prometheus.exporters.pve](options.html#opt-services.prometheus.exporters.pve).
|
- [prometheus-pve-exporter](https://github.com/prometheus-pve/prometheus-pve-exporter), a tool that exposes information from the Proxmox VE API for use by Prometheus. Available as [services.prometheus.exporters.pve](options.html#opt-services.prometheus.exporters.pve).
|
||||||
|
|
||||||
|
- [netbox](https://github.com/netbox-community/netbox), infrastructure resource modeling (IRM) tool. Available as [services.netbox](options.html#opt-services.netbox.enable).
|
||||||
|
|
||||||
- [tetrd](https://tetrd.app), share your internet connection from your device to your PC and vice versa through a USB cable. Available at [services.tetrd](#opt-services.tetrd.enable).
|
- [tetrd](https://tetrd.app), share your internet connection from your device to your PC and vice versa through a USB cable. Available at [services.tetrd](#opt-services.tetrd.enable).
|
||||||
|
|
||||||
- [agate](https://github.com/mbrubeck/agate), a very simple server for the Gemini hypertext protocol. Available as [services.agate](options.html#opt-services.agate.enable).
|
- [agate](https://github.com/mbrubeck/agate), a very simple server for the Gemini hypertext protocol. Available as [services.agate](options.html#opt-services.agate.enable).
|
||||||
|
@ -377,8 +381,7 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
you should change the package you refer to. If you don't need them update your
|
you should change the package you refer to. If you don't need them update your
|
||||||
commands from `otelcontribcol` to `otelcorecol` and enjoy a 7x smaller binary.
|
commands from `otelcontribcol` to `otelcorecol` and enjoy a 7x smaller binary.
|
||||||
|
|
||||||
- `pkgs.pgadmin` now refers to `pkgs.pgadmin4`.
|
- `pkgs.pgadmin` now refers to `pkgs.pgadmin4`. `pgadmin3` has been removed.
|
||||||
If you still need pgadmin3, use `pkgs.pgadmin3`.
|
|
||||||
|
|
||||||
- `pkgs.noto-fonts-cjk` is now deprecated in favor of `pkgs.noto-fonts-cjk-sans`
|
- `pkgs.noto-fonts-cjk` is now deprecated in favor of `pkgs.noto-fonts-cjk-sans`
|
||||||
and `pkgs.noto-fonts-cjk-serif` because they each have different release
|
and `pkgs.noto-fonts-cjk-serif` because they each have different release
|
||||||
|
@ -448,6 +451,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
See the `vscode` package for a more detailed example.
|
See the `vscode` package for a more detailed example.
|
||||||
|
|
||||||
|
- `pkgs.cosmopolitan` no longer provides the `cosmoc` command. It has been moved to `pkgs.cosmoc`.
|
||||||
|
|
||||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||||
|
|
||||||
## Other Notable Changes {#sec-release-22.05-notable-changes}
|
## Other Notable Changes {#sec-release-22.05-notable-changes}
|
||||||
|
|
|
@ -118,6 +118,7 @@
|
||||||
./misc/version.nix
|
./misc/version.nix
|
||||||
./misc/wordlist.nix
|
./misc/wordlist.nix
|
||||||
./misc/nixops-autoluks.nix
|
./misc/nixops-autoluks.nix
|
||||||
|
./programs/_1password.nix
|
||||||
./programs/_1password-gui.nix
|
./programs/_1password-gui.nix
|
||||||
./programs/adb.nix
|
./programs/adb.nix
|
||||||
./programs/appgate-sdp.nix
|
./programs/appgate-sdp.nix
|
||||||
|
@ -1047,6 +1048,7 @@
|
||||||
./services/web-apps/mediawiki.nix
|
./services/web-apps/mediawiki.nix
|
||||||
./services/web-apps/miniflux.nix
|
./services/web-apps/miniflux.nix
|
||||||
./services/web-apps/moodle.nix
|
./services/web-apps/moodle.nix
|
||||||
|
./services/web-apps/netbox.nix
|
||||||
./services/web-apps/nextcloud.nix
|
./services/web-apps/nextcloud.nix
|
||||||
./services/web-apps/nexus.nix
|
./services/web-apps/nexus.nix
|
||||||
./services/web-apps/node-red.nix
|
./services/web-apps/node-red.nix
|
||||||
|
|
46
nixos/modules/programs/_1password.nix
Normal file
46
nixos/modules/programs/_1password.nix
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.programs._1password;
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
programs._1password = {
|
||||||
|
enable = mkEnableOption "The 1Password CLI tool with biometric unlock and integration with the 1Password GUI.";
|
||||||
|
|
||||||
|
groupId = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
example = literalExpression "5001";
|
||||||
|
description = ''
|
||||||
|
The GroupID to assign to the onepassword-cli group, which is needed for integration with the 1Password GUI. The group ID must be 1000 or greater.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs._1password;
|
||||||
|
defaultText = literalExpression "pkgs._1password";
|
||||||
|
example = literalExpression "pkgs._1password";
|
||||||
|
description = ''
|
||||||
|
The 1Password CLI derivation to use.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
users.groups.onepassword-cli.gid = cfg.groupId;
|
||||||
|
|
||||||
|
security.wrappers = {
|
||||||
|
"op" = {
|
||||||
|
source = "${cfg.package}/bin/op";
|
||||||
|
owner = "root";
|
||||||
|
group = "onepassword-cli";
|
||||||
|
setuid = false;
|
||||||
|
setgid = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -38,6 +38,9 @@ in
|
||||||
environment.etc."zrepl/zrepl.yml".source = configFile;
|
environment.etc."zrepl/zrepl.yml".source = configFile;
|
||||||
|
|
||||||
systemd.packages = [ pkgs.zrepl ];
|
systemd.packages = [ pkgs.zrepl ];
|
||||||
|
|
||||||
|
# Note that pkgs.zrepl copies and adapts the upstream systemd unit, and
|
||||||
|
# the fields defined here only override certain fields from that unit.
|
||||||
systemd.services.zrepl = {
|
systemd.services.zrepl = {
|
||||||
requires = [ "local-fs.target" ];
|
requires = [ "local-fs.target" ];
|
||||||
wantedBy = [ "zfs.target" ];
|
wantedBy = [ "zfs.target" ];
|
||||||
|
|
|
@ -409,14 +409,14 @@ in
|
||||||
to = mkOption {
|
to = mkOption {
|
||||||
type = referenceAttrs;
|
type = referenceAttrs;
|
||||||
example = { type = "github"; owner = "my-org"; repo = "my-nixpkgs"; };
|
example = { type = "github"; owner = "my-org"; repo = "my-nixpkgs"; };
|
||||||
description = "The flake reference <option>from></option> is rewritten to.";
|
description = "The flake reference <option>from</option> is rewritten to.";
|
||||||
};
|
};
|
||||||
flake = mkOption {
|
flake = mkOption {
|
||||||
type = types.nullOr types.attrs;
|
type = types.nullOr types.attrs;
|
||||||
default = null;
|
default = null;
|
||||||
example = literalExpression "nixpkgs";
|
example = literalExpression "nixpkgs";
|
||||||
description = ''
|
description = ''
|
||||||
The flake input <option>from></option> is rewritten to.
|
The flake input <option>from</option> is rewritten to.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
exact = mkOption {
|
exact = mkOption {
|
||||||
|
|
|
@ -25,6 +25,10 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
serviceOpts = {
|
serviceOpts = {
|
||||||
|
after = [
|
||||||
|
"kea-dhcp4-server.service"
|
||||||
|
"kea-dhcp6-server.service"
|
||||||
|
];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
User = "kea";
|
User = "kea";
|
||||||
ExecStart = ''
|
ExecStart = ''
|
||||||
|
|
|
@ -159,7 +159,7 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
caddy.enable = mkEnableOption "Whether to enablle caddy reverse proxy to expose jitsi-meet";
|
caddy.enable = mkEnableOption "Whether to enable caddy reverse proxy to expose jitsi-meet";
|
||||||
|
|
||||||
prosody.enable = mkOption {
|
prosody.enable = mkOption {
|
||||||
type = bool;
|
type = bool;
|
||||||
|
|
265
nixos/modules/services/web-apps/netbox.nix
Normal file
265
nixos/modules/services/web-apps/netbox.nix
Normal file
|
@ -0,0 +1,265 @@
|
||||||
|
{ config, lib, pkgs, buildEnv, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.netbox;
|
||||||
|
staticDir = cfg.dataDir + "/static";
|
||||||
|
configFile = pkgs.writeTextFile {
|
||||||
|
name = "configuration.py";
|
||||||
|
text = ''
|
||||||
|
STATIC_ROOT = '${staticDir}'
|
||||||
|
ALLOWED_HOSTS = ['*']
|
||||||
|
DATABASE = {
|
||||||
|
'NAME': 'netbox',
|
||||||
|
'USER': 'netbox',
|
||||||
|
'HOST': '/run/postgresql',
|
||||||
|
}
|
||||||
|
|
||||||
|
# Redis database settings. Redis is used for caching and for queuing background tasks such as webhook events. A separate
|
||||||
|
# configuration exists for each. Full connection details are required in both sections, and it is strongly recommended
|
||||||
|
# to use two separate database IDs.
|
||||||
|
REDIS = {
|
||||||
|
'tasks': {
|
||||||
|
'URL': 'unix://${config.services.redis.servers.netbox.unixSocket}?db=0',
|
||||||
|
'SSL': False,
|
||||||
|
},
|
||||||
|
'caching': {
|
||||||
|
'URL': 'unix://${config.services.redis.servers.netbox.unixSocket}?db=1',
|
||||||
|
'SSL': False,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
with open("${cfg.secretKeyFile}", "r") as file:
|
||||||
|
SECRET_KEY = file.readline()
|
||||||
|
|
||||||
|
${optionalString cfg.enableLdap "REMOTE_AUTH_BACKEND = 'netbox.authentication.LDAPBackend'"}
|
||||||
|
|
||||||
|
${cfg.extraConfig}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
pkg = (pkgs.netbox.overrideAttrs (old: {
|
||||||
|
installPhase = old.installPhase + ''
|
||||||
|
ln -s ${configFile} $out/opt/netbox/netbox/netbox/configuration.py
|
||||||
|
'' + optionalString cfg.enableLdap ''
|
||||||
|
ln -s ${ldapConfigPath} $out/opt/netbox/netbox/netbox/ldap_config.py
|
||||||
|
'';
|
||||||
|
})).override {
|
||||||
|
plugins = ps: ((cfg.plugins ps)
|
||||||
|
++ optional cfg.enableLdap [ ps.django-auth-ldap ]);
|
||||||
|
};
|
||||||
|
netboxManageScript = with pkgs; (writeScriptBin "netbox-manage" ''
|
||||||
|
#!${stdenv.shell}
|
||||||
|
export PYTHONPATH=${pkg.pythonPath}
|
||||||
|
sudo -u netbox ${pkg}/bin/netbox "$@"
|
||||||
|
'');
|
||||||
|
|
||||||
|
in {
|
||||||
|
options.services.netbox = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Enable Netbox.
|
||||||
|
|
||||||
|
This module requires a reverse proxy that serves <literal>/static</literal> separately.
|
||||||
|
See this <link xlink:href="https://github.com/netbox-community/netbox/blob/develop/contrib/nginx.conf/">example</link> on how to configure this.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
listenAddress = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "[::1]";
|
||||||
|
description = ''
|
||||||
|
Address the server will listen on.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
type = types.port;
|
||||||
|
default = 8001;
|
||||||
|
description = ''
|
||||||
|
Port the server will listen on.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
plugins = mkOption {
|
||||||
|
type = types.functionTo (types.listOf types.package);
|
||||||
|
default = _: [];
|
||||||
|
defaultText = literalExpression ''
|
||||||
|
python3Packages: with python3Packages; [];
|
||||||
|
'';
|
||||||
|
description = ''
|
||||||
|
List of plugin packages to install.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
dataDir = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "/var/lib/netbox";
|
||||||
|
description = ''
|
||||||
|
Storage path of netbox.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
secretKeyFile = mkOption {
|
||||||
|
type = types.path;
|
||||||
|
description = ''
|
||||||
|
Path to a file containing the secret key.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
extraConfig = mkOption {
|
||||||
|
type = types.lines;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
Additional lines of configuration appended to the <literal>configuration.py</literal>.
|
||||||
|
See the <link xlink:href="https://netbox.readthedocs.io/en/stable/configuration/optional-settings/">documentation</link> for more possible options.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
enableLdap = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Enable LDAP-Authentication for Netbox.
|
||||||
|
|
||||||
|
This requires a configuration file being pass through <literal>ldapConfigPath</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
ldapConfigPath = mkOption {
|
||||||
|
type = types.path;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
Path to the Configuration-File for LDAP-Authentification, will be loaded as <literal>ldap_config.py</literal>.
|
||||||
|
See the <link xlink:href="https://netbox.readthedocs.io/en/stable/installation/6-ldap/#configuration">documentation</link> for possible options.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services.redis.servers.netbox.enable = true;
|
||||||
|
|
||||||
|
services.postgresql = {
|
||||||
|
enable = true;
|
||||||
|
ensureDatabases = [ "netbox" ];
|
||||||
|
ensureUsers = [
|
||||||
|
{
|
||||||
|
name = "netbox";
|
||||||
|
ensurePermissions = {
|
||||||
|
"DATABASE netbox" = "ALL PRIVILEGES";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [ netboxManageScript ];
|
||||||
|
|
||||||
|
systemd.targets.netbox = {
|
||||||
|
description = "Target for all NetBox services";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
after = [ "network-online.target" "redis-netbox.service" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services = let
|
||||||
|
defaultServiceConfig = {
|
||||||
|
WorkingDirectory = "${cfg.dataDir}";
|
||||||
|
User = "netbox";
|
||||||
|
Group = "netbox";
|
||||||
|
StateDirectory = "netbox";
|
||||||
|
StateDirectoryMode = "0750";
|
||||||
|
Restart = "on-failure";
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
netbox-migration = {
|
||||||
|
description = "NetBox migrations";
|
||||||
|
wantedBy = [ "netbox.target" ];
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PYTHONPATH = pkg.pythonPath;
|
||||||
|
};
|
||||||
|
|
||||||
|
serviceConfig = defaultServiceConfig // {
|
||||||
|
Type = "oneshot";
|
||||||
|
ExecStart = ''
|
||||||
|
${pkg}/bin/netbox migrate
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
netbox = {
|
||||||
|
description = "NetBox WSGI Service";
|
||||||
|
wantedBy = [ "netbox.target" ];
|
||||||
|
after = [ "netbox-migration.service" ];
|
||||||
|
|
||||||
|
preStart = ''
|
||||||
|
${pkg}/bin/netbox trace_paths --no-input
|
||||||
|
${pkg}/bin/netbox collectstatic --no-input
|
||||||
|
${pkg}/bin/netbox remove_stale_contenttypes --no-input
|
||||||
|
'';
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PYTHONPATH = pkg.pythonPath;
|
||||||
|
};
|
||||||
|
|
||||||
|
serviceConfig = defaultServiceConfig // {
|
||||||
|
ExecStart = ''
|
||||||
|
${pkgs.python3Packages.gunicorn}/bin/gunicorn netbox.wsgi \
|
||||||
|
--bind ${cfg.listenAddress}:${toString cfg.port} \
|
||||||
|
--pythonpath ${pkg}/opt/netbox/netbox
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
netbox-rq = {
|
||||||
|
description = "NetBox Request Queue Worker";
|
||||||
|
wantedBy = [ "netbox.target" ];
|
||||||
|
after = [ "netbox.service" ];
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PYTHONPATH = pkg.pythonPath;
|
||||||
|
};
|
||||||
|
|
||||||
|
serviceConfig = defaultServiceConfig // {
|
||||||
|
ExecStart = ''
|
||||||
|
${pkg}/bin/netbox rqworker high default low
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
netbox-housekeeping = {
|
||||||
|
description = "NetBox housekeeping job";
|
||||||
|
after = [ "netbox.service" ];
|
||||||
|
|
||||||
|
environment = {
|
||||||
|
PYTHONPATH = pkg.pythonPath;
|
||||||
|
};
|
||||||
|
|
||||||
|
serviceConfig = defaultServiceConfig // {
|
||||||
|
Type = "oneshot";
|
||||||
|
ExecStart = ''
|
||||||
|
${pkg}/bin/netbox housekeeping
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.timers.netbox-housekeeping = {
|
||||||
|
description = "Run NetBox housekeeping job";
|
||||||
|
wantedBy = [ "timers.target" ];
|
||||||
|
|
||||||
|
timerConfig = {
|
||||||
|
OnCalendar = "daily";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.netbox = {
|
||||||
|
home = "${cfg.dataDir}";
|
||||||
|
isSystemUser = true;
|
||||||
|
group = "netbox";
|
||||||
|
};
|
||||||
|
users.groups.netbox = {};
|
||||||
|
users.groups."${config.services.redis.servers.netbox.user}".members = [ "netbox" ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -498,6 +498,10 @@ in
|
||||||
programs.seahorse.enable = notExcluded pkgs.gnome.seahorse;
|
programs.seahorse.enable = notExcluded pkgs.gnome.seahorse;
|
||||||
services.gnome.sushi.enable = notExcluded pkgs.gnome.sushi;
|
services.gnome.sushi.enable = notExcluded pkgs.gnome.sushi;
|
||||||
|
|
||||||
|
# VTE shell integration for gnome-console
|
||||||
|
programs.bash.vteIntegration = mkDefault true;
|
||||||
|
programs.zsh.vteIntegration = mkDefault true;
|
||||||
|
|
||||||
# Let nautilus find extensions
|
# Let nautilus find extensions
|
||||||
# TODO: Create nautilus-with-extensions package
|
# TODO: Create nautilus-with-extensions package
|
||||||
environment.sessionVariables.NAUTILUS_EXTENSION_DIR = "${config.system.path}/lib/nautilus/extensions-3.0";
|
environment.sessionVariables.NAUTILUS_EXTENSION_DIR = "${config.system.path}/lib/nautilus/extensions-3.0";
|
||||||
|
|
|
@ -167,10 +167,6 @@ exec 1>&$logOutFd 2>&$logErrFd
|
||||||
exec {logOutFd}>&- {logErrFd}>&-
|
exec {logOutFd}>&- {logErrFd}>&-
|
||||||
|
|
||||||
|
|
||||||
# Start systemd.
|
# Start systemd in a clean environment.
|
||||||
echo "starting systemd..."
|
echo "starting systemd..."
|
||||||
|
exec env - @systemdExecutable@ "$@"
|
||||||
PATH=/run/current-system/systemd/lib/systemd:@fsPackagesPath@ \
|
|
||||||
LOCALE_ARCHIVE=/run/current-system/sw/lib/locale/locale-archive @systemdUnitPathEnvVar@ \
|
|
||||||
TZDIR=/etc/zoneinfo \
|
|
||||||
exec @systemdExecutable@
|
|
||||||
|
|
|
@ -19,11 +19,6 @@ let
|
||||||
pkgs.coreutils
|
pkgs.coreutils
|
||||||
pkgs.util-linux
|
pkgs.util-linux
|
||||||
] ++ lib.optional useHostResolvConf pkgs.openresolv);
|
] ++ lib.optional useHostResolvConf pkgs.openresolv);
|
||||||
fsPackagesPath = lib.makeBinPath config.system.fsPackages;
|
|
||||||
systemdUnitPathEnvVar = lib.optionalString (config.boot.extraSystemdUnitPaths != [])
|
|
||||||
("SYSTEMD_UNIT_PATH="
|
|
||||||
+ builtins.concatStringsSep ":" config.boot.extraSystemdUnitPaths
|
|
||||||
+ ":"); # If SYSTEMD_UNIT_PATH ends with an empty component (":"), the usual unit load path will be appended to the contents of the variable
|
|
||||||
postBootCommands = pkgs.writeText "local-cmds"
|
postBootCommands = pkgs.writeText "local-cmds"
|
||||||
''
|
''
|
||||||
${config.boot.postBootCommands}
|
${config.boot.postBootCommands}
|
||||||
|
@ -48,12 +43,10 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
systemdExecutable = mkOption {
|
systemdExecutable = mkOption {
|
||||||
default = "systemd";
|
default = "/run/current-system/systemd/lib/systemd/systemd";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
description = ''
|
description = ''
|
||||||
The program to execute to start systemd. Typically
|
The program to execute to start systemd.
|
||||||
<literal>systemd</literal>, which will find systemd in the
|
|
||||||
PATH.
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -302,6 +302,16 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.managerEnvironment = mkOption {
|
||||||
|
type = with types; attrsOf (nullOr (oneOf [ str path package ]));
|
||||||
|
default = {};
|
||||||
|
example = { SYSTEMD_LOG_LEVEL = "debug"; };
|
||||||
|
description = ''
|
||||||
|
Environment variables of PID 1. These variables are
|
||||||
|
<emphasis>not</emphasis> passed to started units.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
systemd.enableCgroupAccounting = mkOption {
|
systemd.enableCgroupAccounting = mkOption {
|
||||||
default = true;
|
default = true;
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
|
@ -470,11 +480,13 @@ in
|
||||||
|
|
||||||
enabledUpstreamSystemUnits = filter (n: ! elem n cfg.suppressedSystemUnits) upstreamSystemUnits;
|
enabledUpstreamSystemUnits = filter (n: ! elem n cfg.suppressedSystemUnits) upstreamSystemUnits;
|
||||||
enabledUnits = filterAttrs (n: v: ! elem n cfg.suppressedSystemUnits) cfg.units;
|
enabledUnits = filterAttrs (n: v: ! elem n cfg.suppressedSystemUnits) cfg.units;
|
||||||
|
|
||||||
in ({
|
in ({
|
||||||
"systemd/system".source = generateUnits "system" enabledUnits enabledUpstreamSystemUnits upstreamSystemWants;
|
"systemd/system".source = generateUnits "system" enabledUnits enabledUpstreamSystemUnits upstreamSystemWants;
|
||||||
|
|
||||||
"systemd/system.conf".text = ''
|
"systemd/system.conf".text = ''
|
||||||
[Manager]
|
[Manager]
|
||||||
|
ManagerEnvironment=${lib.concatStringsSep " " (lib.mapAttrsToList (n: v: "${n}=${lib.escapeShellArg v}") cfg.managerEnvironment)}
|
||||||
${optionalString config.systemd.enableCgroupAccounting ''
|
${optionalString config.systemd.enableCgroupAccounting ''
|
||||||
DefaultCPUAccounting=yes
|
DefaultCPUAccounting=yes
|
||||||
DefaultIOAccounting=yes
|
DefaultIOAccounting=yes
|
||||||
|
@ -542,6 +554,17 @@ in
|
||||||
(v: let n = escapeSystemdPath v.where;
|
(v: let n = escapeSystemdPath v.where;
|
||||||
in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
|
in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
|
||||||
|
|
||||||
|
# Environment of PID 1
|
||||||
|
systemd.managerEnvironment = {
|
||||||
|
# Doesn't contain systemd itself - everything works so it seems to use the compiled-in value for its tools
|
||||||
|
PATH = lib.makeBinPath config.system.fsPackages;
|
||||||
|
LOCALE_ARCHIVE = "/run/current-system/sw/lib/locale/locale-archive";
|
||||||
|
TZDIR = "/etc/zoneinfo";
|
||||||
|
# If SYSTEMD_UNIT_PATH ends with an empty component (":"), the usual unit load path will be appended to the contents of the variable
|
||||||
|
SYSTEMD_UNIT_PATH = lib.mkIf (config.boot.extraSystemdUnitPaths != []) "${builtins.concatStringsSep ":" config.boot.extraSystemdUnitPaths}:";
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
system.requiredKernelConfig = map config.lib.kernelConfig.isEnabled
|
system.requiredKernelConfig = map config.lib.kernelConfig.isEnabled
|
||||||
[ "DEVTMPFS" "CGROUPS" "INOTIFY_USER" "SIGNALFD" "TIMERFD" "EPOLL" "NET"
|
[ "DEVTMPFS" "CGROUPS" "INOTIFY_USER" "SIGNALFD" "TIMERFD" "EPOLL" "NET"
|
||||||
"SYSFS" "PROC_FS" "FHANDLE" "CRYPTO_USER_API_HASH" "CRYPTO_HMAC"
|
"SYSFS" "PROC_FS" "FHANDLE" "CRYPTO_USER_API_HASH" "CRYPTO_HMAC"
|
||||||
|
|
|
@ -341,6 +341,7 @@ in
|
||||||
networking.networkd = handleTest ./networking.nix { networkd = true; };
|
networking.networkd = handleTest ./networking.nix { networkd = true; };
|
||||||
networking.scripted = handleTest ./networking.nix { networkd = false; };
|
networking.scripted = handleTest ./networking.nix { networkd = false; };
|
||||||
specialisation = handleTest ./specialisation.nix {};
|
specialisation = handleTest ./specialisation.nix {};
|
||||||
|
netbox = handleTest ./web-apps/netbox.nix {};
|
||||||
# TODO: put in networking.nix after the test becomes more complete
|
# TODO: put in networking.nix after the test becomes more complete
|
||||||
networkingProxy = handleTest ./networking-proxy.nix {};
|
networkingProxy = handleTest ./networking-proxy.nix {};
|
||||||
nextcloud = handleTest ./nextcloud {};
|
nextcloud = handleTest ./nextcloud {};
|
||||||
|
@ -590,5 +591,6 @@ in
|
||||||
zigbee2mqtt = handleTest ./zigbee2mqtt.nix {};
|
zigbee2mqtt = handleTest ./zigbee2mqtt.nix {};
|
||||||
zoneminder = handleTest ./zoneminder.nix {};
|
zoneminder = handleTest ./zoneminder.nix {};
|
||||||
zookeeper = handleTest ./zookeeper.nix {};
|
zookeeper = handleTest ./zookeeper.nix {};
|
||||||
|
zrepl = handleTest ./zrepl.nix {};
|
||||||
zsh-history = handleTest ./zsh-history.nix {};
|
zsh-history = handleTest ./zsh-history.nix {};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,10 @@ import ./make-test-python.nix ({ pkgs, lib, ...} :
|
||||||
|
|
||||||
nodes = {
|
nodes = {
|
||||||
machine = { config, ... }: {
|
machine = { config, ... }: {
|
||||||
|
networking.extraHosts = ''
|
||||||
|
127.0.0.1 all.api.radio-browser.info
|
||||||
|
'';
|
||||||
|
|
||||||
services.murmur = {
|
services.murmur = {
|
||||||
enable = true;
|
enable = true;
|
||||||
registerName = "NixOS tests";
|
registerName = "NixOS tests";
|
||||||
|
|
|
@ -192,5 +192,9 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
||||||
with subtest("systemd per-unit accounting works"):
|
with subtest("systemd per-unit accounting works"):
|
||||||
assert "IP traffic received: 84B" in output_ping
|
assert "IP traffic received: 84B" in output_ping
|
||||||
assert "IP traffic sent: 84B" in output_ping
|
assert "IP traffic sent: 84B" in output_ping
|
||||||
|
|
||||||
|
with subtest("systemd environment is properly set"):
|
||||||
|
machine.systemctl("daemon-reexec") # Rewrites /proc/1/environ
|
||||||
|
machine.succeed("grep -q TZDIR=/etc/zoneinfo /proc/1/environ")
|
||||||
'';
|
'';
|
||||||
})
|
})
|
||||||
|
|
30
nixos/tests/web-apps/netbox.nix
Normal file
30
nixos/tests/web-apps/netbox.nix
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
import ../make-test-python.nix ({ lib, pkgs, ... }: {
|
||||||
|
name = "netbox";
|
||||||
|
|
||||||
|
meta = with lib.maintainers; {
|
||||||
|
maintainers = [ n0emis ];
|
||||||
|
};
|
||||||
|
|
||||||
|
machine = { ... }: {
|
||||||
|
services.netbox = {
|
||||||
|
enable = true;
|
||||||
|
secretKeyFile = pkgs.writeText "secret" ''
|
||||||
|
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
machine.start()
|
||||||
|
machine.wait_for_unit("netbox.target")
|
||||||
|
machine.wait_until_succeeds("journalctl --since -1m --unit netbox --grep Listening")
|
||||||
|
|
||||||
|
with subtest("Home screen loads"):
|
||||||
|
machine.succeed(
|
||||||
|
"curl -sSfL http://[::1]:8001 | grep '<title>Home | NetBox</title>'"
|
||||||
|
)
|
||||||
|
|
||||||
|
with subtest("Staticfiles are generated"):
|
||||||
|
machine.succeed("test -e /var/lib/netbox/static/netbox.js")
|
||||||
|
'';
|
||||||
|
})
|
66
nixos/tests/zrepl.nix
Normal file
66
nixos/tests/zrepl.nix
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
import ./make-test-python.nix (
|
||||||
|
{
|
||||||
|
nodes.host = {config, pkgs, ...}: {
|
||||||
|
config = {
|
||||||
|
# Prerequisites for ZFS and tests.
|
||||||
|
boot.supportedFilesystems = [ "zfs" ];
|
||||||
|
environment.systemPackages = [ pkgs.zrepl ];
|
||||||
|
networking.hostId = "deadbeef";
|
||||||
|
services.zrepl = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
# Enable Prometheus output for status assertions.
|
||||||
|
global.monitoring = [{
|
||||||
|
type = "prometheus";
|
||||||
|
listen = ":9811";
|
||||||
|
}];
|
||||||
|
# Create a periodic snapshot job for an ephemeral zpool.
|
||||||
|
jobs = [{
|
||||||
|
name = "snap_test";
|
||||||
|
type = "snap";
|
||||||
|
|
||||||
|
filesystems."test" = true;
|
||||||
|
snapshotting = {
|
||||||
|
type = "periodic";
|
||||||
|
prefix = "zrepl_";
|
||||||
|
interval = "1s";
|
||||||
|
};
|
||||||
|
|
||||||
|
pruning.keep = [{
|
||||||
|
type = "last_n";
|
||||||
|
count = 8;
|
||||||
|
}];
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
start_all()
|
||||||
|
|
||||||
|
with subtest("Wait for zrepl and network ready"):
|
||||||
|
host.wait_for_unit("network-online.target")
|
||||||
|
host.wait_for_unit("zrepl.service")
|
||||||
|
|
||||||
|
with subtest("Create test zpool"):
|
||||||
|
# ZFS requires 64MiB minimum pool size.
|
||||||
|
host.succeed("fallocate -l 64MiB /root/zpool.img")
|
||||||
|
host.succeed("zpool create test /root/zpool.img")
|
||||||
|
|
||||||
|
with subtest("Check for completed zrepl snapshot"):
|
||||||
|
# zrepl periodic snapshot job creates a snapshot with this prefix.
|
||||||
|
host.wait_until_succeeds("zfs list -t snapshot | grep -q zrepl_")
|
||||||
|
|
||||||
|
with subtest("Verify HTTP monitoring server is configured"):
|
||||||
|
out = host.succeed("curl -f localhost:9811/metrics")
|
||||||
|
|
||||||
|
assert (
|
||||||
|
"zrepl_version_daemon" in out
|
||||||
|
), "zrepl version metric was not found in Prometheus output"
|
||||||
|
|
||||||
|
assert (
|
||||||
|
"zrepl_zfs_snapshot_duration_count{filesystem=\"test\"}" in out
|
||||||
|
), "zrepl snapshot counter for test was not found in Prometheus output"
|
||||||
|
'';
|
||||||
|
})
|
|
@ -1,6 +1,7 @@
|
||||||
{ lib, stdenv, fetchurl, pkg-config, wrapGAppsHook, intltool, libgpod, curl, flac,
|
{ lib, stdenv, fetchurl, pkg-config, wrapGAppsHook, intltool, libgpod, libxml2, curl, flac
|
||||||
gnome, gtk3, gettext, perlPackages, flex, libid3tag, gdl,
|
, gnome, gtk3, gettext, perlPackages, flex, libid3tag, gdl
|
||||||
libvorbis, gdk-pixbuf }:
|
, libvorbis, gdk-pixbuf
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "2.1.5";
|
version = "2.1.5";
|
||||||
|
@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||||
nativeBuildInputs = [ pkg-config wrapGAppsHook intltool ];
|
nativeBuildInputs = [ pkg-config wrapGAppsHook intltool ];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
curl gettext
|
curl gettext
|
||||||
flex libgpod libid3tag flac libvorbis gtk3 gdk-pixbuf
|
flex libgpod libid3tag flac libvorbis libxml2 gtk3 gdk-pixbuf
|
||||||
gdl gnome.adwaita-icon-theme gnome.anjuta
|
gdl gnome.adwaita-icon-theme gnome.anjuta
|
||||||
] ++ (with perlPackages; [ perl XMLParser ]);
|
] ++ (with perlPackages; [ perl XMLParser ]);
|
||||||
|
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
, protobuf
|
, protobuf
|
||||||
, sqlite
|
, sqlite
|
||||||
, taglib
|
, taglib
|
||||||
|
, libgpod
|
||||||
, libpulseaudio
|
, libpulseaudio
|
||||||
, libselinux
|
, libselinux
|
||||||
, libsepol
|
, libsepol
|
||||||
|
@ -63,6 +64,7 @@ mkDerivation rec {
|
||||||
qtbase
|
qtbase
|
||||||
qtx11extras
|
qtx11extras
|
||||||
] ++ lib.optionals stdenv.isLinux [
|
] ++ lib.optionals stdenv.isLinux [
|
||||||
|
libgpod
|
||||||
libpulseaudio
|
libpulseaudio
|
||||||
libselinux
|
libselinux
|
||||||
libsepol
|
libsepol
|
||||||
|
|
|
@ -49,7 +49,7 @@ let
|
||||||
dontAutoPatchelf = true;
|
dontAutoPatchelf = true;
|
||||||
postFixup = (attrs.postFixup or "") + optionalString (stdenv.isLinux) ''
|
postFixup = (attrs.postFixup or "") + optionalString (stdenv.isLinux) ''
|
||||||
(
|
(
|
||||||
cd $out/clion-${version}
|
cd $out/clion
|
||||||
# bundled cmake does not find libc
|
# bundled cmake does not find libc
|
||||||
rm -rf bin/cmake/linux
|
rm -rf bin/cmake/linux
|
||||||
ln -s ${cmake} bin/cmake/linux
|
ln -s ${cmake} bin/cmake/linux
|
||||||
|
|
|
@ -5531,6 +5531,19 @@ final: prev:
|
||||||
meta.homepage = "https://github.com/vim-python/python-syntax/";
|
meta.homepage = "https://github.com/vim-python/python-syntax/";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pywal-nvim = buildVimPluginFrom2Nix {
|
||||||
|
pname = "pywal.nvim";
|
||||||
|
version = "2022-02-20";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "AlphaTechnolog";
|
||||||
|
repo = "pywal.nvim";
|
||||||
|
rev = "bd58195939d31dd0f15a720fba2956e91598cefe";
|
||||||
|
sha256 = "10fs5assp96rvlcxckd8cwnkfwfckjmf0j8cqq91vb2wx8knxc8g";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
meta.homepage = "https://github.com/AlphaTechnolog/pywal.nvim/";
|
||||||
|
};
|
||||||
|
|
||||||
QFEnter = buildVimPluginFrom2Nix {
|
QFEnter = buildVimPluginFrom2Nix {
|
||||||
pname = "QFEnter";
|
pname = "QFEnter";
|
||||||
version = "2020-10-09";
|
version = "2020-10-09";
|
||||||
|
@ -7133,6 +7146,18 @@ final: prev:
|
||||||
meta.homepage = "https://github.com/Shougo/unite.vim/";
|
meta.homepage = "https://github.com/Shougo/unite.vim/";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
urlview-nvim = buildVimPluginFrom2Nix {
|
||||||
|
pname = "urlview.nvim";
|
||||||
|
version = "2022-03-29";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "axieax";
|
||||||
|
repo = "urlview.nvim";
|
||||||
|
rev = "4ca1b22d914ff3187acd5a9486421769928c9d8f";
|
||||||
|
sha256 = "1vy977y7favs76mpk6v3x18ph40y0d20kmm6bssvnlql1nh3ihbd";
|
||||||
|
};
|
||||||
|
meta.homepage = "https://github.com/axieax/urlview.nvim/";
|
||||||
|
};
|
||||||
|
|
||||||
utl-vim = buildVimPluginFrom2Nix {
|
utl-vim = buildVimPluginFrom2Nix {
|
||||||
pname = "utl.vim";
|
pname = "utl.vim";
|
||||||
version = "2010-10-18";
|
version = "2010-10-18";
|
||||||
|
|
|
@ -13,6 +13,7 @@ akinsho/bufferline.nvim
|
||||||
akinsho/toggleterm.nvim
|
akinsho/toggleterm.nvim
|
||||||
aklt/plantuml-syntax
|
aklt/plantuml-syntax
|
||||||
allendang/nvim-expand-expr
|
allendang/nvim-expand-expr
|
||||||
|
AlphaTechnolog/pywal.nvim
|
||||||
altercation/vim-colors-solarized
|
altercation/vim-colors-solarized
|
||||||
alvan/vim-closetag
|
alvan/vim-closetag
|
||||||
alvarosevilla95/luatab.nvim
|
alvarosevilla95/luatab.nvim
|
||||||
|
@ -42,6 +43,7 @@ arthurxavierx/vim-unicoder
|
||||||
artur-shaik/vim-javacomplete2
|
artur-shaik/vim-javacomplete2
|
||||||
autozimu/LanguageClient-neovim
|
autozimu/LanguageClient-neovim
|
||||||
axelf4/vim-strip-trailing-whitespace
|
axelf4/vim-strip-trailing-whitespace
|
||||||
|
axieax/urlview.nvim
|
||||||
ayu-theme/ayu-vim
|
ayu-theme/ayu-vim
|
||||||
b0o/SchemaStore.nvim
|
b0o/SchemaStore.nvim
|
||||||
b3nj5m1n/kommentary
|
b3nj5m1n/kommentary
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
, gdk-pixbuf
|
, gdk-pixbuf
|
||||||
, pango
|
, pango
|
||||||
, gettext
|
, gettext
|
||||||
|
, itstool
|
||||||
}:
|
}:
|
||||||
|
|
||||||
python3.pkgs.buildPythonApplication rec {
|
python3.pkgs.buildPythonApplication rec {
|
||||||
|
@ -38,6 +39,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||||
wrapGAppsHook
|
wrapGAppsHook
|
||||||
glib
|
glib
|
||||||
gettext
|
gettext
|
||||||
|
itstool
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|
|
@ -35,7 +35,7 @@ installSanePath = path: ''
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "sane-config";
|
name = "sane-config";
|
||||||
phases = "installPhase";
|
dontUnpack = true;
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
function symlink () {
|
function symlink () {
|
||||||
|
|
|
@ -42,12 +42,17 @@ stdenv.mkDerivation {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
install -D ${mainProgram} $out/bin/${mainProgram}
|
install -D ${mainProgram} $out/bin/${mainProgram}
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postInstall = "installShellCompletion --cmd ${mainProgram}" + lib.concatMapStrings
|
postInstall = ''
|
||||||
(s: " --${s} <($out/bin/${mainProgram} completion ${s})") [ "bash" "fish" "zsh" ];
|
installShellCompletion --cmd ${mainProgram} \
|
||||||
|
--bash <($out/bin/${mainProgram} completion bash) \
|
||||||
|
--fish <($out/bin/${mainProgram} completion fish) \
|
||||||
|
--zsh <($out/bin/${mainProgram} completion zsh)
|
||||||
|
'';
|
||||||
|
|
||||||
dontStrip = stdenv.isDarwin;
|
dontStrip = stdenv.isDarwin;
|
||||||
|
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "dasel";
|
pname = "dasel";
|
||||||
version = "1.24.0";
|
version = "1.24.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "TomWright";
|
owner = "TomWright";
|
||||||
repo = "dasel";
|
repo = "dasel";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-Em+WAI8G492h7FJTnTHFj5L7M4xBZhW4qC0MMc2JRUU=";
|
sha256 = "sha256-B6MWoGYNjFBUxnSqAXt2DRRjSlmgbqIC7qEoMFGQ+zU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-NP+Is7Dxz4LGzx5vpv8pJOJhodAYHia1JXYfhJD54as=";
|
vendorSha256 = "sha256-NP+Is7Dxz4LGzx5vpv8pJOJhodAYHia1JXYfhJD54as=";
|
||||||
|
|
|
@ -19,9 +19,11 @@
|
||||||
, javaPackages
|
, javaPackages
|
||||||
}:
|
}:
|
||||||
|
|
||||||
javaPackages.mavenfod rec {
|
(javaPackages.mavenfod.override {
|
||||||
|
inherit maven; # use overridden maven version (see dbeaver's entry in all-packages.nix)
|
||||||
|
}) rec {
|
||||||
pname = "dbeaver";
|
pname = "dbeaver";
|
||||||
version = "22.0.1"; # When updating also update fetchedMavenDeps.sha256
|
version = "22.0.1"; # When updating also update mvnSha256
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "dbeaver";
|
owner = "dbeaver";
|
||||||
|
@ -30,36 +32,9 @@ javaPackages.mavenfod rec {
|
||||||
sha256 = "sha256-IG5YWwq3WVzQBvAslQ9Z2Ou6ADzf4n9NkQCtH4Jgkac=";
|
sha256 = "sha256-IG5YWwq3WVzQBvAslQ9Z2Ou6ADzf4n9NkQCtH4Jgkac=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
mvnSha256 = "WAB15d4UvUOkBXT7K/hvAZWOE3V1Lpl/tr+AFNBM4FI=";
|
||||||
mvnSha256 = "7Sm1hAoi5xc4MLONOD8ySLLkpao0qmlMRRva/8zR210=";
|
|
||||||
mvnParameters = "-P desktop,all-platforms";
|
mvnParameters = "-P desktop,all-platforms";
|
||||||
|
|
||||||
fetchedMavenDeps = stdenv.mkDerivation {
|
|
||||||
name = "dbeaver-${version}-maven-deps";
|
|
||||||
inherit src;
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
maven
|
|
||||||
];
|
|
||||||
|
|
||||||
buildPhase = "mvn package -Dmaven.repo.local=$out/.m2 ${mvnParameters}";
|
|
||||||
|
|
||||||
# keep only *.{pom,jar,sha1,nbm} and delete all ephemeral files with lastModified timestamps inside
|
|
||||||
installPhase = ''
|
|
||||||
find $out -type f \
|
|
||||||
-name \*.lastUpdated -or \
|
|
||||||
-name resolver-status.properties -or \
|
|
||||||
-name _remote.repositories \
|
|
||||||
-delete
|
|
||||||
'';
|
|
||||||
|
|
||||||
# don't do any fixup
|
|
||||||
dontFixup = true;
|
|
||||||
outputHashAlgo = "sha256";
|
|
||||||
outputHashMode = "recursive";
|
|
||||||
outputHash = "sha256-WAB15d4UvUOkBXT7K/hvAZWOE3V1Lpl/tr+AFNBM4FI=";
|
|
||||||
};
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
copyDesktopItems
|
copyDesktopItems
|
||||||
makeWrapper
|
makeWrapper
|
||||||
|
|
|
@ -60,6 +60,8 @@ stdenv.mkDerivation rec {
|
||||||
"-Dsvg-backend=${withSVGBackend}"
|
"-Dsvg-backend=${withSVGBackend}"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
CFLAGS = "-Wno-error=comment"; # https://gitlab.gnome.org/GNOME/librsvg/-/issues/856
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Wayland-native application launcher, similar to rofi’s drun mode";
|
description = "Wayland-native application launcher, similar to rofi’s drun mode";
|
||||||
homepage = "https://codeberg.org/dnkl/fuzzel";
|
homepage = "https://codeberg.org/dnkl/fuzzel";
|
||||||
|
|
|
@ -1,27 +1,27 @@
|
||||||
{
|
{
|
||||||
"stable": {
|
"stable": {
|
||||||
"version": "99.0.4844.84",
|
"version": "100.0.4896.60",
|
||||||
"sha256": "05bma8lsm5lad58mlfiv8bg0fw5k5mxh0v6g1ik7xp2bsd71iv10",
|
"sha256": "1p7zggnhsz9gj3zil0nyas4ym5bd94vs0z6mdg7r1l0s0vrsaphf",
|
||||||
"sha256bin64": "0sdnsnp7hnpip91hwbz3hiw2727g0a3ydf55ldqv9bgik3vn1wln",
|
"sha256bin64": "07wavs9r6ilwx5rzyqvydcjskg6sml5b8m6mw7qzykvhs8bnvfh5",
|
||||||
"deps": {
|
"deps": {
|
||||||
"gn": {
|
"gn": {
|
||||||
"version": "2022-01-10",
|
"version": "2022-01-21",
|
||||||
"url": "https://gn.googlesource.com/gn",
|
"url": "https://gn.googlesource.com/gn",
|
||||||
"rev": "80a40b07305373617eba2d5878d353532af77da3",
|
"rev": "0725d7827575b239594fbc8fd5192873a1d62f44",
|
||||||
"sha256": "1103lf38h7412949j6nrk48m2vv2rrxacn42sjg33lg88nyv7skv"
|
"sha256": "1dzdvcn2r5c9giknvasf3y5y4901kav7igivjvrpww66ywsj8fzr"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chromedriver": {
|
"chromedriver": {
|
||||||
"version": "99.0.4844.51",
|
"version": "100.0.4896.20",
|
||||||
"sha256_linux": "1r5wbcfbj9s216jyjasmiscsrsix9ap3pplp12rznrwn4898p51y",
|
"sha256_linux": "1d3g43s5adn1vs7iv5ccp0f376qvnvf67mhid7kxkysnqv55bxdw",
|
||||||
"sha256_darwin": "1nak8p5hdrw94lx73m9c110zrwag4qr6487dhplm3qfrnrkdh8wp",
|
"sha256_darwin": "129vw1ablb6xyr7j30zxkh7n835wi82ksd8c5m11mmdnrmrcdabv",
|
||||||
"sha256_darwin_aarch64": "0hkcx6a8bcjlbmp6z3ld23mi1kpyjn2g7m3ns9qw6ns4x3rn5i3r"
|
"sha256_darwin_aarch64": "0zgnisvdvcc726q22jn1cyfg41zz1af5l3fy3m81jlfhph2ibbra"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"beta": {
|
"beta": {
|
||||||
"version": "100.0.4896.56",
|
"version": "100.0.4896.60",
|
||||||
"sha256": "0vdyddxhmkw9bqwx5j19h69swx9ysiipsmcc1sjl0qv8bn8f790z",
|
"sha256": "1p7zggnhsz9gj3zil0nyas4ym5bd94vs0z6mdg7r1l0s0vrsaphf",
|
||||||
"sha256bin64": "09h4fxsx0q5b0gn258xnmk11qz7ql8flpn4mq5x201abmv29y856",
|
"sha256bin64": "059zrf3mm04iyzmgp594m3m7pw4458vym3wpawmdn94h5zi705i7",
|
||||||
"deps": {
|
"deps": {
|
||||||
"gn": {
|
"gn": {
|
||||||
"version": "2022-01-21",
|
"version": "2022-01-21",
|
||||||
|
|
191
pkgs/applications/networking/browsers/microsoft-edge/browser.nix
Normal file
191
pkgs/applications/networking/browsers/microsoft-edge/browser.nix
Normal file
|
@ -0,0 +1,191 @@
|
||||||
|
{ channel, version, revision, sha256 }:
|
||||||
|
|
||||||
|
{ stdenv
|
||||||
|
, fetchurl
|
||||||
|
, lib
|
||||||
|
|
||||||
|
, binutils-unwrapped
|
||||||
|
, xz
|
||||||
|
, gnutar
|
||||||
|
, file
|
||||||
|
|
||||||
|
, glibc
|
||||||
|
, glib
|
||||||
|
, nss
|
||||||
|
, nspr
|
||||||
|
, atk
|
||||||
|
, at-spi2-atk
|
||||||
|
, xorg
|
||||||
|
, cups
|
||||||
|
, dbus
|
||||||
|
, expat
|
||||||
|
, libdrm
|
||||||
|
, libxkbcommon
|
||||||
|
, gtk3
|
||||||
|
, pango
|
||||||
|
, cairo
|
||||||
|
, gdk-pixbuf
|
||||||
|
, mesa
|
||||||
|
, alsa-lib
|
||||||
|
, at-spi2-core
|
||||||
|
, libuuid
|
||||||
|
, systemd
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
baseName = "microsoft-edge";
|
||||||
|
|
||||||
|
shortName = if channel == "stable"
|
||||||
|
then "msedge"
|
||||||
|
else "msedge-" + channel;
|
||||||
|
|
||||||
|
longName = if channel == "stable"
|
||||||
|
then baseName
|
||||||
|
else baseName + "-" + channel;
|
||||||
|
|
||||||
|
iconSuffix = if channel == "stable"
|
||||||
|
then ""
|
||||||
|
else "_${channel}";
|
||||||
|
|
||||||
|
desktopSuffix = if channel == "stable"
|
||||||
|
then ""
|
||||||
|
else "-${channel}";
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name="${baseName}-${channel}-${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://packages.microsoft.com/repos/edge/pool/main/m/${baseName}-${channel}/${baseName}-${channel}_${version}-${revision}_amd64.deb";
|
||||||
|
inherit sha256;
|
||||||
|
};
|
||||||
|
|
||||||
|
unpackCmd = "${binutils-unwrapped}/bin/ar p $src data.tar.xz | ${xz}/bin/xz -dc | ${gnutar}/bin/tar -xf -";
|
||||||
|
sourceRoot = ".";
|
||||||
|
|
||||||
|
dontPatch = true;
|
||||||
|
dontConfigure = true;
|
||||||
|
dontPatchELF = true;
|
||||||
|
|
||||||
|
buildPhase = let
|
||||||
|
libPath = {
|
||||||
|
msedge = lib.makeLibraryPath [
|
||||||
|
glibc glib nss nspr atk at-spi2-atk xorg.libX11
|
||||||
|
xorg.libxcb cups.lib dbus.lib expat libdrm
|
||||||
|
xorg.libXcomposite xorg.libXdamage xorg.libXext
|
||||||
|
xorg.libXfixes xorg.libXrandr libxkbcommon
|
||||||
|
gtk3 pango cairo gdk-pixbuf mesa
|
||||||
|
alsa-lib at-spi2-core xorg.libxshmfence systemd
|
||||||
|
];
|
||||||
|
naclHelper = lib.makeLibraryPath [
|
||||||
|
glib nspr atk libdrm xorg.libxcb mesa xorg.libX11
|
||||||
|
xorg.libXext dbus.lib libxkbcommon
|
||||||
|
];
|
||||||
|
libwidevinecdm = lib.makeLibraryPath [
|
||||||
|
glib nss nspr
|
||||||
|
];
|
||||||
|
libGLESv2 = lib.makeLibraryPath [
|
||||||
|
xorg.libX11 xorg.libXext xorg.libxcb
|
||||||
|
];
|
||||||
|
libsmartscreen = lib.makeLibraryPath [
|
||||||
|
libuuid stdenv.cc.cc.lib
|
||||||
|
];
|
||||||
|
libsmartscreenn = lib.makeLibraryPath [
|
||||||
|
libuuid
|
||||||
|
];
|
||||||
|
liboneauth = lib.makeLibraryPath [
|
||||||
|
libuuid xorg.libX11
|
||||||
|
];
|
||||||
|
};
|
||||||
|
in ''
|
||||||
|
patchelf \
|
||||||
|
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
--set-rpath "${libPath.msedge}" \
|
||||||
|
opt/microsoft/${shortName}/msedge
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
opt/microsoft/${shortName}/msedge-sandbox
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
opt/microsoft/${shortName}/msedge_crashpad_handler
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
--set-rpath "${libPath.naclHelper}" \
|
||||||
|
opt/microsoft/${shortName}/nacl_helper
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--set-rpath "${libPath.libwidevinecdm}" \
|
||||||
|
opt/microsoft/${shortName}/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--set-rpath "${libPath.libGLESv2}" \
|
||||||
|
opt/microsoft/${shortName}/libGLESv2.so
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--set-rpath "${libPath.libsmartscreen}" \
|
||||||
|
opt/microsoft/${shortName}/libsmartscreen.so
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--set-rpath "${libPath.libsmartscreenn}" \
|
||||||
|
opt/microsoft/${shortName}/libsmartscreenn.so
|
||||||
|
|
||||||
|
patchelf \
|
||||||
|
--set-rpath "${libPath.liboneauth}" \
|
||||||
|
opt/microsoft/${shortName}/liboneauth.so
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp -R opt usr/bin usr/share $out
|
||||||
|
|
||||||
|
${if channel == "stable"
|
||||||
|
then ""
|
||||||
|
else "ln -sf $out/opt/microsoft/${shortName}/${baseName}-${channel} $out/opt/microsoft/${shortName}/${baseName}"}
|
||||||
|
|
||||||
|
ln -sf $out/opt/microsoft/${shortName}/${longName} $out/bin/${longName}
|
||||||
|
|
||||||
|
rm -rf $out/share/doc
|
||||||
|
rm -rf $out/opt/microsoft/${shortName}/cron
|
||||||
|
|
||||||
|
for icon in '16' '24' '32' '48' '64' '128' '256'
|
||||||
|
do
|
||||||
|
${ "icon_source=$out/opt/microsoft/${shortName}/product_logo_\${icon}${iconSuffix}.png" }
|
||||||
|
${ "icon_target=$out/share/icons/hicolor/\${icon}x\${icon}/apps" }
|
||||||
|
mkdir -p $icon_target
|
||||||
|
cp $icon_source $icon_target/microsoft-edge${desktopSuffix}.png
|
||||||
|
done
|
||||||
|
|
||||||
|
substituteInPlace $out/share/applications/${longName}.desktop \
|
||||||
|
--replace /usr/bin/${baseName}-${channel} $out/bin/${longName}
|
||||||
|
|
||||||
|
substituteInPlace $out/share/gnome-control-center/default-apps/${longName}.xml \
|
||||||
|
--replace /opt/microsoft/${shortName} $out/opt/microsoft/${shortName}
|
||||||
|
|
||||||
|
substituteInPlace $out/share/menu/${longName}.menu \
|
||||||
|
--replace /opt/microsoft/${shortName} $out/opt/microsoft/${shortName}
|
||||||
|
|
||||||
|
substituteInPlace $out/opt/microsoft/${shortName}/xdg-mime \
|
||||||
|
--replace "''${XDG_DATA_DIRS:-/usr/local/share:/usr/share}" "''${XDG_DATA_DIRS:-/run/current-system/sw/share}" \
|
||||||
|
--replace "xdg_system_dirs=/usr/local/share/:/usr/share/" "xdg_system_dirs=/run/current-system/sw/share/" \
|
||||||
|
--replace /usr/bin/file ${file}/bin/file
|
||||||
|
|
||||||
|
substituteInPlace $out/opt/microsoft/${shortName}/default-app-block \
|
||||||
|
--replace /opt/microsoft/${shortName} $out/opt/microsoft/${shortName}
|
||||||
|
|
||||||
|
substituteInPlace $out/opt/microsoft/${shortName}/xdg-settings \
|
||||||
|
--replace "''${XDG_DATA_DIRS:-/usr/local/share:/usr/share}" "''${XDG_DATA_DIRS:-/run/current-system/sw/share}" \
|
||||||
|
--replace "''${XDG_CONFIG_DIRS:-/etc/xdg}" "''${XDG_CONFIG_DIRS:-/run/current-system/sw/etc/xdg}"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://www.microsoft.com/en-us/edge";
|
||||||
|
description = "The web browser from Microsoft";
|
||||||
|
license = licenses.unfree;
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
maintainers = with maintainers; [ zanculmarktum kuwii ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
beta = import ./browser.nix {
|
||||||
|
channel = "beta";
|
||||||
|
version = "99.0.1150.16";
|
||||||
|
revision = "1";
|
||||||
|
sha256 = "sha256:0qsgs889d6qwxz9qf42psmjqfhmrqgp07srq5r38npl5pncr137h";
|
||||||
|
};
|
||||||
|
dev = import ./browser.nix {
|
||||||
|
channel = "dev";
|
||||||
|
version = "100.0.1163.1";
|
||||||
|
revision = "1";
|
||||||
|
sha256 = "sha256:153faqxyw5f5b6cqnvd71dl7941znkzci8dwbcgaxway0b6882jq";
|
||||||
|
};
|
||||||
|
stable = import ./browser.nix {
|
||||||
|
channel = "stable";
|
||||||
|
version = "98.0.1108.56";
|
||||||
|
revision = "1";
|
||||||
|
sha256 = "sha256:03jbj2s2fs60fzfgsmyb284q7nckji87qgb86mvl5g0hbl19aza7";
|
||||||
|
};
|
||||||
|
}
|
50
pkgs/applications/networking/browsers/microsoft-edge/update.sh
Executable file
50
pkgs/applications/networking/browsers/microsoft-edge/update.sh
Executable file
|
@ -0,0 +1,50 @@
|
||||||
|
#! /usr/bin/env nix-shell
|
||||||
|
#! nix-shell -i bash -p curl gzip
|
||||||
|
|
||||||
|
# To update: ./update.sh > default.nix
|
||||||
|
|
||||||
|
index_file=$(curl -sL https://packages.microsoft.com/repos/edge/dists/stable/main/binary-amd64/Packages.gz | gzip -dc)
|
||||||
|
|
||||||
|
echo "{"
|
||||||
|
|
||||||
|
packages=()
|
||||||
|
echo "$index_file" | while read -r line; do
|
||||||
|
if [[ "$line" =~ ^Package:[[:space:]]*(.*) ]]; then
|
||||||
|
Package="${BASH_REMATCH[1]}"
|
||||||
|
fi
|
||||||
|
if [[ "$line" =~ ^Version:[[:space:]]*(.*)-([a-zA-Z0-9+.~]*) ]]; then
|
||||||
|
Version="${BASH_REMATCH[1]}"
|
||||||
|
Revision="${BASH_REMATCH[2]}"
|
||||||
|
fi
|
||||||
|
if [[ "$line" =~ ^SHA256:[[:space:]]*(.*) ]]; then
|
||||||
|
SHA256="${BASH_REMATCH[1]}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [[ "$line" ]]; then
|
||||||
|
found=0
|
||||||
|
for i in "${packages[@]}"; do
|
||||||
|
if [[ "$i" == "$Package" ]]; then
|
||||||
|
found=1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if (( ! $found )); then
|
||||||
|
channel="${Package##*-}"
|
||||||
|
name="${Package%-${channel}}"
|
||||||
|
cat <<EOF
|
||||||
|
${channel} = import ./browser.nix {
|
||||||
|
channel = "${channel}";
|
||||||
|
version = "${Version}";
|
||||||
|
revision = "${Revision}";
|
||||||
|
sha256 = "sha256:$(nix-hash --type sha256 --to-base32 ${SHA256})";
|
||||||
|
};
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
|
packages+=($Package)
|
||||||
|
Package=""
|
||||||
|
Version=""
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "}"
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "argo-rollouts";
|
pname = "argo-rollouts";
|
||||||
version = "1.1.1";
|
version = "1.2.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "argoproj";
|
owner = "argoproj";
|
||||||
repo = "argo-rollouts";
|
repo = "argo-rollouts";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0qb1wbv3razwhqsv972ywfazaq73y83iw6f6qdjcbwwfwsybig21";
|
sha256 = "sha256-RgjoRvLsd+WHTpFy1WbJtrVaMnRp6/7A921+abCMGu0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "00ic1nn3wgg495x2170ik1d1cha20b4w89j9jclq8p0b3nndv0c0";
|
vendorSha256 = "sha256-URuIeF1ejKdMGxziJbujLctYheiIr/Jfo+gTzppZG9E=";
|
||||||
|
|
||||||
# Disable tests since some test fail because of missing test data
|
# Disable tests since some test fail because of missing test data
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "arkade";
|
pname = "arkade";
|
||||||
version = "0.8.14";
|
version = "0.8.16";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "alexellis";
|
owner = "alexellis";
|
||||||
repo = "arkade";
|
repo = "arkade";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-XH7JtLv0J6bznZZ/L8wg5KB53OPe3KLiYujBlxP71pg=";
|
sha256 = "sha256-NiUv7yl1nA7a826FHDF+1MhYscXkQjUpxZo2ZWrL+VQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
CGO_ENABLED = 0;
|
CGO_ENABLED = 0;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{ lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }:
|
{ lib, buildGoModule, fetchFromGitHub, fetchzip, installShellFiles }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "0.28.3";
|
version = "0.28.4";
|
||||||
sha256 = "1agzj8fgv6jp1i15asjvhnsxw4fj7i6g00ajjl4ihd9p166r83qy";
|
sha256 = "1b98hna3qhg7gzs5rqpkrxdvas7zjzavzmi9rzn9936rw88lpgx6";
|
||||||
manifestsSha256 = "036d1y5dkb9mir9iy76zwdydlqxpbhz7j25fy1faznmicm2qxiqi";
|
manifestsSha256 = "0k8hpkcnxw2w1pvdkvvmmqzrmsrrbij5f734iwh4n9fd326bqgwc";
|
||||||
|
|
||||||
manifests = fetchzip {
|
manifests = fetchzip {
|
||||||
url =
|
url =
|
||||||
|
@ -23,7 +23,7 @@ in buildGoModule rec {
|
||||||
inherit sha256;
|
inherit sha256;
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-8TIeVcPW55vJn49y2xLfOOrefmqNAhDMmTWS/c8HuA8=";
|
vendorSha256 = "sha256-IL9RjmMQahFZ04FXKxH6L2PHsOM1MJnqCJorRdr49FY=";
|
||||||
|
|
||||||
postUnpack = ''
|
postUnpack = ''
|
||||||
cp -r ${manifests} source/cmd/flux/manifests
|
cp -r ${manifests} source/cmd/flux/manifests
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"name": "element-desktop",
|
"name": "element-desktop",
|
||||||
"productName": "Element",
|
"productName": "Element",
|
||||||
"main": "lib/electron-main.js",
|
"main": "lib/electron-main.js",
|
||||||
"version": "1.10.7",
|
"version": "1.10.8",
|
||||||
"description": "A feature-rich client for Matrix.org",
|
"description": "A feature-rich client for Matrix.org",
|
||||||
"author": "Element",
|
"author": "Element",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
@ -44,7 +44,7 @@
|
||||||
"counterpart": "^0.18.6",
|
"counterpart": "^0.18.6",
|
||||||
"electron-store": "^6.0.1",
|
"electron-store": "^6.0.1",
|
||||||
"electron-window-state": "^5.0.3",
|
"electron-window-state": "^5.0.3",
|
||||||
"minimist": "^1.2.3",
|
"minimist": "^1.2.6",
|
||||||
"png-to-ico": "^2.1.1",
|
"png-to-ico": "^2.1.1",
|
||||||
"request": "^2.88.2"
|
"request": "^2.88.2"
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, nodejs-14_x, python3, callPackage
|
{ lib, stdenv, fetchFromGitHub, nodejs-14_x, python3, callPackage, removeReferencesTo
|
||||||
, fixup_yarn_lock, yarn, pkg-config, libsecret, xcbuild, Security, AppKit, fetchYarnDeps }:
|
, fixup_yarn_lock, yarn, pkg-config, libsecret, xcbuild, Security, AppKit, fetchYarnDeps }:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -51,6 +51,9 @@ in stdenv.mkDerivation rec {
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
cp -r ./!(build) $out
|
cp -r ./!(build) $out
|
||||||
install -D -t $out/build/Release build/Release/keytar.node
|
install -D -t $out/build/Release build/Release/keytar.node
|
||||||
|
${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc.cc} $out/build/Release/keytar.node
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
disallowedReferences = [ stdenv.cc.cc ];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"version": "1.10.7",
|
"version": "1.10.8",
|
||||||
"desktopSrcHash": "HkGny9t8dNzVGyyqgr4tABbFZgWV4xqGZt9xH4ejkew=",
|
"desktopSrcHash": "S9MQIn773BzCH4dsTkD1DpIThDzoIGr4Heaie2Qs0jY=",
|
||||||
"desktopYarnHash": "038rqg26dn8chzscck5mlhnw2viy6gr8pjb7zrcmi7ipx9h038a0",
|
"desktopYarnHash": "1imx43qbpj08l6d0fji31kcxqshcpr0ch8dzfbbgxyjvblq2p8ln",
|
||||||
"webHash": "0gim79a1zpfc56ca5fndp2whmlv9jz1s32z666i268xppn4z53k1"
|
"webHash": "02i6l3armzr19kki3hgshhzkdpb3001nilh4h10hr3xw5z711ppr"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ lib, stdenv, rustPlatform, fetchFromGitHub, callPackage, sqlcipher, nodejs-14_x, python3, yarn, fixup_yarn_lock, CoreServices, fetchYarnDeps }:
|
{ lib, stdenv, rustPlatform, fetchFromGitHub, callPackage, sqlcipher, nodejs-14_x, python3, yarn, fixup_yarn_lock, CoreServices, fetchYarnDeps, removeReferencesTo }:
|
||||||
|
|
||||||
let
|
let
|
||||||
pinData = lib.importJSON ./pin.json;
|
pinData = lib.importJSON ./pin.json;
|
||||||
|
@ -48,8 +48,11 @@ in rustPlatform.buildRustPackage rec {
|
||||||
rm -rf native/!(index.node)
|
rm -rf native/!(index.node)
|
||||||
rm -rf node_modules $HOME
|
rm -rf node_modules $HOME
|
||||||
cp -r . $out
|
cp -r . $out
|
||||||
|
${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc.cc} $out/native/index.node
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
disallowedReferences = [ stdenv.cc.cc ];
|
||||||
|
|
||||||
cargoSha256 = pinData.cargoHash;
|
cargoSha256 = pinData.cargoHash;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, fetchpatch
|
|
||||||
, autoconf-archive
|
, autoconf-archive
|
||||||
, autoreconfHook
|
, autoreconfHook
|
||||||
, cmocka
|
, cmocka
|
||||||
|
@ -10,7 +9,7 @@
|
||||||
, expect
|
, expect
|
||||||
, glib
|
, glib
|
||||||
, glibcLocales
|
, glibcLocales
|
||||||
, libmesode
|
, libstrophe
|
||||||
, libmicrohttpd
|
, libmicrohttpd
|
||||||
, libotr
|
, libotr
|
||||||
, libuuid
|
, libuuid
|
||||||
|
@ -36,34 +35,17 @@ assert omemoSupport -> libsignal-protocol-c != null && libgcrypt != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "profanity";
|
pname = "profanity";
|
||||||
version = "0.11.1";
|
version = "0.12.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "profanity-im";
|
owner = "profanity-im";
|
||||||
repo = "profanity";
|
repo = "profanity";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-8WGHOy0fSW8o7vMCYZqqpvDsn81JZefM6wGfjQ5iKbU=";
|
hash = "sha256-kmixWp9Q2tMVp+tk5kbTdBfgRNghKk3+48L582hqlm8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
./patches/packages-osx.patch
|
./patches/packages-osx.patch
|
||||||
|
|
||||||
# pullupstream fixes for ncurses-6.3
|
|
||||||
(fetchpatch {
|
|
||||||
name = "ncurses-6.3-p1.patch";
|
|
||||||
url = "https://github.com/profanity-im/profanity/commit/e5b6258c997d4faf36e2ffb8a47b386c5629b4eb.patch";
|
|
||||||
sha256 = "sha256-4rwpvsgfIQ60GcLS0O7Hyn7ZidREjYT+dVND54z0zrw=";
|
|
||||||
})
|
|
||||||
(fetchpatch {
|
|
||||||
name = "ncurses-6.3-p2.patch";
|
|
||||||
url = "https://github.com/profanity-im/profanity/commit/fd9ccec8dc604902bbb1d444dba4223ccee0a092.patch";
|
|
||||||
sha256 = "sha256-4gZaXoDNulBIR+e6y/9bJKXVactCHWS8H8lPJaJwVwE=";
|
|
||||||
})
|
|
||||||
(fetchpatch {
|
|
||||||
name = "ncurses-6.3-p3.patch";
|
|
||||||
url = "https://github.com/profanity-im/profanity/commit/242696f09a49c8446ba6aef8bdad65fb58a77715.patch";
|
|
||||||
sha256 = "sha256-BOYHkae9aIA7HaVM23Yu25TTK9e3SuV+u0FEi7Sn62I=";
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -81,7 +63,7 @@ stdenv.mkDerivation rec {
|
||||||
expat
|
expat
|
||||||
expect
|
expect
|
||||||
glib
|
glib
|
||||||
libmesode
|
libstrophe
|
||||||
libmicrohttpd
|
libmicrohttpd
|
||||||
libotr
|
libotr
|
||||||
libuuid
|
libuuid
|
||||||
|
|
34
pkgs/applications/networking/sync/wdt/default.nix
Normal file
34
pkgs/applications/networking/sync/wdt/default.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{ stdenv, lib, fetchFromGitHub, cmake, folly, boost, gflags, glog, openssl, double-conversion, fmt }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "wdt";
|
||||||
|
version = "unstable-2022-03-24";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "facebook";
|
||||||
|
repo = "wdt";
|
||||||
|
rev = "43319e59d0c77092468367cdadab37d12d7a2383";
|
||||||
|
sha256 = "sha256-MajYK2eTUbWhEql0iTlgW5yLg9xAGZQk+Dx4fNxFFqw=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
buildInputs = [ folly boost gflags glog openssl double-conversion fmt ];
|
||||||
|
|
||||||
|
# source is expected to be named wdt
|
||||||
|
# https://github.com/facebook/wdt/blob/43319e59d0c77092468367cdadab37d12d7a2383/CMakeLists.txt#L238
|
||||||
|
postUnpack = ''
|
||||||
|
ln -s $sourceRoot wdt
|
||||||
|
'';
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DWDT_USE_SYSTEM_FOLLY=ON"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Warp speed Data Transfer";
|
||||||
|
homepage = "https://github.com/facebook/wdt";
|
||||||
|
license = licenses.bsd3;
|
||||||
|
maintainers = with maintainers; [ nickcao ];
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "termius";
|
pname = "termius";
|
||||||
version = "7.36.1";
|
version = "7.37.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
# find the latest version with
|
# find the latest version with
|
||||||
|
@ -22,8 +22,8 @@ stdenv.mkDerivation rec {
|
||||||
# curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-app | jq '.download_url' -r
|
# curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-app | jq '.download_url' -r
|
||||||
# and the sha512 with
|
# and the sha512 with
|
||||||
# curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-app | jq '.download_sha512' -r
|
# curl -H 'X-Ubuntu-Series: 16' https://api.snapcraft.io/api/v1/snaps/details/termius-app | jq '.download_sha512' -r
|
||||||
url = "https://api.snapcraft.io/api/v1/snaps/download/WkTBXwoX81rBe3s3OTt3EiiLKBx2QhuS_107.snap";
|
url = "https://api.snapcraft.io/api/v1/snaps/download/WkTBXwoX81rBe3s3OTt3EiiLKBx2QhuS_108.snap";
|
||||||
sha512 = "ef8514bdd0e6761a9bc7bf6b0b72d95c661905798c1507af932bd38a1e0c96713f71140b0d91454c3da5f3b97a0c8143b32918294eea2e46a7dca8faabda57e6";
|
sha512 = "05c4a0baeee8c1ff9547017288d099a9ef7b3049647ef0318ca4b1112df26f9f3a844bbae5f9ada59adaf07838987e2a685aee21ea494945202009236fe5f6bc";
|
||||||
};
|
};
|
||||||
|
|
||||||
desktopItem = makeDesktopItem {
|
desktopItem = makeDesktopItem {
|
||||||
|
|
|
@ -1,17 +1,13 @@
|
||||||
{lib, stdenvNoCC, haskellPackages, fetchurl, writers}:
|
{lib, stdenvNoCC, haskellPackages, fetchurl, writers}:
|
||||||
|
|
||||||
let
|
|
||||||
hledger-lib = haskellPackages.hledger-lib_1_24_1;
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "hledger-check-fancyassertions";
|
pname = "hledger-check-fancyassertions";
|
||||||
inherit (hledger-lib) version;
|
inherit (haskellPackages.hledger-lib) version;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
name = "hledger-check-fancyassertion-${version}.hs";
|
name = "hledger-check-fancyassertion-${version}.hs";
|
||||||
url = "https://raw.githubusercontent.com/simonmichael/hledger/hledger-lib-${version}/bin/hledger-check-fancyassertions.hs";
|
url = "https://raw.githubusercontent.com/simonmichael/hledger/hledger-lib-${version}/bin/hledger-check-fancyassertions.hs";
|
||||||
sha256 = "0naggvivc6szsc8haa52a6lm079ikz5qfva0ljnqx0f1zlkxv984";
|
sha256 = "1xy3ssxnwybq40nlffz95w7m9xbzf8ysb13svg0i8g5sfgrw11vk";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
|
@ -20,13 +16,12 @@ stdenvNoCC.mkDerivation rec {
|
||||||
executable = writers.writeHaskell
|
executable = writers.writeHaskell
|
||||||
"hledger-check-fancyassertions"
|
"hledger-check-fancyassertions"
|
||||||
{
|
{
|
||||||
libraries = [
|
libraries = with haskellPackages; [
|
||||||
hledger-lib
|
hledger-lib
|
||||||
] ++ (with haskellPackages; [
|
|
||||||
base base-compat base-compat-batteries filepath
|
base base-compat base-compat-batteries filepath
|
||||||
megaparsec microlens optparse-applicative string-qq text time
|
megaparsec microlens optparse-applicative string-qq text time
|
||||||
transformers
|
transformers
|
||||||
]);
|
];
|
||||||
inherit (haskellPackages) ghc;
|
inherit (haskellPackages) ghc;
|
||||||
}
|
}
|
||||||
src;
|
src;
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "morgen";
|
pname = "morgen";
|
||||||
version = "2.4.4";
|
version = "2.5.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.todesktop.com/210203cqcj00tw1/morgen-${version}.deb";
|
url = "https://download.todesktop.com/210203cqcj00tw1/morgen-${version}.deb";
|
||||||
sha256 = "sha256-5/85ro206o3SsvAvcZeDD2Dmo2jU4zXmtI3X4WdQaRI=";
|
sha256 = "sha256-6hBhfJ18ROCfmqoxrJZ5TiYCFb1xZKsJeobXFy5yfQM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "qownnotes";
|
pname = "qownnotes";
|
||||||
version = "22.3.1";
|
version = "22.3.4";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
|
url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
|
||||||
# Fetch the checksum of current version with curl:
|
# Fetch the checksum of current version with curl:
|
||||||
# curl https://download.tuxfamily.org/qownnotes/src/qownnotes-<version>.tar.xz.sha256
|
# curl https://download.tuxfamily.org/qownnotes/src/qownnotes-<version>.tar.xz.sha256
|
||||||
sha256 = "4d75684751a10f24d20d993b30748c7a09bd8bdfd4e1d4d5703746954a0f6bb2";
|
sha256 = "bec1ee9735821a7c4556c00790e3acfef06f21490ec8b7d99d9e002c9c0a1207";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ qmake qttools ];
|
nativeBuildInputs = [ qmake qttools ];
|
||||||
|
|
|
@ -10,11 +10,11 @@
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "gprojector";
|
pname = "gprojector";
|
||||||
version = "3.0.2";
|
version = "3.0.3";
|
||||||
|
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://www.giss.nasa.gov/tools/gprojector/download/G.ProjectorJ-${version}.tgz";
|
url = "https://www.giss.nasa.gov/tools/gprojector/download/G.ProjectorJ-${version}.tgz";
|
||||||
sha256 = "sha256-IvGZOYt2d8aWtlAJJzVrwkqOOhaUHUmEDlMeD/0NdwU=";
|
sha256 = "sha256-60UT6z5aQ3Tk4EujEUp4ntB5GakFVhJzk5eytoIwf78=";
|
||||||
};
|
};
|
||||||
|
|
||||||
desktopItems = [ (makeDesktopItem {
|
desktopItems = [ (makeDesktopItem {
|
||||||
|
|
|
@ -2,17 +2,17 @@
|
||||||
, libiconv, Security }:
|
, libiconv, Security }:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
version = "0.6.2";
|
version = "0.6.3";
|
||||||
pname = "rink";
|
pname = "rink";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tiffany352";
|
owner = "tiffany352";
|
||||||
repo = "rink-rs";
|
repo = "rink-rs";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-l2Rj15zaJm94EHwvOssfvYQNOoWj45Nq9M85n+A0vo4=";
|
sha256 = "sha256-AhC3c6CpV0tlD6d/hFWt7hGj2UsXsOCeujkRSDlpvCM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-GhuvwVkDRFjC6BghaNMFZZG9hResTN1u0AuvIXlFmig=";
|
cargoSha256 = "sha256-Xo5iYwL4Db+GWMl5UXbPmj0Y0PJYR4Q0aUGnYCd+NB8=";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
buildInputs = [ ncurses ]
|
buildInputs = [ ncurses ]
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ lib
|
{ lib
|
||||||
, python3
|
, python3
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, fetchpatch
|
||||||
, enableGoogle ? false
|
, enableGoogle ? false
|
||||||
, enableAWS ? false
|
, enableAWS ? false
|
||||||
, enableAzure ? false
|
, enableAzure ? false
|
||||||
|
@ -9,16 +10,38 @@
|
||||||
|
|
||||||
python3.pkgs.buildPythonApplication rec {
|
python3.pkgs.buildPythonApplication rec {
|
||||||
pname = "dvc";
|
pname = "dvc";
|
||||||
version = "2.9.3";
|
version = "2.9.5";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "iterative";
|
owner = "iterative";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-nRlgo7Wjs7RgTUxoMYQh5YEsqiJtdWH2ex79rhXagAQ=";
|
hash = "sha256-MviiA0ja1IaxMPlqu2dhIGBcdEXiEvBYnK9731dihMg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# make the patch apply
|
||||||
|
prePatch = ''
|
||||||
|
substituteInPlace setup.cfg \
|
||||||
|
--replace "scmrepo==0.0.7" "scmrepo==0.0.10"
|
||||||
|
'';
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
./dvc-daemon.patch
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/iterative/dvc/commit/ab54b5bdfcef3576b455a17670b8df27beb504ce.patch";
|
||||||
|
sha256 = "sha256-wzMK6Br7/+d3EEGpfPuQ6Trj8IPfehdUvOvX3HZlS+o=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace setup.cfg \
|
||||||
|
--replace "grandalf==0.6" "grandalf>=0.6" \
|
||||||
|
--replace "scmrepo==0.0.13" "scmrepo"
|
||||||
|
substituteInPlace dvc/daemon.py \
|
||||||
|
--subst-var-by dvc "$out/bin/dcv"
|
||||||
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = with python3.pkgs; [
|
nativeBuildInputs = with python3.pkgs; [
|
||||||
setuptools-scm
|
setuptools-scm
|
||||||
setuptools-scm-git-archive
|
setuptools-scm-git-archive
|
||||||
|
@ -73,15 +96,6 @@ python3.pkgs.buildPythonApplication rec {
|
||||||
importlib-resources
|
importlib-resources
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [ ./dvc-daemon.patch ];
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
substituteInPlace setup.cfg \
|
|
||||||
--replace "grandalf==0.6" "grandalf>=0.6"
|
|
||||||
substituteInPlace dvc/daemon.py \
|
|
||||||
--subst-var-by dvc "$out/bin/dcv"
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Tests require access to real cloud services
|
# Tests require access to real cloud services
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ index 9854a0e1..fefdd613 100644
|
||||||
- file_path = os.path.abspath(inspect.stack()[0][1])
|
- file_path = os.path.abspath(inspect.stack()[0][1])
|
||||||
- env["PYTHONPATH"] = os.path.dirname(os.path.dirname(file_path))
|
- env["PYTHONPATH"] = os.path.dirname(os.path.dirname(file_path))
|
||||||
+ cmd = [ "@dvc@" , "daemon", "-q"] + args
|
+ cmd = [ "@dvc@" , "daemon", "-q"] + args
|
||||||
+ env = None
|
+ env = os.environ.copy()
|
||||||
env[DVC_DAEMON] = "1"
|
env[DVC_DAEMON] = "1"
|
||||||
|
|
||||||
_spawn(cmd, env)
|
_spawn(cmd, env)
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "gh";
|
pname = "gh";
|
||||||
version = "2.6.0";
|
version = "2.7.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cli";
|
owner = "cli";
|
||||||
repo = "cli";
|
repo = "cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-NvVm/deO4LSIl5TSziqsrGt9atCXjt4UZ/VJfmX3i4c=";
|
sha256 = "sha256-edlGJD+80k1ySpyNcKc5c2O0MX+S4fQgH5mwHQUxXM8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-pBjg6WyD61+Bl3ttcpl/b9XoWBCi7cDvE8NPaZGu7Aw=";
|
vendorSha256 = "sha256-YLkNua0Pz0gVIYnWOzOlV5RuLBaoZ4l7l1Pf4QIfUVQ=";
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
|
|
@ -12,11 +12,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "smartgithg";
|
pname = "smartgithg";
|
||||||
version = "20.2.5";
|
version = "21.2.2";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.syntevo.com/downloads/smartgit/smartgit-linux-${builtins.replaceStrings [ "." ] [ "_" ] version}.tar.gz";
|
url = "https://www.syntevo.com/downloads/smartgit/smartgit-linux-${builtins.replaceStrings [ "." ] [ "_" ] version}.tar.gz";
|
||||||
sha256 = "05f3yhzf6mvr6c5v6qvjrx97pzrrnkh9mp444zlkbnpgnrsmdc6v";
|
sha256 = "10v6sg0lmjby3v8g3sk2rzzvdx5p69ia4zz2c0hbf30rk0p6gqn3";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ wrapGAppsHook ];
|
nativeBuildInputs = [ wrapGAppsHook ];
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, cmake
|
, fetchpatch
|
||||||
|
, itstool
|
||||||
, libxml2
|
, libxml2
|
||||||
, meson
|
, meson
|
||||||
, ninja
|
, ninja
|
||||||
|
@ -49,10 +50,19 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "hz2WSDOjriQSavFlDT+35x1X5MeInq80ZrSP1WR/td0=";
|
sha256 = "hz2WSDOjriQSavFlDT+35x1X5MeInq80ZrSP1WR/td0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix build with meson 0.61, can be removed on next update
|
||||||
|
# https://gitlab.com/entangle/entangle/-/issues/67
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://gitlab.com/entangle/entangle/-/commit/54795d275a93e94331a614c8712740fcedbdd4f0.patch";
|
||||||
|
sha256 = "iEgqGjKa0xwSdctwvNdEV361l9nx+bz53xn3fuDgtzY=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
cmake
|
itstool
|
||||||
glib.dev
|
glib
|
||||||
libxml2.bin # for xmllint
|
libxml2 # for xmllint
|
||||||
meson
|
meson
|
||||||
ninja
|
ninja
|
||||||
perl # for pod2man and build scripts
|
perl # for pod2man and build scripts
|
||||||
|
@ -93,8 +103,6 @@ stdenv.mkDerivation rec {
|
||||||
libXtst
|
libXtst
|
||||||
]);
|
]);
|
||||||
|
|
||||||
dontUseCmakeConfigure = true;
|
|
||||||
|
|
||||||
# Disable building of doc/reference since it requires network connection to render XML to HTML
|
# Disable building of doc/reference since it requires network connection to render XML to HTML
|
||||||
# Patch build script shebangs
|
# Patch build script shebangs
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "f1viewer";
|
pname = "f1viewer";
|
||||||
version = "2.6.0";
|
version = "2.6.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "SoMuchForSubtlety";
|
owner = "SoMuchForSubtlety";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-MY8xqpAzK1c4XL7w/LR83DyHFCI5X7wldosDDo7pXNI=";
|
sha256 = "sha256-Z6rnkHypk7r9NnYwqZpWQOuGPbWn/EppS+46PQHIdDM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-8c1+t6Lo11Q2kEDy9IWLw9bsZYtJFksE7Om3ysx7fc4=";
|
vendorSha256 = "sha256-UNeH3zxgssXxFpJws6nAL8EgXt0DRyAQfmlJWz/qyDg=";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description =
|
description =
|
||||||
|
|
|
@ -16,11 +16,16 @@ let
|
||||||
- make it self-contained by including docker-compose
|
- make it self-contained by including docker-compose
|
||||||
*/
|
*/
|
||||||
arion =
|
arion =
|
||||||
justStaticExecutables (
|
(justStaticExecutables (
|
||||||
overrideCabal
|
overrideCabal
|
||||||
cabalOverrides
|
cabalOverrides
|
||||||
arion-compose
|
arion-compose
|
||||||
);
|
)
|
||||||
|
).overrideAttrs (o: {
|
||||||
|
# Patch away the arion-compose name. Unlike the Haskell library, the program
|
||||||
|
# is called arion (arion was already taken on hackage).
|
||||||
|
pname = "arion";
|
||||||
|
});
|
||||||
|
|
||||||
inherit (haskell.lib.compose) justStaticExecutables overrideCabal;
|
inherit (haskell.lib.compose) justStaticExecutables overrideCabal;
|
||||||
|
|
||||||
|
@ -31,9 +36,6 @@ let
|
||||||
passthru = (o.passthru or {}) // {
|
passthru = (o.passthru or {}) // {
|
||||||
inherit eval build;
|
inherit eval build;
|
||||||
};
|
};
|
||||||
# Patch away the arion-compose name. Unlike the Haskell library, the program
|
|
||||||
# is called arion (arion was already taken on hackage).
|
|
||||||
pname = "arion";
|
|
||||||
src = arion-compose.src;
|
src = arion-compose.src;
|
||||||
|
|
||||||
# PYTHONPATH
|
# PYTHONPATH
|
||||||
|
|
|
@ -1,27 +1,19 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, dtc, fetchpatch, pkgsCross }:
|
{ lib, stdenv, fetchFromGitHub, dtc, pkgsCross }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "spike";
|
pname = "spike";
|
||||||
version = "1.0.0";
|
version = "1.1.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "riscv";
|
owner = "riscv";
|
||||||
repo = "riscv-isa-sim";
|
repo = "riscv-isa-sim";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1hcl01nj96s3rkz4mrq747s5lkw81lgdjdimb8b1b9h8qnida7ww";
|
sha256 = "sha256-4D2Fezej0ioOOupw3kgMT5VLs+/jXQjwvek6v0AVMzI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ dtc ];
|
nativeBuildInputs = [ dtc ];
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Add missing headers to fix build.
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/riscv/riscv-isa-sim/commit/b3855682c2d744c613d2ffd6b53e3f021ecea4f3.patch";
|
|
||||||
sha256 = "1v1mpp4iddf5n4h3kmj65g075m7xc31bxww7gldnmgl607ma7cnl";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
patchShebangs scripts/*.sh
|
patchShebangs scripts/*.sh
|
||||||
patchShebangs tests/ebreak.py
|
patchShebangs tests/ebreak.py
|
||||||
|
@ -39,7 +31,9 @@ stdenv.mkDerivation rec {
|
||||||
''
|
''
|
||||||
runHook preInstallCheck
|
runHook preInstallCheck
|
||||||
|
|
||||||
$out/bin/spike -m64 ${riscvPkgs.riscv-pk}/bin/pk ${riscvPkgs.hello}/bin/hello | grep -Fq "Hello, world"
|
echo -e "#include<stdio.h>\nint main() {printf(\"Hello, world\");return 0;}" > hello.c
|
||||||
|
${riscvPkgs.stdenv.cc}/bin/riscv64-none-elf-gcc -o hello hello.c
|
||||||
|
$out/bin/spike -m64 ${riscvPkgs.riscv-pk}/bin/pk hello | grep -Fq "Hello, world"
|
||||||
|
|
||||||
runHook postInstallCheck
|
runHook postInstallCheck
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"commit": "aa8f2230d08c540df249147ea681a5c22314d083",
|
"commit": "f504760b580057f368d85ed6f6c4e78a38968ff4",
|
||||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/aa8f2230d08c540df249147ea681a5c22314d083.tar.gz",
|
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/f504760b580057f368d85ed6f6c4e78a38968ff4.tar.gz",
|
||||||
"sha256": "1h92r4si1vmf3v2m843xaqwr99hpnn1s0x08qcvd2gwjkc2qq10a",
|
"sha256": "0m3w7bawx0qxj2qn3yx1d4j90dq89k5c4604f6z38cxxx0rszmzj",
|
||||||
"msg": "Update from Hackage at 2022-02-14T17:17:31Z"
|
"msg": "Update from Hackage at 2022-03-26T03:24:04Z"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
{ lib, stdenv
|
{ stdenv
|
||||||
|
, lib
|
||||||
, meson
|
, meson
|
||||||
, ninja
|
, ninja
|
||||||
, gettext
|
, gettext
|
||||||
, fetchurl
|
, fetchurl
|
||||||
|
, fetchpatch
|
||||||
, evince
|
, evince
|
||||||
, gjs
|
, gjs
|
||||||
, pkg-config
|
, pkg-config
|
||||||
|
@ -35,6 +37,15 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "0c41l8m2di8h39bmk2fnhpwglwp6qhljmwqqbihzp4ay9976zrc5";
|
sha256 = "0c41l8m2di8h39bmk2fnhpwglwp6qhljmwqqbihzp4ay9976zrc5";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix build with meson 0.61
|
||||||
|
# https://gitlab.gnome.org/GNOME/gnome-books/-/merge_requests/62
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/gnome-books/-/commit/2663dcdaaaa71f067a4c2d0005eecc0fdf940bf5.patch";
|
||||||
|
sha256 = "v2mLzrxSWrkJ0N6seR8jNXX14FsneEPuE9ELLVUe6+E=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
meson
|
meson
|
||||||
ninja
|
ninja
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ lib, stdenv
|
{ stdenv
|
||||||
|
, lib
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, fetchpatch
|
|
||||||
, meson
|
, meson
|
||||||
, ninja
|
, ninja
|
||||||
, pkg-config
|
, pkg-config
|
||||||
|
@ -10,6 +10,7 @@
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
, gettext
|
, gettext
|
||||||
, itstool
|
, itstool
|
||||||
|
, libhandy
|
||||||
, libxml2
|
, libxml2
|
||||||
, libxslt
|
, libxslt
|
||||||
, docbook_xsl
|
, docbook_xsl
|
||||||
|
@ -21,21 +22,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "gnome-logs";
|
pname = "gnome-logs";
|
||||||
version = "3.36.0";
|
version = "42.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/gnome-logs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
url = "mirror://gnome/sources/gnome-logs/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||||
sha256 = "0w1nfdxbv3f0wnhmdy21ydvr4swfc108hypda561p7l9lrhnnxj4";
|
sha256 = "TV5FFp1r9DkC16npoHk8kW65LaumuoWzXI629nLNq9c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
|
||||||
# https://gitlab.gnome.org/GNOME/gnome-logs/-/issues/52
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://gitlab.gnome.org/GNOME/gnome-logs/-/commit/b42defceefc775220b525f665a3b662ab9593b81.patch";
|
|
||||||
sha256 = "1s0zscmhwy7r0xff17wh8ik8x9xw1vrkipw5vl5i770bxnljps8n";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
python3
|
python3
|
||||||
meson
|
meson
|
||||||
|
@ -53,9 +46,9 @@ stdenv.mkDerivation rec {
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
glib
|
glib
|
||||||
gtk3
|
gtk3
|
||||||
|
libhandy
|
||||||
systemd
|
systemd
|
||||||
gsettings-desktop-schemas
|
gsettings-desktop-schemas
|
||||||
gnome.adwaita-icon-theme
|
|
||||||
];
|
];
|
||||||
|
|
||||||
mesonFlags = [
|
mesonFlags = [
|
||||||
|
@ -80,7 +73,7 @@ stdenv.mkDerivation rec {
|
||||||
homepage = "https://wiki.gnome.org/Apps/Logs";
|
homepage = "https://wiki.gnome.org/Apps/Logs";
|
||||||
description = "A log viewer for the systemd journal";
|
description = "A log viewer for the systemd journal";
|
||||||
maintainers = teams.gnome.members;
|
maintainers = teams.gnome.members;
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
|
, fetchpatch
|
||||||
, meson
|
, meson
|
||||||
, ninja
|
, ninja
|
||||||
, vala
|
, vala
|
||||||
|
@ -27,6 +28,18 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "sha256-Vxr0x9rU8Em1PmzXKLea3fCMJ92ra8V7OW0hGGbueeM=";
|
sha256 = "sha256-Vxr0x9rU8Em1PmzXKLea3fCMJ92ra8V7OW0hGGbueeM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Look for compiled schemas in NIX_GSETTINGS_OVERRIDES_DIR
|
||||||
|
# environment variable, to match what we patched GLib to do.
|
||||||
|
./schema-override-variable.patch
|
||||||
|
|
||||||
|
# Fix build with Meson 0.61.0
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/dconf-editor/-/commit/56474378568e6ff4af8aa912810323e808c1d977.patch";
|
||||||
|
sha256 = "iFyJcskqcmvz7tp1Z9jM9f8WvAhD0L9Vx1hu2c402MA=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
meson
|
meson
|
||||||
ninja
|
ninja
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
diff --git a/editor/source-manager.vala b/editor/source-manager.vala
|
||||||
|
index 27b2b17a..87f7ba86 100644
|
||||||
|
--- a/editor/source-manager.vala
|
||||||
|
+++ b/editor/source-manager.vala
|
||||||
|
@@ -121,6 +121,9 @@ private class SourceManager : Object
|
||||||
|
source = try_prepend_dir (source, Path.build_filename (system_data_dirs [i], "glib-2.0", "schemas"));
|
||||||
|
string user_data_dir = GLib.Environment.get_user_data_dir ();
|
||||||
|
source = try_prepend_dir (source, Path.build_filename (user_data_dir, "glib-2.0", "schemas"));
|
||||||
|
+ string? nix_var_schema_dir = GLib.Environment.get_variable ("NIX_GSETTINGS_OVERRIDES_DIR");
|
||||||
|
+ if (nix_var_schema_dir != null)
|
||||||
|
+ source = try_prepend_dir (source, (!) nix_var_schema_dir);
|
||||||
|
string? var_schema_dir = GLib.Environment.get_variable ("GSETTINGS_SCHEMA_DIR");
|
||||||
|
if (var_schema_dir != null)
|
||||||
|
source = try_prepend_dir (source, (!) var_schema_dir);
|
|
@ -1,18 +1,63 @@
|
||||||
{ lib, stdenv, gettext, libxml2, libhandy, fetchurl, pkg-config, libcanberra-gtk3
|
{ stdenv
|
||||||
, gtk3, glib, meson, ninja, python3, wrapGAppsHook, appstream-glib, desktop-file-utils
|
, lib
|
||||||
, gnome, gsettings-desktop-schemas }:
|
, gettext
|
||||||
|
, libxml2
|
||||||
|
, libhandy
|
||||||
|
, fetchurl
|
||||||
|
, fetchpatch
|
||||||
|
, pkg-config
|
||||||
|
, libcanberra-gtk3
|
||||||
|
, gtk3
|
||||||
|
, glib
|
||||||
|
, meson
|
||||||
|
, ninja
|
||||||
|
, python3
|
||||||
|
, wrapGAppsHook
|
||||||
|
, appstream-glib
|
||||||
|
, desktop-file-utils
|
||||||
|
, gnome
|
||||||
|
, gsettings-desktop-schemas
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
stdenv.mkDerivation rec {
|
||||||
pname = "gnome-screenshot";
|
pname = "gnome-screenshot";
|
||||||
version = "41.0";
|
version = "41.0";
|
||||||
in stdenv.mkDerivation rec {
|
|
||||||
name = "${pname}-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${name}.tar.xz";
|
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||||
sha256 = "Stt97JJkKPdCY9V5ZnPPFC5HILbnaPVGio0JM/mMlZc=";
|
sha256 = "Stt97JJkKPdCY9V5ZnPPFC5HILbnaPVGio0JM/mMlZc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix build with meson 0.61
|
||||||
|
# https://gitlab.gnome.org/GNOME/gnome-screenshot/-/issues/186
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/gnome-screenshot/-/commit/b60dad3c2536c17bd201f74ad8e40eb74385ed9f.patch";
|
||||||
|
sha256 = "Js83h/3xxcw2hsgjzGa5lAYFXVrt6MPhXOTh5dZTx/w=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
meson
|
||||||
|
ninja
|
||||||
|
pkg-config
|
||||||
|
gettext
|
||||||
|
appstream-glib
|
||||||
|
libxml2
|
||||||
|
desktop-file-utils
|
||||||
|
python3
|
||||||
|
wrapGAppsHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
gtk3
|
||||||
|
glib
|
||||||
|
libcanberra-gtk3
|
||||||
|
libhandy
|
||||||
|
gnome.adwaita-icon-theme
|
||||||
|
gsettings-desktop-schemas
|
||||||
|
];
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -20,12 +65,6 @@ in stdenv.mkDerivation rec {
|
||||||
patchShebangs build-aux/postinstall.py
|
patchShebangs build-aux/postinstall.py
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ meson ninja pkg-config gettext appstream-glib libxml2 desktop-file-utils python3 wrapGAppsHook ];
|
|
||||||
buildInputs = [
|
|
||||||
gtk3 glib libcanberra-gtk3 libhandy gnome.adwaita-icon-theme
|
|
||||||
gsettings-desktop-schemas
|
|
||||||
];
|
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
updateScript = gnome.updateScript {
|
updateScript = gnome.updateScript {
|
||||||
packageName = pname;
|
packageName = pname;
|
||||||
|
@ -34,10 +73,10 @@ in stdenv.mkDerivation rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://en.wikipedia.org/wiki/GNOME_Screenshot";
|
homepage = "https://gitlab.gnome.org/GNOME/gnome-screenshot";
|
||||||
description = "Utility used in the GNOME desktop environment for taking screenshots";
|
description = "Utility used in the GNOME desktop environment for taking screenshots";
|
||||||
maintainers = teams.gnome.members;
|
maintainers = teams.gnome.members;
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2Plus;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
{ lib, stdenv
|
{ stdenv
|
||||||
|
, lib
|
||||||
, fetchurl
|
, fetchurl
|
||||||
|
, fetchpatch
|
||||||
, meson
|
, meson
|
||||||
, ninja
|
, ninja
|
||||||
, pkg-config
|
, pkg-config
|
||||||
|
@ -29,6 +31,15 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "7KqQsPTaqPsgMPbcaQv1M/+Zp3NDf+Dhis/oLZl/YNI=";
|
sha256 = "7KqQsPTaqPsgMPbcaQv1M/+Zp3NDf+Dhis/oLZl/YNI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix build with meson 0.61
|
||||||
|
# https://gitlab.gnome.org/GNOME/devhelp/-/issues/59
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/devhelp/-/commit/281bade14c1925cf9e7329fa8e9cf2d82512c66f.patch";
|
||||||
|
sha256 = "LmHoeQ0zJwOhuasAUYy8FfpDnEO+UNfEb293uKttYKo=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
meson
|
meson
|
||||||
ninja
|
ninja
|
||||||
|
|
|
@ -136,7 +136,16 @@
|
||||||
"floating-dock": [
|
"floating-dock": [
|
||||||
"floatingDock@sun.wxg@gmail.com",
|
"floatingDock@sun.wxg@gmail.com",
|
||||||
"floating-dock@nandoferreira_prof@hotmail.com"
|
"floating-dock@nandoferreira_prof@hotmail.com"
|
||||||
|
],
|
||||||
|
"wireguard-indicator": [
|
||||||
|
"wireguard-indicator@gregos.me",
|
||||||
|
"wireguard-indicator@atareao.es"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"42": {}
|
"42": {
|
||||||
|
"workspace-indicator": [
|
||||||
|
"workspace-indicator@gnome-shell-extensions.gcampax.github.com",
|
||||||
|
"horizontal-workspace-indicator@tty2.io"
|
||||||
|
]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,8 +3,15 @@
|
||||||
, gjs
|
, gjs
|
||||||
, gnome
|
, gnome
|
||||||
, gobject-introspection
|
, gobject-introspection
|
||||||
|
, hddtemp
|
||||||
|
, liquidctl
|
||||||
|
, lm_sensors
|
||||||
|
, netcat-gnu
|
||||||
|
, nvme-cli
|
||||||
|
, procps
|
||||||
, pulseaudio
|
, pulseaudio
|
||||||
, python3
|
, python3
|
||||||
|
, smartmontools
|
||||||
, substituteAll
|
, substituteAll
|
||||||
, touchegg
|
, touchegg
|
||||||
, vte
|
, vte
|
||||||
|
@ -51,6 +58,17 @@ super: lib.trivial.pipe super [
|
||||||
'';
|
'';
|
||||||
}))
|
}))
|
||||||
|
|
||||||
|
(patchExtension "freon@UshakovVasilii_Github.yahoo.com" (old: {
|
||||||
|
patches = [
|
||||||
|
(substituteAll {
|
||||||
|
src = ./extensionOverridesPatches/freon_at_UshakovVasilii_Github.yahoo.com.patch;
|
||||||
|
inherit hddtemp liquidctl lm_sensors procps smartmontools;
|
||||||
|
netcat = netcat-gnu;
|
||||||
|
nvmecli = nvme-cli;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}))
|
||||||
|
|
||||||
(patchExtension "gnome-shell-screenshot@ttll.de" (old: {
|
(patchExtension "gnome-shell-screenshot@ttll.de" (old: {
|
||||||
# Requires gjs
|
# Requires gjs
|
||||||
# https://github.com/NixOS/nixpkgs/issues/136112
|
# https://github.com/NixOS/nixpkgs/issues/136112
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
diff --git a/freon@UshakovVasilii_Github.yahoo.com/hddtempUtil.js b/freon@UshakovVasilii_Github.yahoo.com/hddtempUtil.js
|
diff --git a/hddtempUtil.js b/hddtempUtil.js
|
||||||
index e5d1d6d..856654b 100644
|
index e5d1d6d..856654b 100644
|
||||||
--- a/freon@UshakovVasilii_Github.yahoo.com/hddtempUtil.js
|
--- a/hddtempUtil.js
|
||||||
+++ b/freon@UshakovVasilii_Github.yahoo.com/hddtempUtil.js
|
+++ b/hddtempUtil.js
|
||||||
@@ -7,7 +7,7 @@ var HddtempUtil = class extends CommandLineUtil.CommandLineUtil {
|
@@ -7,7 +7,7 @@ var HddtempUtil = class extends CommandLineUtil.CommandLineUtil {
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
|
@ -31,10 +31,10 @@ index e5d1d6d..856654b 100644
|
||||||
if(output.length)
|
if(output.length)
|
||||||
pid = Number(output.trim());
|
pid = Number(output.trim());
|
||||||
}
|
}
|
||||||
diff --git a/freon@UshakovVasilii_Github.yahoo.com/liquidctlUtil.js b/freon@UshakovVasilii_Github.yahoo.com/liquidctlUtil.js
|
diff --git a/liquidctlUtil.js b/liquidctlUtil.js
|
||||||
index 766bf62..7cd4e94 100644
|
index 766bf62..7cd4e94 100644
|
||||||
--- a/freon@UshakovVasilii_Github.yahoo.com/liquidctlUtil.js
|
--- a/liquidctlUtil.js
|
||||||
+++ b/freon@UshakovVasilii_Github.yahoo.com/liquidctlUtil.js
|
+++ b/liquidctlUtil.js
|
||||||
@@ -8,7 +8,7 @@ const commandLineUtil = Me.imports.commandLineUtil;
|
@@ -8,7 +8,7 @@ const commandLineUtil = Me.imports.commandLineUtil;
|
||||||
var LiquidctlUtil = class extends commandLineUtil.CommandLineUtil {
|
var LiquidctlUtil = class extends commandLineUtil.CommandLineUtil {
|
||||||
constructor() {
|
constructor() {
|
||||||
|
@ -44,10 +44,10 @@ index 766bf62..7cd4e94 100644
|
||||||
this._argv = path ? [path, 'status', '--json'] : null;
|
this._argv = path ? [path, 'status', '--json'] : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/freon@UshakovVasilii_Github.yahoo.com/nvmecliUtil.js b/freon@UshakovVasilii_Github.yahoo.com/nvmecliUtil.js
|
diff --git a/nvmecliUtil.js b/nvmecliUtil.js
|
||||||
index ae2ea93..2349b9e 100644
|
index ae2ea93..2349b9e 100644
|
||||||
--- a/freon@UshakovVasilii_Github.yahoo.com/nvmecliUtil.js
|
--- a/nvmecliUtil.js
|
||||||
+++ b/freon@UshakovVasilii_Github.yahoo.com/nvmecliUtil.js
|
+++ b/nvmecliUtil.js
|
||||||
@@ -3,7 +3,7 @@ const GLib = imports.gi.GLib;
|
@@ -3,7 +3,7 @@ const GLib = imports.gi.GLib;
|
||||||
const Me = imports.misc.extensionUtils.getCurrentExtension();
|
const Me = imports.misc.extensionUtils.getCurrentExtension();
|
||||||
|
|
||||||
|
@ -57,10 +57,10 @@ index ae2ea93..2349b9e 100644
|
||||||
return JSON.parse(GLib.spawn_command_line_sync(`${nvme} ${argv} -o json`)[1].toString())
|
return JSON.parse(GLib.spawn_command_line_sync(`${nvme} ${argv} -o json`)[1].toString())
|
||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/freon@UshakovVasilii_Github.yahoo.com/sensorsUtil.js b/freon@UshakovVasilii_Github.yahoo.com/sensorsUtil.js
|
diff --git a/sensorsUtil.js b/sensorsUtil.js
|
||||||
index 62fa580..c017748 100644
|
index 62fa580..c017748 100644
|
||||||
--- a/freon@UshakovVasilii_Github.yahoo.com/sensorsUtil.js
|
--- a/sensorsUtil.js
|
||||||
+++ b/freon@UshakovVasilii_Github.yahoo.com/sensorsUtil.js
|
+++ b/sensorsUtil.js
|
||||||
@@ -7,7 +7,7 @@ var SensorsUtil = class extends CommandLineUtil.CommandLineUtil {
|
@@ -7,7 +7,7 @@ var SensorsUtil = class extends CommandLineUtil.CommandLineUtil {
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
|
@ -70,16 +70,16 @@ index 62fa580..c017748 100644
|
||||||
// -A: Do not show adapter -j: JSON output
|
// -A: Do not show adapter -j: JSON output
|
||||||
this._argv = path ? [path, '-A', '-j'] : null;
|
this._argv = path ? [path, '-A', '-j'] : null;
|
||||||
}
|
}
|
||||||
diff --git a/freon@UshakovVasilii_Github.yahoo.com/smartctlUtil.js b/freon@UshakovVasilii_Github.yahoo.com/smartctlUtil.js
|
diff --git a/smartctlUtil.js b/smartctlUtil.js
|
||||||
index 03d469b..6057a3b 100644
|
index 03d469b..6057a3b 100644
|
||||||
--- a/freon@UshakovVasilii_Github.yahoo.com/smartctlUtil.js
|
--- a/smartctlUtil.js
|
||||||
+++ b/freon@UshakovVasilii_Github.yahoo.com/smartctlUtil.js
|
+++ b/smartctlUtil.js
|
||||||
@@ -3,7 +3,7 @@ const GLib = imports.gi.GLib;
|
@@ -3,7 +3,7 @@ const GLib = imports.gi.GLib;
|
||||||
const Me = imports.misc.extensionUtils.getCurrentExtension();
|
const Me = imports.misc.extensionUtils.getCurrentExtension();
|
||||||
const ByteArray = imports.byteArray;
|
const ByteArray = imports.byteArray;
|
||||||
function getSmartData (argv){
|
function getSmartData (argv){
|
||||||
- const smartctl = GLib.find_program_in_path('smartctl')
|
- const smartctl = GLib.find_program_in_path('smartctl')
|
||||||
+ const smartctl = GLib.find_program_in_path('@smartmontools@/bin/smartctl')
|
+ const smartctl = GLib.find_program_in_path('@smartmontools@/bin/smartctl')
|
||||||
return JSON.parse(ByteArray.toString( GLib.spawn_command_line_sync(`'${smartctl}' ${argv} -j`)[1] ))
|
return JSON.parse(ByteArray.toString( GLib.spawn_command_line_sync(`${smartctl} ${argv} -j`)[1] ))
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,15 @@
|
||||||
# - Make a separate section for each GNOME version. Collisions will come back eventually
|
# - Make a separate section for each GNOME version. Collisions will come back eventually
|
||||||
# as the extensions are updated.
|
# as the extensions are updated.
|
||||||
{
|
{
|
||||||
|
"workspace-indicator@gnome-shell-extensions.gcampax.github.com" = "workspace-indicator";
|
||||||
|
"horizontal-workspace-indicator@tty2.io" = "workspace-indicator-2";
|
||||||
|
|
||||||
|
# ############################################################################
|
||||||
|
# These are conflicts for older extensions (i.e. they don't support the latest GNOME version).
|
||||||
|
# Make sure to move them up once they are updated
|
||||||
|
|
||||||
|
# ####### GNOME 41 #######
|
||||||
|
|
||||||
"apps-menu@gnome-shell-extensions.gcampax.github.com" = "applications-menu";
|
"apps-menu@gnome-shell-extensions.gcampax.github.com" = "applications-menu";
|
||||||
"Applications_Menu@rmy.pobox.com" = "frippery-applications-menu";
|
"Applications_Menu@rmy.pobox.com" = "frippery-applications-menu";
|
||||||
|
|
||||||
|
@ -15,15 +24,15 @@
|
||||||
"lockkeys@vaina.lt" = "lock-keys";
|
"lockkeys@vaina.lt" = "lock-keys";
|
||||||
"lockkeys@fawtytoo" = "lock-keys-2";
|
"lockkeys@fawtytoo" = "lock-keys-2";
|
||||||
|
|
||||||
"workspace-indicator@gnome-shell-extensions.gcampax.github.com" = "workspace-indicator";
|
|
||||||
"horizontal-workspace-indicator@tty2.io" = "workspace-indicator-2";
|
|
||||||
|
|
||||||
"unredirect@vaina.lt" = "disable-unredirect-fullscreen-windows";
|
"unredirect@vaina.lt" = "disable-unredirect-fullscreen-windows";
|
||||||
"unredirect@aunetx" = "disable-unredirect-fullscreen-windows-2";
|
"unredirect@aunetx" = "disable-unredirect-fullscreen-windows-2";
|
||||||
|
|
||||||
"fuzzy-clock@keepawayfromfire.co.uk" = "fuzzy-clock-2";
|
"fuzzy-clock@keepawayfromfire.co.uk" = "fuzzy-clock-2";
|
||||||
"FuzzyClock@johngoetz" = "fuzzy-clock";
|
"FuzzyClock@johngoetz" = "fuzzy-clock";
|
||||||
|
|
||||||
|
"wireguard-indicator@gregos.me" = "wireguard-indicator-2";
|
||||||
|
"wireguard-indicator@atareao.es" = "wireguard-indicator";
|
||||||
|
|
||||||
# At the moment, ShutdownTimer@deminder is a fork of ShutdownTimer@neumann which adds new features
|
# At the moment, ShutdownTimer@deminder is a fork of ShutdownTimer@neumann which adds new features
|
||||||
# there seem to be upstream plans, so this should be checked periodically:
|
# there seem to be upstream plans, so this should be checked periodically:
|
||||||
# https://github.com/Deminder/ShutdownTimer https://github.com/neumann-d/ShutdownTimer/pull/46
|
# https://github.com/Deminder/ShutdownTimer https://github.com/neumann-d/ShutdownTimer/pull/46
|
||||||
|
@ -31,10 +40,6 @@
|
||||||
"shutdown-timer-gnome-shell-extension" = "shutdowntimer-2";
|
"shutdown-timer-gnome-shell-extension" = "shutdowntimer-2";
|
||||||
"ShutdownTimer@deminder" = "shutdowntimer";
|
"ShutdownTimer@deminder" = "shutdowntimer";
|
||||||
|
|
||||||
# ############################################################################
|
|
||||||
# These are conflicts for older extensions (i.e. they don't support the latest GNOME version).
|
|
||||||
# Make sure to move them up once they are updated
|
|
||||||
|
|
||||||
# ####### GNOME 40 #######
|
# ####### GNOME 40 #######
|
||||||
|
|
||||||
"system-monitor@paradoxxx.zero.gmail.com" = "system-monitor"; # manually packaged
|
"system-monitor@paradoxxx.zero.gmail.com" = "system-monitor"; # manually packaged
|
||||||
|
@ -49,9 +54,6 @@
|
||||||
"panel-date-format@keiii.github.com" = "panel-date-format";
|
"panel-date-format@keiii.github.com" = "panel-date-format";
|
||||||
"panel-date-format@atareao.es" = "panel-date-format-2";
|
"panel-date-format@atareao.es" = "panel-date-format-2";
|
||||||
|
|
||||||
"wireguard-indicator@gregos.me" = "wireguard-indicator-2";
|
|
||||||
"wireguard-indicator@atareao.es" = "wireguard-indicator";
|
|
||||||
|
|
||||||
"extension-list@tu.berry" = "extension-list";
|
"extension-list@tu.berry" = "extension-list";
|
||||||
"screen-lock@garciabaameiro.com" = "screen-lock"; # Don't know why they got 'extension-list' as slug
|
"screen-lock@garciabaameiro.com" = "screen-lock"; # Don't know why they got 'extension-list' as slug
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,61 +0,0 @@
|
||||||
{ lib
|
|
||||||
, stdenv
|
|
||||||
, fetchFromGitHub
|
|
||||||
, glib
|
|
||||||
, substituteAll
|
|
||||||
, hddtemp
|
|
||||||
, liquidctl
|
|
||||||
, lm_sensors
|
|
||||||
, netcat-gnu
|
|
||||||
, nvme-cli
|
|
||||||
, procps
|
|
||||||
, smartmontools
|
|
||||||
}:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "gnome-shell-extension-freon";
|
|
||||||
version = "unstable-2022-02-05";
|
|
||||||
|
|
||||||
passthru = {
|
|
||||||
extensionUuid = "freon@UshakovVasilii_Github.yahoo.com";
|
|
||||||
extensionPortalSlug = "freon";
|
|
||||||
};
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "UshakovVasilii";
|
|
||||||
repo = "gnome-shell-extension-freon";
|
|
||||||
rev = "010c363d9bff8ed28000cbf8df2226dad65078fb";
|
|
||||||
hash = "sha256-Fb8y+HoWq+205gqwAD2DVYym1eThGZqDML5HlyhS+4M=";
|
|
||||||
};
|
|
||||||
|
|
||||||
nativeBuildInputs = [ glib ];
|
|
||||||
|
|
||||||
patches = [
|
|
||||||
(substituteAll {
|
|
||||||
src = ./fix_paths.patch;
|
|
||||||
inherit hddtemp liquidctl lm_sensors procps smartmontools;
|
|
||||||
netcat = netcat-gnu;
|
|
||||||
nvmecli = nvme-cli;
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
runHook preBuild
|
|
||||||
glib-compile-schemas --strict --targetdir="freon@UshakovVasilii_Github.yahoo.com/schemas" "freon@UshakovVasilii_Github.yahoo.com/schemas"
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
mkdir -p $out/share/gnome-shell/extensions
|
|
||||||
cp -r "freon@UshakovVasilii_Github.yahoo.com" $out/share/gnome-shell/extensions
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "GNOME Shell extension for displaying CPU, GPU, disk temperatures, voltage and fan RPM in the top panel";
|
|
||||||
license = licenses.gpl2;
|
|
||||||
maintainers = with maintainers; [ justinas ];
|
|
||||||
homepage = "https://github.com/UshakovVasilii/gnome-shell-extension-freon";
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -6,7 +6,6 @@
|
||||||
"drop-down-terminal@gs-extensions.zzrough.org" = callPackage ./drop-down-terminal { };
|
"drop-down-terminal@gs-extensions.zzrough.org" = callPackage ./drop-down-terminal { };
|
||||||
"EasyScreenCast@iacopodeenosee.gmail.com" = callPackage ./EasyScreenCast { };
|
"EasyScreenCast@iacopodeenosee.gmail.com" = callPackage ./EasyScreenCast { };
|
||||||
"emoji-selector@maestroschan.fr" = callPackage ./emoji-selector { };
|
"emoji-selector@maestroschan.fr" = callPackage ./emoji-selector { };
|
||||||
"freon@UshakovVasilii_Github.yahoo.com" = callPackage ./freon { };
|
|
||||||
"gsconnect@andyholmes.github.io" = callPackage ./gsconnect { };
|
"gsconnect@andyholmes.github.io" = callPackage ./gsconnect { };
|
||||||
"icon-hider@kalnitsky.org" = callPackage ./icon-hider { };
|
"icon-hider@kalnitsky.org" = callPackage ./icon-hider { };
|
||||||
"impatience@gfxmonk.net" = callPackage ./impatience { };
|
"impatience@gfxmonk.net" = callPackage ./impatience { };
|
||||||
|
|
|
@ -1,19 +1,21 @@
|
||||||
{ lib, stdenv
|
{ lib, stdenv
|
||||||
, substituteAll
|
, substituteAll
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, fetchpatch
|
||||||
, libpulseaudio
|
, libpulseaudio
|
||||||
, python3
|
, python3
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "gnome-shell-extension-sound-output-device-chooser";
|
pname = "gnome-shell-extension-sound-output-device-chooser";
|
||||||
version = "39";
|
# For gnome 42 support many commits not tagged yet are needed.
|
||||||
|
version = "unstable-2022-03-29";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "kgshank";
|
owner = "kgshank";
|
||||||
repo = "gse-sound-output-device-chooser";
|
repo = "gse-sound-output-device-chooser";
|
||||||
rev = version;
|
rev = "76f7f59d23f5ffcd66555c7662f43c9cc1ce4742";
|
||||||
sha256 = "sha256-RFdBdpKsz2MjdzxWX4UFwah+e68dqrkvm7ql0RAZZwg=";
|
sha256 = "sha256-iPc95LmDsYizLg45wpU+vFx/N6MR2hewSHqoRsePC/4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
|
, fetchpatch
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
, meson
|
, meson
|
||||||
, vala
|
, vala
|
||||||
|
@ -23,6 +24,15 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "0s5fg4z5in1h39fcr69j1qc5ynmg7a8mfprk3mc3c0csq3snfwz2";
|
sha256 = "0s5fg4z5in1h39fcr69j1qc5ynmg7a8mfprk3mc3c0csq3snfwz2";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix build with meson 0.61
|
||||||
|
# https://gitlab.gnome.org/GNOME/gnome-2048/-/merge_requests/21
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/gnome-2048/-/commit/194e22699f7166a016cd39ba26dd719aeecfc868.patch";
|
||||||
|
sha256 = "Qpn/OJJwblRm5Pi453aU2HwbrNjsf+ftmSnns/5qZ9E=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
itstool
|
itstool
|
||||||
meson
|
meson
|
||||||
|
|
|
@ -11,6 +11,12 @@ haskellPackages.mkDerivation rec {
|
||||||
sha256 = "sha256-o7NLd7jC1BvcoVzbD18LvHg/SqOnfn9yELUrpg2uZtY=";
|
sha256 = "sha256-o7NLd7jC1BvcoVzbD18LvHg/SqOnfn9yELUrpg2uZtY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# -Werror breaks build with GHC >= 9.0
|
||||||
|
# https://github.com/carp-lang/Carp/issues/1386
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace CarpHask.cabal --replace "-Werror" ""
|
||||||
|
'';
|
||||||
|
|
||||||
buildTools = [ makeWrapper ];
|
buildTools = [ makeWrapper ];
|
||||||
|
|
||||||
executableHaskellDepends = with haskellPackages; [
|
executableHaskellDepends = with haskellPackages; [
|
||||||
|
|
|
@ -86,5 +86,5 @@ rec {
|
||||||
gcc = gcc10; # can bump to 11 along with stdenv.cc
|
gcc = gcc10; # can bump to 11 along with stdenv.cc
|
||||||
};
|
};
|
||||||
|
|
||||||
cudatoolkit_11 = cudatoolkit_11_6;
|
cudatoolkit_11 = cudatoolkit_11_5;
|
||||||
}
|
}
|
||||||
|
|
|
@ -77,6 +77,9 @@ let
|
||||||
in elmPkgs // {
|
in elmPkgs // {
|
||||||
inherit elmPkgs;
|
inherit elmPkgs;
|
||||||
|
|
||||||
|
# We need attoparsec < 0.14 to build elm for now
|
||||||
|
attoparsec = self.attoparsec_0_13_2_5;
|
||||||
|
|
||||||
# Needed for elm-format
|
# Needed for elm-format
|
||||||
indents = self.callPackage ./packages/indents.nix {};
|
indents = self.callPackage ./packages/indents.nix {};
|
||||||
bimap = self.callPackage ./packages/bimap.nix {};
|
bimap = self.callPackage ./packages/bimap.nix {};
|
||||||
|
|
|
@ -366,6 +366,10 @@ stdenv.mkDerivation (rec {
|
||||||
inherit llvmPackages;
|
inherit llvmPackages;
|
||||||
inherit enableShared;
|
inherit enableShared;
|
||||||
|
|
||||||
|
# This is used by the haskell builder to query
|
||||||
|
# the presence of the haddock program.
|
||||||
|
hasHaddock = enableHaddockProgram;
|
||||||
|
|
||||||
# Our Cabal compiler name
|
# Our Cabal compiler name
|
||||||
haskellCompilerName = "ghc-${version}";
|
haskellCompilerName = "ghc-${version}";
|
||||||
};
|
};
|
||||||
|
|
|
@ -335,6 +335,10 @@ stdenv.mkDerivation (rec {
|
||||||
inherit llvmPackages;
|
inherit llvmPackages;
|
||||||
inherit enableShared;
|
inherit enableShared;
|
||||||
|
|
||||||
|
# This is used by the haskell builder to query
|
||||||
|
# the presence of the haddock program.
|
||||||
|
hasHaddock = enableHaddockProgram;
|
||||||
|
|
||||||
# Our Cabal compiler name
|
# Our Cabal compiler name
|
||||||
haskellCompilerName = "ghc-${version}";
|
haskellCompilerName = "ghc-${version}";
|
||||||
};
|
};
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
, # Whether to build dynamic libs for the standard library (on the target
|
, # Whether to build dynamic libs for the standard library (on the target
|
||||||
# platform). Static libs are always built.
|
# platform). Static libs are always built.
|
||||||
enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt
|
enableShared ? with stdenv.targetPlatform; !isWindows && !useiOSPrebuilt && !isStatic
|
||||||
|
|
||||||
, # Whether to build terminfo.
|
, # Whether to build terminfo.
|
||||||
enableTerminfo ? !stdenv.targetPlatform.isWindows
|
enableTerminfo ? !stdenv.targetPlatform.isWindows
|
||||||
|
@ -105,9 +105,13 @@ let
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
CrossCompilePrefix = ${targetPrefix}
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
'' + lib.optionalString (!enableProfiledLibs) ''
|
||||||
GhcLibWays = "v dyn"
|
GhcLibWays = "v dyn"
|
||||||
'' + lib.optionalString enableRelocatedStaticLibs ''
|
'' +
|
||||||
GhcLibHcOpts += -fPIC
|
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
|
||||||
GhcRtsHcOpts += -fPIC
|
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.
|
||||||
|
# This solution was described in https://www.tweag.io/blog/2020-09-30-bazel-static-haskell
|
||||||
|
lib.optionalString enableRelocatedStaticLibs ''
|
||||||
|
GhcLibHcOpts += -fPIC -fexternal-dynamic-refs
|
||||||
|
GhcRtsHcOpts += -fPIC -fexternal-dynamic-refs
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
||||||
EXTRA_CC_OPTS += -std=gnu99
|
EXTRA_CC_OPTS += -std=gnu99
|
||||||
'';
|
'';
|
||||||
|
@ -327,6 +331,10 @@ stdenv.mkDerivation (rec {
|
||||||
inherit llvmPackages;
|
inherit llvmPackages;
|
||||||
inherit enableShared;
|
inherit enableShared;
|
||||||
|
|
||||||
|
# This is used by the haskell builder to query
|
||||||
|
# the presence of the haddock program.
|
||||||
|
hasHaddock = enableHaddockProgram;
|
||||||
|
|
||||||
# Our Cabal compiler name
|
# Our Cabal compiler name
|
||||||
haskellCompilerName = "ghc-${version}";
|
haskellCompilerName = "ghc-${version}";
|
||||||
};
|
};
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
|
|
||||||
, # Whether to build dynamic libs for the standard library (on the target
|
, # Whether to build dynamic libs for the standard library (on the target
|
||||||
# platform). Static libs are always built.
|
# platform). Static libs are always built.
|
||||||
enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt
|
enableShared ? with stdenv.targetPlatform; !isWindows && !useiOSPrebuilt && !isStatic
|
||||||
|
|
||||||
, # Whether to build terminfo.
|
, # Whether to build terminfo.
|
||||||
enableTerminfo ? !stdenv.targetPlatform.isWindows
|
enableTerminfo ? !stdenv.targetPlatform.isWindows
|
||||||
|
@ -106,9 +106,13 @@ let
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
CrossCompilePrefix = ${targetPrefix}
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
'' + lib.optionalString (!enableProfiledLibs) ''
|
||||||
GhcLibWays = "v dyn"
|
GhcLibWays = "v dyn"
|
||||||
'' + lib.optionalString enableRelocatedStaticLibs ''
|
'' +
|
||||||
GhcLibHcOpts += -fPIC
|
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
|
||||||
GhcRtsHcOpts += -fPIC
|
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.
|
||||||
|
# This solution was described in https://www.tweag.io/blog/2020-09-30-bazel-static-haskell
|
||||||
|
lib.optionalString enableRelocatedStaticLibs ''
|
||||||
|
GhcLibHcOpts += -fPIC -fexternal-dynamic-refs
|
||||||
|
GhcRtsHcOpts += -fPIC -fexternal-dynamic-refs
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
||||||
EXTRA_CC_OPTS += -std=gnu99
|
EXTRA_CC_OPTS += -std=gnu99
|
||||||
'';
|
'';
|
||||||
|
@ -167,12 +171,12 @@ assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
|
||||||
assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
|
assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
|
||||||
|
|
||||||
stdenv.mkDerivation (rec {
|
stdenv.mkDerivation (rec {
|
||||||
version = "9.2.1";
|
version = "9.2.2";
|
||||||
pname = "${targetPrefix}ghc${variantSuffix}";
|
pname = "${targetPrefix}ghc${variantSuffix}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
|
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
|
||||||
sha256 = "f444012f97a136d9940f77cdff03fda48f9475e2ed0fec966c4d35c4df55f746";
|
sha256 = "902463a4cc6ee479af9358b9f8b2ee3237b03e934a1ea65b6d1fcf3e0d749ea6";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -221,6 +225,9 @@ stdenv.mkDerivation (rec {
|
||||||
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
|
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
|
||||||
'' + lib.optionalString stdenv.isDarwin ''
|
'' + lib.optionalString stdenv.isDarwin ''
|
||||||
export NIX_LDFLAGS+=" -no_dtrace_dof"
|
export NIX_LDFLAGS+=" -no_dtrace_dof"
|
||||||
|
|
||||||
|
# GHC tries the host xattr /usr/bin/xattr by default which fails since it expects python to be 2.7
|
||||||
|
export XATTR=${lib.getBin xattr}/bin/xattr
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
||||||
sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
|
sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
|
||||||
'' + lib.optionalString targetPlatform.isMusl ''
|
'' + lib.optionalString targetPlatform.isMusl ''
|
||||||
|
@ -282,10 +289,6 @@ stdenv.mkDerivation (rec {
|
||||||
autoSignDarwinBinariesHook
|
autoSignDarwinBinariesHook
|
||||||
] ++ lib.optionals enableDocs [
|
] ++ lib.optionals enableDocs [
|
||||||
sphinx
|
sphinx
|
||||||
] ++ lib.optionals stdenv.isDarwin [
|
|
||||||
# TODO(@sternenseemann): backport addition of XATTR env var like
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6447
|
|
||||||
xattr
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# For building runtime libs
|
# For building runtime libs
|
||||||
|
@ -328,6 +331,10 @@ stdenv.mkDerivation (rec {
|
||||||
inherit llvmPackages;
|
inherit llvmPackages;
|
||||||
inherit enableShared;
|
inherit enableShared;
|
||||||
|
|
||||||
|
# This is used by the haskell builder to query
|
||||||
|
# the presence of the haddock program.
|
||||||
|
hasHaddock = enableHaddockProgram;
|
||||||
|
|
||||||
# Our Cabal compiler name
|
# Our Cabal compiler name
|
||||||
haskellCompilerName = "ghc-${version}";
|
haskellCompilerName = "ghc-${version}";
|
||||||
};
|
};
|
|
@ -347,6 +347,10 @@ stdenv.mkDerivation (rec {
|
||||||
inherit llvmPackages;
|
inherit llvmPackages;
|
||||||
inherit enableShared;
|
inherit enableShared;
|
||||||
|
|
||||||
|
# This is used by the haskell builder to query
|
||||||
|
# the presence of the haddock program.
|
||||||
|
hasHaddock = enableHaddockProgram;
|
||||||
|
|
||||||
# Our Cabal compiler name
|
# Our Cabal compiler name
|
||||||
haskellCompilerName = "ghc-${version}";
|
haskellCompilerName = "ghc-${version}";
|
||||||
};
|
};
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -30,6 +30,8 @@ self: super: ({
|
||||||
|
|
||||||
double-conversion = addExtraLibrary pkgs.libcxx super.double-conversion;
|
double-conversion = addExtraLibrary pkgs.libcxx super.double-conversion;
|
||||||
|
|
||||||
|
streamly = addBuildDepend darwin.apple_sdk.frameworks.Cocoa super.streamly;
|
||||||
|
|
||||||
apecs-physics = addPkgconfigDepends [
|
apecs-physics = addPkgconfigDepends [
|
||||||
darwin.apple_sdk.frameworks.ApplicationServices
|
darwin.apple_sdk.frameworks.ApplicationServices
|
||||||
] super.apecs-physics;
|
] super.apecs-physics;
|
||||||
|
@ -287,4 +289,7 @@ self: super: ({
|
||||||
|
|
||||||
# https://github.com/fpco/inline-c/issues/127
|
# https://github.com/fpco/inline-c/issues/127
|
||||||
inline-c-cpp = dontCheck super.inline-c-cpp;
|
inline-c-cpp = dontCheck super.inline-c-cpp;
|
||||||
|
|
||||||
|
# https://github.com/haskell-crypto/cryptonite/issues/360
|
||||||
|
cryptonite = appendPatch ./patches/cryptonite-remove-argon2.patch super.cryptonite;
|
||||||
})
|
})
|
||||||
|
|
|
@ -43,15 +43,18 @@ self: super: {
|
||||||
|
|
||||||
# cabal-install needs more recent versions of Cabal and base16-bytestring.
|
# cabal-install needs more recent versions of Cabal and base16-bytestring.
|
||||||
cabal-install = super.cabal-install.overrideScope (self: super: {
|
cabal-install = super.cabal-install.overrideScope (self: super: {
|
||||||
Cabal = self.Cabal_3_6_2_0;
|
Cabal = self.Cabal_3_6_3_0;
|
||||||
});
|
});
|
||||||
|
|
||||||
# cabal-install-parsers is written for Cabal 3.6
|
# Pick right versions for GHC-specific packages
|
||||||
cabal-install-parsers = super.cabal-install-parsers.override { Cabal = super.Cabal_3_6_2_0; };
|
ghc-api-compat = doDistribute self.ghc-api-compat_8_10_7;
|
||||||
|
|
||||||
|
# ghc versions which don‘t match the ghc-lib-parser-ex version need the
|
||||||
|
# additional dependency to compile successfully.
|
||||||
|
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
||||||
|
|
||||||
# Jailbreak to fix the build.
|
# Jailbreak to fix the build.
|
||||||
base-noprelude = doJailbreak super.base-noprelude;
|
base-noprelude = doJailbreak super.base-noprelude;
|
||||||
system-fileio = doJailbreak super.system-fileio;
|
|
||||||
unliftio-core = doJailbreak super.unliftio-core;
|
unliftio-core = doJailbreak super.unliftio-core;
|
||||||
|
|
||||||
# Jailbreaking because monoidal-containers hasn‘t bumped it's base dependency for 8.10.
|
# Jailbreaking because monoidal-containers hasn‘t bumped it's base dependency for 8.10.
|
||||||
|
@ -65,9 +68,6 @@ self: super: {
|
||||||
shellmet = doJailbreak super.shellmet;
|
shellmet = doJailbreak super.shellmet;
|
||||||
shower = doJailbreak super.shower;
|
shower = doJailbreak super.shower;
|
||||||
|
|
||||||
# The shipped Setup.hs file is broken.
|
|
||||||
csv = overrideCabal (drv: { preCompileBuildDriver = "rm Setup.hs"; }) super.csv;
|
|
||||||
|
|
||||||
# Apply patch from https://github.com/finnsson/template-helper/issues/12#issuecomment-611795375 to fix the build.
|
# Apply patch from https://github.com/finnsson/template-helper/issues/12#issuecomment-611795375 to fix the build.
|
||||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||||
name = "language-haskell-extract-0.2.4.patch";
|
name = "language-haskell-extract-0.2.4.patch";
|
||||||
|
@ -84,4 +84,41 @@ self: super: {
|
||||||
|
|
||||||
mime-string = disableOptimization super.mime-string;
|
mime-string = disableOptimization super.mime-string;
|
||||||
|
|
||||||
|
# Older compilers need the latest ghc-lib to build this package.
|
||||||
|
hls-hlint-plugin = addBuildDepend self.ghc-lib super.hls-hlint-plugin;
|
||||||
|
|
||||||
|
haskell-language-server = appendConfigureFlags [
|
||||||
|
"-f-fourmolu"
|
||||||
|
"-f-stylishhaskell"
|
||||||
|
"-f-brittany"
|
||||||
|
"-f-hlint"
|
||||||
|
]
|
||||||
|
(super.haskell-language-server.override {
|
||||||
|
# Not buildable on 8.10
|
||||||
|
hls-fourmolu-plugin = null;
|
||||||
|
# https://github.com/haskell/haskell-language-server/issues/2728
|
||||||
|
hls-hlint-plugin = null;
|
||||||
|
});
|
||||||
|
|
||||||
|
# ormolu 0.3 requires Cabal == 3.4
|
||||||
|
ormolu = super.ormolu_0_2_0_0;
|
||||||
|
|
||||||
|
# weeder 2.3.0 no longer supports GHC 8.10
|
||||||
|
weeder = doDistribute (doJailbreak self.weeder_2_2_0);
|
||||||
|
|
||||||
|
# OneTuple needs hashable instead of ghc-prim for GHC < 9
|
||||||
|
OneTuple = super.OneTuple.override {
|
||||||
|
ghc-prim = self.hashable;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Doesn't build with 9.0, see https://github.com/yi-editor/yi/issues/1125
|
||||||
|
yi-core = doDistribute (markUnbroken super.yi-core);
|
||||||
|
|
||||||
|
# Temporarily disabled blaze-textual for GHC >= 9.0 causing hackage2nix ignoring it
|
||||||
|
# https://github.com/paul-rouse/mysql-simple/blob/872604f87044ff6d1a240d9819a16c2bdf4ed8f5/Database/MySQL/Internal/Blaze.hs#L4-L10
|
||||||
|
mysql-simple = addBuildDepends [
|
||||||
|
self.blaze-textual
|
||||||
|
] super.mysql-simple;
|
||||||
|
|
||||||
|
taffybar = markUnbroken (doDistribute super.taffybar);
|
||||||
}
|
}
|
||||||
|
|
|
@ -81,9 +81,6 @@ self: super: {
|
||||||
# cabal2spec needs a recent version of Cabal
|
# cabal2spec needs a recent version of Cabal
|
||||||
cabal2spec = super.cabal2spec.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
|
cabal2spec = super.cabal2spec.overrideScope (self: super: { Cabal = self.Cabal_3_2_1_0; });
|
||||||
|
|
||||||
# Builds only with ghc-8.8.x and beyond.
|
|
||||||
policeman = markBroken super.policeman;
|
|
||||||
|
|
||||||
# https://github.com/pikajude/stylish-cabal/issues/12
|
# https://github.com/pikajude/stylish-cabal/issues/12
|
||||||
stylish-cabal = doDistribute (markUnbroken (super.stylish-cabal.override { haddock-library = self.haddock-library_1_7_0; }));
|
stylish-cabal = doDistribute (markUnbroken (super.stylish-cabal.override { haddock-library = self.haddock-library_1_7_0; }));
|
||||||
haddock-library_1_7_0 = dontCheck super.haddock-library_1_7_0;
|
haddock-library_1_7_0 = dontCheck super.haddock-library_1_7_0;
|
||||||
|
|
|
@ -50,7 +50,7 @@ self: super: {
|
||||||
# cabal-install needs more recent versions of Cabal and random, but an older
|
# cabal-install needs more recent versions of Cabal and random, but an older
|
||||||
# version of base16-bytestring.
|
# version of base16-bytestring.
|
||||||
cabal-install = super.cabal-install.overrideScope (self: super: {
|
cabal-install = super.cabal-install.overrideScope (self: super: {
|
||||||
Cabal = self.Cabal_3_6_2_0;
|
Cabal = self.Cabal_3_6_3_0;
|
||||||
});
|
});
|
||||||
|
|
||||||
# Ignore overly restrictive upper version bounds.
|
# Ignore overly restrictive upper version bounds.
|
||||||
|
@ -96,9 +96,6 @@ self: super: {
|
||||||
# of issues with Cabal 3.x.
|
# of issues with Cabal 3.x.
|
||||||
darcs = dontDistribute super.darcs;
|
darcs = dontDistribute super.darcs;
|
||||||
|
|
||||||
# The package needs the latest Cabal version.
|
|
||||||
cabal-install-parsers = super.cabal-install-parsers.overrideScope (self: super: { Cabal = self.Cabal_3_6_2_0; });
|
|
||||||
|
|
||||||
# cabal-fmt requires Cabal3
|
# cabal-fmt requires Cabal3
|
||||||
cabal-fmt = super.cabal-fmt.override { Cabal = self.Cabal_3_2_1_0; };
|
cabal-fmt = super.cabal-fmt.override { Cabal = self.Cabal_3_2_1_0; };
|
||||||
|
|
||||||
|
@ -121,8 +118,7 @@ self: super: {
|
||||||
# additional dependency to compile successfully.
|
# additional dependency to compile successfully.
|
||||||
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
||||||
|
|
||||||
# Older compilers need the latest ghc-lib to build this package.
|
ormolu = super.ormolu_0_2_0_0;
|
||||||
hls-hlint-plugin = addBuildDepend self.ghc-lib super.hls-hlint-plugin;
|
|
||||||
|
|
||||||
# vector 0.12.2 indroduced doctest checks that don‘t work on older compilers
|
# vector 0.12.2 indroduced doctest checks that don‘t work on older compilers
|
||||||
vector = dontCheck super.vector;
|
vector = dontCheck super.vector;
|
||||||
|
@ -130,4 +126,28 @@ self: super: {
|
||||||
ghc-api-compat = doDistribute super.ghc-api-compat_8_6;
|
ghc-api-compat = doDistribute super.ghc-api-compat_8_6;
|
||||||
|
|
||||||
mime-string = disableOptimization super.mime-string;
|
mime-string = disableOptimization super.mime-string;
|
||||||
|
|
||||||
|
haskell-language-server = appendConfigureFlags [
|
||||||
|
"-f-fourmolu"
|
||||||
|
"-f-stylishhaskell"
|
||||||
|
"-f-brittany"
|
||||||
|
"-f-hlint"
|
||||||
|
]
|
||||||
|
(super.haskell-language-server.override {
|
||||||
|
# Not buildable on 8.8
|
||||||
|
hls-fourmolu-plugin = null;
|
||||||
|
# https://github.com/haskell/haskell-language-server/issues/2728
|
||||||
|
hls-hlint-plugin = null;
|
||||||
|
});
|
||||||
|
|
||||||
|
# OneTuple needs hashable instead of ghc-prim for GHC < 9
|
||||||
|
OneTuple = super.OneTuple.override {
|
||||||
|
ghc-prim = self.hashable;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Temporarily disabled blaze-textual for GHC >= 9.0 causing hackage2nix ignoring it
|
||||||
|
# https://github.com/paul-rouse/mysql-simple/blob/872604f87044ff6d1a240d9819a16c2bdf4ed8f5/Database/MySQL/Internal/Blaze.hs#L4-L10
|
||||||
|
mysql-simple = addBuildDepends [
|
||||||
|
self.blaze-textual
|
||||||
|
] super.mysql-simple;
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,10 +44,15 @@ self: super: {
|
||||||
|
|
||||||
# cabal-install needs more recent versions of Cabal and base16-bytestring.
|
# cabal-install needs more recent versions of Cabal and base16-bytestring.
|
||||||
cabal-install = (doJailbreak super.cabal-install).overrideScope (self: super: {
|
cabal-install = (doJailbreak super.cabal-install).overrideScope (self: super: {
|
||||||
Cabal = self.Cabal_3_6_2_0;
|
Cabal = self.Cabal_3_6_3_0;
|
||||||
});
|
});
|
||||||
|
|
||||||
# Jailbreaks & Version Updates
|
# Jailbreaks & Version Updates
|
||||||
|
|
||||||
|
# This `doJailbreak` can be removed once the following PR is released to Hackage:
|
||||||
|
# https://github.com/thsutton/aeson-diff/pull/58
|
||||||
|
aeson-diff = doJailbreak super.aeson-diff;
|
||||||
|
|
||||||
async = doJailbreak super.async;
|
async = doJailbreak super.async;
|
||||||
data-fix = doJailbreak super.data-fix;
|
data-fix = doJailbreak super.data-fix;
|
||||||
dec = doJailbreak super.dec;
|
dec = doJailbreak super.dec;
|
||||||
|
@ -60,7 +65,6 @@ self: super: {
|
||||||
lukko = doJailbreak super.lukko;
|
lukko = doJailbreak super.lukko;
|
||||||
parallel = doJailbreak super.parallel;
|
parallel = doJailbreak super.parallel;
|
||||||
primitive = doJailbreak (dontCheck super.primitive);
|
primitive = doJailbreak (dontCheck super.primitive);
|
||||||
primitive-extras = doDistribute (self.primitive-extras_0_10_1_4);
|
|
||||||
regex-posix = doJailbreak super.regex-posix;
|
regex-posix = doJailbreak super.regex-posix;
|
||||||
resolv = doJailbreak super.resolv;
|
resolv = doJailbreak super.resolv;
|
||||||
singleton-bool = doJailbreak super.singleton-bool;
|
singleton-bool = doJailbreak super.singleton-bool;
|
||||||
|
@ -71,23 +75,11 @@ self: super: {
|
||||||
vector-binary-instances = doJailbreak super.vector-binary-instances;
|
vector-binary-instances = doJailbreak super.vector-binary-instances;
|
||||||
vector-th-unbox = doJailbreak super.vector-th-unbox;
|
vector-th-unbox = doJailbreak super.vector-th-unbox;
|
||||||
zlib = doJailbreak super.zlib;
|
zlib = doJailbreak super.zlib;
|
||||||
weeder = self.weeder_2_3_0;
|
|
||||||
generic-lens-core = self.generic-lens-core_2_2_1_0;
|
|
||||||
generic-lens = self.generic-lens_2_2_1_0;
|
|
||||||
th-desugar = self.th-desugar_1_13;
|
|
||||||
# 2021-11-08: Fixed in autoapply-0.4.2
|
# 2021-11-08: Fixed in autoapply-0.4.2
|
||||||
autoapply = doJailbreak self.autoapply_0_4_1_1;
|
autoapply = doJailbreak super.autoapply;
|
||||||
|
|
||||||
# Doesn't allow Dhall 1.39.*; forbids lens 5.1
|
|
||||||
weeder_2_3_0 = doJailbreak (super.weeder_2_3_0.override {
|
|
||||||
dhall = self.dhall_1_40_2;
|
|
||||||
});
|
|
||||||
|
|
||||||
# Upstream also disables test for GHC 9: https://github.com/kcsongor/generic-lens/pull/130
|
|
||||||
generic-lens_2_2_1_0 = dontCheck super.generic-lens_2_2_1_0;
|
|
||||||
|
|
||||||
|
doctest = dontCheck super.doctest;
|
||||||
# Apply patches from head.hackage.
|
# Apply patches from head.hackage.
|
||||||
doctest = dontCheck (doJailbreak super.doctest_0_18_2);
|
|
||||||
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
language-haskell-extract = appendPatch (pkgs.fetchpatch {
|
||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/language-haskell-extract-0.2.4.patch";
|
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/language-haskell-extract-0.2.4.patch";
|
||||||
sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
|
sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
|
||||||
|
@ -99,41 +91,24 @@ self: super: {
|
||||||
# The test suite seems pretty broken.
|
# The test suite seems pretty broken.
|
||||||
base64-bytestring = dontCheck super.base64-bytestring;
|
base64-bytestring = dontCheck super.base64-bytestring;
|
||||||
|
|
||||||
# 5 introduced support for GHC 9.0.x, but hasn't landed in stackage yet
|
|
||||||
lens = super.lens_5_1;
|
|
||||||
|
|
||||||
# 0.16.0 introduced support for GHC 9.0.x, stackage has 0.15.0
|
|
||||||
memory = super.memory_0_16_0;
|
|
||||||
|
|
||||||
# GHC 9.0.x doesn't like `import Spec (main)` in Main.hs
|
# GHC 9.0.x doesn't like `import Spec (main)` in Main.hs
|
||||||
# https://github.com/snoyberg/mono-traversable/issues/192
|
# https://github.com/snoyberg/mono-traversable/issues/192
|
||||||
mono-traversable = dontCheck super.mono-traversable;
|
mono-traversable = dontCheck super.mono-traversable;
|
||||||
|
|
||||||
|
# Test suite sometimes segfaults with GHC 9.0.1 and 9.0.2
|
||||||
|
# https://github.com/ekmett/reflection/issues/51
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/21141
|
||||||
|
reflection = dontCheck super.reflection;
|
||||||
|
|
||||||
# Disable tests pending resolution of
|
# Disable tests pending resolution of
|
||||||
# https://github.com/Soostone/retry/issues/71
|
# https://github.com/Soostone/retry/issues/71
|
||||||
retry = dontCheck super.retry;
|
retry = dontCheck super.retry;
|
||||||
|
|
||||||
# Hlint needs >= 3.3.4 for ghc 9 support.
|
|
||||||
hlint = doDistribute super.hlint_3_3_6;
|
|
||||||
|
|
||||||
# 2021-09-18: ghc-api-compat and ghc-lib-* need >= 9.0.x versions for hls and hlint
|
|
||||||
ghc-api-compat = doDistribute super.ghc-api-compat_9_0_1;
|
|
||||||
ghc-lib-parser = self.ghc-lib-parser_9_0_2_20211226;
|
|
||||||
ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_0_0_6;
|
|
||||||
ghc-lib = self.ghc-lib_9_0_2_20211226;
|
|
||||||
|
|
||||||
# 2021-09-18: Need semialign >= 1.2 for correct bounds
|
|
||||||
semialign = super.semialign_1_2_0_1;
|
|
||||||
|
|
||||||
# 2021-09-18: cabal2nix does not detect the need for ghc-api-compat.
|
# 2021-09-18: cabal2nix does not detect the need for ghc-api-compat.
|
||||||
hiedb = overrideCabal (old: {
|
hiedb = overrideCabal (old: {
|
||||||
libraryHaskellDepends = old.libraryHaskellDepends ++ [self.ghc-api-compat];
|
libraryHaskellDepends = old.libraryHaskellDepends ++ [self.ghc-api-compat];
|
||||||
}) super.hiedb;
|
}) super.hiedb;
|
||||||
|
|
||||||
# 2021-09-18: Need path >= 0.9.0 for ghc 9 compat
|
|
||||||
path = self.path_0_9_0;
|
|
||||||
# 2021-09-18: Need ormolu >= 0.3.0.0 for ghc 9 compat
|
|
||||||
ormolu = doDistribute self.ormolu_0_3_1_0;
|
|
||||||
# 2021-09-18: https://github.com/haskell/haskell-language-server/issues/2206
|
# 2021-09-18: https://github.com/haskell/haskell-language-server/issues/2206
|
||||||
# Restrictive upper bound on ormolu
|
# Restrictive upper bound on ormolu
|
||||||
hls-ormolu-plugin = doJailbreak super.hls-ormolu-plugin;
|
hls-ormolu-plugin = doJailbreak super.hls-ormolu-plugin;
|
||||||
|
@ -143,18 +118,4 @@ self: super: {
|
||||||
multistate = doJailbreak super.multistate;
|
multistate = doJailbreak super.multistate;
|
||||||
# https://github.com/lspitzner/butcher/issues/7
|
# https://github.com/lspitzner/butcher/issues/7
|
||||||
butcher = doJailbreak super.butcher;
|
butcher = doJailbreak super.butcher;
|
||||||
# Fixes a bug triggered on GHC 9.0.1
|
|
||||||
text-short = self.text-short_0_1_5;
|
|
||||||
|
|
||||||
fourmolu = doJailbreak self.fourmolu_0_4_0_0;
|
|
||||||
|
|
||||||
# 2022-02-05: The following plugins don‘t work yet on ghc9.
|
|
||||||
# Compare: https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html
|
|
||||||
haskell-language-server = appendConfigureFlags [
|
|
||||||
"-f-brittany"
|
|
||||||
"-f-stylishhaskell"
|
|
||||||
] (super.haskell-language-server.override {
|
|
||||||
hls-stylish-haskell-plugin = null; # No upstream support
|
|
||||||
hls-brittany-plugin = null; # Dependencies don't build with 9.0.1
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,64 +42,42 @@ self: super: {
|
||||||
unix = null;
|
unix = null;
|
||||||
xhtml = null;
|
xhtml = null;
|
||||||
|
|
||||||
# Workaround for https://gitlab.haskell.org/ghc/ghc/-/issues/20594
|
|
||||||
tf-random = overrideCabal {
|
|
||||||
doHaddock = !pkgs.stdenv.isAarch64;
|
|
||||||
} super.tf-random;
|
|
||||||
|
|
||||||
aeson = appendPatch (pkgs.fetchpatch {
|
|
||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/aeson-1.5.6.0.patch";
|
|
||||||
sha256 = "07rk7f0lhgilxvbg2grpl1p5x25wjf9m7a0wqmi2jr0q61p9a0nl";
|
|
||||||
# The revision information is newer than that included in the patch
|
|
||||||
excludes = ["*.cabal"];
|
|
||||||
}) (doJailbreak super.aeson);
|
|
||||||
|
|
||||||
basement = overrideCabal (drv: {
|
|
||||||
# This is inside a conditional block so `doJailbreak` doesn't work
|
|
||||||
postPatch = "sed -i -e 's,<4.16,<4.17,' basement.cabal";
|
|
||||||
}) (appendPatch (pkgs.fetchpatch {
|
|
||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/basement-0.0.12.patch";
|
|
||||||
sha256 = "0c8n2krz827cv87p3vb1vpl3v0k255aysjx9lq44gz3z1dhxd64z";
|
|
||||||
}) super.basement);
|
|
||||||
|
|
||||||
# Tests fail because of typechecking changes
|
# Tests fail because of typechecking changes
|
||||||
conduit = dontCheck super.conduit;
|
conduit = dontCheck super.conduit;
|
||||||
|
|
||||||
cryptonite = appendPatch (pkgs.fetchpatch {
|
# 0.30 introduced support for GHC 9.2.x, so when this assert fails, the whole block can be removed
|
||||||
|
cryptonite = assert super.cryptonite.version == "0.29"; appendPatch (pkgs.fetchpatch {
|
||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/cryptonite-0.29.patch";
|
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/cryptonite-0.29.patch";
|
||||||
sha256 = "1g48lrmqgd88hqvfq3klz7lsrpwrir2v1931myrhh6dy0d9pqj09";
|
sha256 = "1g48lrmqgd88hqvfq3klz7lsrpwrir2v1931myrhh6dy0d9pqj09";
|
||||||
}) super.cryptonite;
|
}) super.cryptonite;
|
||||||
|
|
||||||
# cabal-install needs more recent versions of Cabal
|
# cabal-install needs more recent versions of Cabal
|
||||||
cabal-install = (doJailbreak super.cabal-install).overrideScope (self: super: {
|
cabal-install = (doJailbreak super.cabal-install).overrideScope (self: super: {
|
||||||
Cabal = self.Cabal_3_6_2_0;
|
Cabal = self.Cabal_3_6_3_0;
|
||||||
});
|
});
|
||||||
|
|
||||||
doctest = dontCheck (doJailbreak super.doctest_0_18_2);
|
doctest = dontCheck (doJailbreak super.doctest);
|
||||||
|
|
||||||
# Tests fail in GHC 9.2
|
# Tests fail in GHC 9.2
|
||||||
extra = dontCheck super.extra;
|
extra = dontCheck super.extra;
|
||||||
|
|
||||||
# Jailbreaks & Version Updates
|
# Jailbreaks & Version Updates
|
||||||
|
|
||||||
|
# This `doJailbreak` can be removed once we have doctest v0.20
|
||||||
|
aeson-diff = assert super.doctest.version == "0.18.2"; doJailbreak super.aeson-diff;
|
||||||
|
|
||||||
assoc = doJailbreak super.assoc;
|
assoc = doJailbreak super.assoc;
|
||||||
async = doJailbreak super.async;
|
async = doJailbreak super.async;
|
||||||
attoparsec = super.attoparsec_0_14_4;
|
|
||||||
base64-bytestring = doJailbreak super.base64-bytestring;
|
base64-bytestring = doJailbreak super.base64-bytestring;
|
||||||
base-compat = self.base-compat_0_12_1;
|
base-compat = self.base-compat_0_12_1;
|
||||||
base-compat-batteries = self.base-compat-batteries_0_12_1;
|
base-compat-batteries = self.base-compat-batteries_0_12_1;
|
||||||
binary-instances = doJailbreak super.binary-instances;
|
binary-instances = doJailbreak super.binary-instances;
|
||||||
binary-orphans = super.binary-orphans_1_0_2;
|
|
||||||
ChasingBottoms = doJailbreak super.ChasingBottoms;
|
ChasingBottoms = doJailbreak super.ChasingBottoms;
|
||||||
constraints = doJailbreak super.constraints;
|
constraints = doJailbreak super.constraints;
|
||||||
cpphs = overrideCabal (drv: { postPatch = "sed -i -e 's,time >=1.5 && <1.11,time >=1.5 \\&\\& <1.12,' cpphs.cabal";}) super.cpphs;
|
cpphs = overrideCabal (drv: { postPatch = "sed -i -e 's,time >=1.5 && <1.11,time >=1.5 \\&\\& <1.12,' cpphs.cabal";}) super.cpphs;
|
||||||
cryptohash-md5 = doJailbreak super.cryptohash-md5;
|
|
||||||
cryptohash-sha1 = doJailbreak super.cryptohash-sha1;
|
|
||||||
data-fix = doJailbreak super.data-fix;
|
data-fix = doJailbreak super.data-fix;
|
||||||
dec = doJailbreak super.dec;
|
dec = doJailbreak super.dec;
|
||||||
ed25519 = doJailbreak super.ed25519;
|
ed25519 = doJailbreak super.ed25519;
|
||||||
genvalidity = self.genvalidity_1_0_0_1;
|
|
||||||
genvalidity-property = self.genvalidity-property_1_0_0_0;
|
|
||||||
genvalidity-hspec = self.genvalidity-hspec_1_0_0_0;
|
|
||||||
ghc-byteorder = doJailbreak super.ghc-byteorder;
|
ghc-byteorder = doJailbreak super.ghc-byteorder;
|
||||||
ghc-exactprint = overrideCabal (drv: {
|
ghc-exactprint = overrideCabal (drv: {
|
||||||
# HACK: ghc-exactprint 1.4.1 is not buildable for GHC < 9.2,
|
# HACK: ghc-exactprint 1.4.1 is not buildable for GHC < 9.2,
|
||||||
|
@ -115,49 +93,59 @@ self: super: {
|
||||||
self.data-default
|
self.data-default
|
||||||
] ++ drv.libraryHaskellDepends or [];
|
] ++ drv.libraryHaskellDepends or [];
|
||||||
}) super.ghc-exactprint;
|
}) super.ghc-exactprint;
|
||||||
ghc-lib = self.ghc-lib_9_2_1_20220109;
|
ghc-lib = self.ghc-lib_9_2_2_20220307;
|
||||||
ghc-lib-parser = self.ghc-lib-parser_9_2_1_20220109;
|
ghc-lib-parser = self.ghc-lib-parser_9_2_2_20220307;
|
||||||
ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_2_0_1;
|
ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_2_0_3;
|
||||||
hackage-security = doJailbreak super.hackage-security;
|
hackage-security = doJailbreak super.hackage-security;
|
||||||
hashable = super.hashable_1_4_0_2;
|
hashable = super.hashable_1_4_0_2;
|
||||||
hashable-time = doJailbreak super.hashable-time_0_3;
|
hashable-time = doJailbreak super.hashable-time;
|
||||||
hedgehog = doJailbreak super.hedgehog;
|
# 1.1.1 introduced support for GHC 9.2.x, so when this assert fails, the jailbreak can be removed
|
||||||
|
hedgehog = assert super.hedgehog.version == "1.0.5"; doJailbreak super.hedgehog;
|
||||||
HTTP = overrideCabal (drv: { postPatch = "sed -i -e 's,! Socket,!Socket,' Network/TCP.hs"; }) (doJailbreak super.HTTP);
|
HTTP = overrideCabal (drv: { postPatch = "sed -i -e 's,! Socket,!Socket,' Network/TCP.hs"; }) (doJailbreak super.HTTP);
|
||||||
integer-logarithms = overrideCabal (drv: { postPatch = "sed -i -e 's, <1.1, <1.3,' integer-logarithms.cabal"; }) (doJailbreak super.integer-logarithms);
|
integer-logarithms = overrideCabal (drv: { postPatch = "sed -i -e 's, <1.1, <1.3,' integer-logarithms.cabal"; }) (doJailbreak super.integer-logarithms);
|
||||||
indexed-traversable = doJailbreak super.indexed-traversable;
|
indexed-traversable = doJailbreak super.indexed-traversable;
|
||||||
indexed-traversable-instances = doJailbreak super.indexed-traversable-instances;
|
indexed-traversable-instances = doJailbreak super.indexed-traversable-instances;
|
||||||
lifted-async = doJailbreak super.lifted-async;
|
lifted-async = doJailbreak super.lifted-async;
|
||||||
lukko = doJailbreak super.lukko;
|
lukko = doJailbreak super.lukko;
|
||||||
network = super.network_3_1_2_7;
|
lzma-conduit = doJailbreak super.lzma-conduit;
|
||||||
ormolu = self.ormolu_0_4_0_0;
|
ormolu = self.ormolu_0_4_0_0;
|
||||||
OneTuple = super.OneTuple_0_3_1;
|
|
||||||
parallel = doJailbreak super.parallel;
|
parallel = doJailbreak super.parallel;
|
||||||
path = doJailbreak super.path_0_9_2;
|
path = doJailbreak super.path;
|
||||||
polyparse = overrideCabal (drv: { postPatch = "sed -i -e 's, <0.11, <0.12,' polyparse.cabal"; }) (doJailbreak super.polyparse);
|
polyparse = overrideCabal (drv: { postPatch = "sed -i -e 's, <0.11, <0.12,' polyparse.cabal"; }) (doJailbreak super.polyparse);
|
||||||
primitive = doJailbreak super.primitive;
|
primitive = doJailbreak super.primitive;
|
||||||
quickcheck-instances = super.quickcheck-instances_0_3_27;
|
# https://github.com/protolude/protolude/pull/136
|
||||||
|
protolude = appendPatches [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/protolude/protolude/commit/47820a36c25ea6f0c6e44382f7d4f3507358b8e7.diff";
|
||||||
|
sha256 = "sha256-PtHx5SyTgqFzI03YVeQD+RqglO6ASMQWSxdpy4ROMDY=";
|
||||||
|
})
|
||||||
|
] (doJailbreak super.protolude);
|
||||||
regex-posix = doJailbreak super.regex-posix;
|
regex-posix = doJailbreak super.regex-posix;
|
||||||
resolv = doJailbreak super.resolv;
|
resolv = doJailbreak super.resolv;
|
||||||
retrie = doDistribute (dontCheck self.retrie_1_2_0_1);
|
retrie = doDistribute (dontCheck self.retrie_1_2_0_1);
|
||||||
semialign = super.semialign_1_2_0_1;
|
|
||||||
singleton-bool = doJailbreak super.singleton-bool;
|
singleton-bool = doJailbreak super.singleton-bool;
|
||||||
scientific = doJailbreak super.scientific;
|
servant = doJailbreak super.servant;
|
||||||
|
servant-auth = doJailbreak super.servant-auth;
|
||||||
|
servant-server = appendPatches [
|
||||||
|
# awaiting release
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/haskell-servant/servant/commit/61d0d14b5cb01db3d589101b3f17b0178f52e386.diff";
|
||||||
|
relative = "servant-server";
|
||||||
|
sha256 = "sha256-3lM8xLO8avVRo8oncJR8QLDSWEzOaoCmzgVtyaEBEw8=";
|
||||||
|
})
|
||||||
|
] (doJailbreak super.servant-server);
|
||||||
|
servant-swagger = doJailbreak super.servant-swagger;
|
||||||
|
servant-auth-swagger = doJailbreak super.servant-auth-swagger;
|
||||||
shelly = doJailbreak super.shelly;
|
shelly = doJailbreak super.shelly;
|
||||||
split = doJailbreak super.split;
|
|
||||||
splitmix = doJailbreak super.splitmix;
|
splitmix = doJailbreak super.splitmix;
|
||||||
tar = doJailbreak super.tar;
|
|
||||||
tasty-hedgehog = doJailbreak super.tasty-hedgehog;
|
|
||||||
tasty-hspec = doJailbreak super.tasty-hspec;
|
tasty-hspec = doJailbreak super.tasty-hspec;
|
||||||
th-desugar = self.th-desugar_1_13;
|
th-desugar = self.th-desugar_1_13;
|
||||||
these = doJailbreak super.these;
|
time-compat = doJailbreak super.time-compat;
|
||||||
time-compat = doJailbreak super.time-compat_1_9_6_1;
|
tomland = doJailbreak super.tomland;
|
||||||
type-equality = doJailbreak super.type-equality;
|
type-equality = doJailbreak super.type-equality;
|
||||||
unordered-containers = doJailbreak super.unordered-containers;
|
unordered-containers = doJailbreak super.unordered-containers;
|
||||||
vector = doJailbreak (dontCheck super.vector);
|
vector = dontCheck super.vector;
|
||||||
vector-binary-instances = doJailbreak super.vector-binary-instances;
|
vector-binary-instances = doJailbreak super.vector-binary-instances;
|
||||||
# Upper bound on `hashable` is too restrictive
|
|
||||||
witherable = doJailbreak super.witherable;
|
|
||||||
zlib = doJailbreak super.zlib;
|
|
||||||
|
|
||||||
hpack = overrideCabal (drv: {
|
hpack = overrideCabal (drv: {
|
||||||
# Cabal 3.6 seems to preserve comments when reading, which makes this test fail
|
# Cabal 3.6 seems to preserve comments when reading, which makes this test fail
|
||||||
|
@ -167,7 +155,7 @@ self: super: {
|
||||||
] ++ drv.testFlags or [];
|
] ++ drv.testFlags or [];
|
||||||
}) (doJailbreak super.hpack);
|
}) (doJailbreak super.hpack);
|
||||||
|
|
||||||
validity = pkgs.lib.pipe super.validity_0_12_0_0 [
|
validity = pkgs.lib.pipe super.validity [
|
||||||
# head.hackage patch
|
# head.hackage patch
|
||||||
(appendPatch (pkgs.fetchpatch {
|
(appendPatch (pkgs.fetchpatch {
|
||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/9110e6972b5daf085e19cad41f97920d3ddac499/patches/validity-0.12.0.0.patch";
|
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/9110e6972b5daf085e19cad41f97920d3ddac499/patches/validity-0.12.0.0.patch";
|
||||||
|
@ -192,32 +180,14 @@ self: super: {
|
||||||
# Tests depend on `parseTime` which is no longer available
|
# Tests depend on `parseTime` which is no longer available
|
||||||
hourglass = dontCheck super.hourglass;
|
hourglass = dontCheck super.hourglass;
|
||||||
|
|
||||||
# 1.2.1 introduced support for GHC 9.2.1, stackage has 1.2.0
|
# 0.17.0 introduced support for GHC 9.2.x, so when this assert fails, the whole block can be removed
|
||||||
# The test suite indirectly depends on random, which leads to infinite recursion
|
memory = assert super.memory.version == "0.16.0"; appendPatch (pkgs.fetchpatch {
|
||||||
random = dontCheck super.random_1_2_1;
|
|
||||||
|
|
||||||
# 0.16.0 introduced support for GHC 9.0.x, stackage has 0.15.0
|
|
||||||
memory = appendPatch (pkgs.fetchpatch {
|
|
||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/memory-0.16.0.patch";
|
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/memory-0.16.0.patch";
|
||||||
sha256 = "1kjganx729a6xfgfnrb3z7q6mvnidl042zrsd9n5n5a3i76nl5nl";
|
sha256 = "1kjganx729a6xfgfnrb3z7q6mvnidl042zrsd9n5n5a3i76nl5nl";
|
||||||
}) (overrideCabal {
|
}) (overrideCabal {
|
||||||
editedCabalFile = null;
|
editedCabalFile = null;
|
||||||
revision = null;
|
revision = null;
|
||||||
} super.memory_0_16_0);
|
} super.memory);
|
||||||
|
|
||||||
# GHC 9.0.x doesn't like `import Spec (main)` in Main.hs
|
|
||||||
# https://github.com/snoyberg/mono-traversable/issues/192
|
|
||||||
mono-traversable = dontCheck super.mono-traversable;
|
|
||||||
|
|
||||||
# Disable tests pending resolution of
|
|
||||||
# https://github.com/Soostone/retry/issues/71
|
|
||||||
retry = dontCheck super.retry;
|
|
||||||
|
|
||||||
# Upper bound on `hashable` is too restrictive
|
|
||||||
semigroupoids = overrideCabal (drv: { postPatch = "sed -i -e 's,hashable >= 1.2.7.0 && < 1.4,hashable >= 1.2.7.0 \\&\\& < 1.5,' semigroupoids.cabal";}) super.semigroupoids;
|
|
||||||
|
|
||||||
# Tests have a circular dependency on quickcheck-instances
|
|
||||||
text-short = dontCheck super.text-short_0_1_5;
|
|
||||||
|
|
||||||
# Use hlint from git for GHC 9.2.1 support
|
# Use hlint from git for GHC 9.2.1 support
|
||||||
hlint = doDistribute (
|
hlint = doDistribute (
|
||||||
|
@ -229,10 +199,7 @@ self: super: {
|
||||||
rev = "77a9702e10b772a7695c08682cd4f450fd0e9e46";
|
rev = "77a9702e10b772a7695c08682cd4f450fd0e9e46";
|
||||||
sha256 = "0hpp3iw7m7w2abr8vb86gdz3x6c8lj119zxln933k90ia7bmk8jc";
|
sha256 = "0hpp3iw7m7w2abr8vb86gdz3x6c8lj119zxln933k90ia7bmk8jc";
|
||||||
};
|
};
|
||||||
} (super.hlint_3_3_6.overrideScope (self: super: {
|
} super.hlint
|
||||||
ghc-lib-parser = self.ghc-lib-parser_9_2_1_20220109;
|
|
||||||
ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_2_0_1;
|
|
||||||
}))
|
|
||||||
);
|
);
|
||||||
|
|
||||||
# https://github.com/sjakobi/bsb-http-chunked/issues/38
|
# https://github.com/sjakobi/bsb-http-chunked/issues/38
|
||||||
|
@ -244,14 +211,14 @@ self: super: {
|
||||||
some = doJailbreak super.some;
|
some = doJailbreak super.some;
|
||||||
fourmolu = super.fourmolu_0_5_0_1;
|
fourmolu = super.fourmolu_0_5_0_1;
|
||||||
implicit-hie-cradle = doJailbreak super.implicit-hie-cradle;
|
implicit-hie-cradle = doJailbreak super.implicit-hie-cradle;
|
||||||
lucid = doJailbreak super.lucid;
|
# 1.3 introduced support for GHC 9.2.x, so when this assert fails, the jailbreak can be removed
|
||||||
hashtables = doJailbreak super.hashtables;
|
hashtables = assert super.hashtables.version == "1.2.4.2"; doJailbreak super.hashtables;
|
||||||
primitive-extras = super.primitive-extras_0_10_1_4;
|
|
||||||
hiedb = doJailbreak super.hiedb;
|
hiedb = doJailbreak super.hiedb;
|
||||||
|
|
||||||
# 2022-02-05: The following plugins don‘t work yet on ghc9.2.
|
# 2022-02-05: The following plugins don‘t work yet on ghc9.2.
|
||||||
# Compare: https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html
|
# Compare: https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html
|
||||||
haskell-language-server = appendConfigureFlags [
|
haskell-language-server = overrideCabal (old: {libraryHaskellDepends = builtins.filter (x: x != super.hls-tactics-plugin) old.libraryHaskellDepends;})
|
||||||
|
(appendConfigureFlags [
|
||||||
"-f-alternateNumberFormat"
|
"-f-alternateNumberFormat"
|
||||||
"-f-class"
|
"-f-class"
|
||||||
"-f-eval"
|
"-f-eval"
|
||||||
|
@ -260,8 +227,6 @@ self: super: {
|
||||||
"-f-retrie"
|
"-f-retrie"
|
||||||
"-f-splice"
|
"-f-splice"
|
||||||
"-f-tactics"
|
"-f-tactics"
|
||||||
"-f-brittany"
|
|
||||||
"-f-stylish-haskell"
|
|
||||||
] (super.haskell-language-server.override {
|
] (super.haskell-language-server.override {
|
||||||
hls-alternate-number-format-plugin = null;
|
hls-alternate-number-format-plugin = null;
|
||||||
hls-class-plugin = null;
|
hls-class-plugin = null;
|
||||||
|
@ -270,8 +235,5 @@ self: super: {
|
||||||
hls-hlint-plugin = null;
|
hls-hlint-plugin = null;
|
||||||
hls-retrie-plugin = null;
|
hls-retrie-plugin = null;
|
||||||
hls-splice-plugin = null;
|
hls-splice-plugin = null;
|
||||||
hls-tactics-plugin = null;
|
}));
|
||||||
hls-brittany-plugin = null;
|
|
||||||
hls-stylish-haskell-plugin = null;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,38 +1,39 @@
|
||||||
# pkgs/development/haskell-modules/configuration-hackage2nix.yaml
|
# pkgs/development/haskell-modules/configuration-hackage2nix.yaml
|
||||||
|
|
||||||
compiler: ghc-8.10.7
|
compiler: ghc-9.0.2
|
||||||
|
|
||||||
core-packages:
|
core-packages:
|
||||||
- array-0.5.4.0
|
- array-0.5.4.0
|
||||||
- base-4.14.1.0
|
- base-4.15.1.0
|
||||||
- binary-0.8.8.0
|
- binary-0.8.8.0
|
||||||
- bytestring-0.10.12.0
|
- bytestring-0.10.12.1
|
||||||
- Cabal-3.2.1.0
|
- Cabal-3.4.1.0
|
||||||
- containers-0.6.2.1
|
- containers-0.6.4.1
|
||||||
- deepseq-1.4.4.0
|
- deepseq-1.4.5.0
|
||||||
- directory-1.3.6.0
|
- directory-1.3.6.2
|
||||||
- exceptions-0.10.4
|
- exceptions-0.10.4
|
||||||
- filepath-1.4.2.1
|
- filepath-1.4.2.1
|
||||||
- ghc-8.10.4
|
- ghc-9.0.2
|
||||||
- ghc-boot-8.10.4
|
- ghc-bignum-1.1
|
||||||
- ghc-boot-th-8.10.4
|
- ghc-boot-9.0.2
|
||||||
|
- ghc-boot-th-9.0.2
|
||||||
- ghc-compact-0.1.0.0
|
- ghc-compact-0.1.0.0
|
||||||
- ghc-heap-8.10.4
|
- ghc-heap-9.0.2
|
||||||
- ghc-prim-0.6.1
|
- ghc-prim-0.7.0
|
||||||
- ghci-8.10.4
|
- ghci-9.0.2
|
||||||
- haskeline-0.8.0.1
|
- haskeline-0.8.2
|
||||||
- hpc-0.6.1.0
|
- hpc-0.6.1.0
|
||||||
- integer-gmp-1.0.3.0
|
- integer-gmp-1.1
|
||||||
- libiserv-8.10.4
|
- libiserv-9.0.2
|
||||||
- mtl-2.2.2
|
- mtl-2.2.2
|
||||||
- parsec-3.1.14.0
|
- parsec-3.1.14.0
|
||||||
- pretty-1.1.3.6
|
- pretty-1.1.3.6
|
||||||
- process-1.6.9.0
|
- process-1.6.13.2
|
||||||
- rts-1.0
|
- rts-1.0.2
|
||||||
- stm-2.5.0.0
|
- stm-2.5.0.0
|
||||||
- template-haskell-2.16.0.0
|
- template-haskell-2.17.0.0
|
||||||
- terminfo-0.4.1.4
|
- terminfo-0.4.1.5
|
||||||
- text-1.2.4.1
|
- text-1.2.5.0
|
||||||
- time-1.9.3
|
- time-1.9.3
|
||||||
- transformers-0.5.6.2
|
- transformers-0.5.6.2
|
||||||
- unix-2.7.2.2
|
- unix-2.7.2.2
|
||||||
|
@ -70,74 +71,24 @@ default-package-overrides:
|
||||||
# gi-gdkx11-4.x requires gtk-4.x, which is still under development and
|
# gi-gdkx11-4.x requires gtk-4.x, which is still under development and
|
||||||
# not yet available in Nixpkgs
|
# not yet available in Nixpkgs
|
||||||
- gi-gdkx11 < 4
|
- gi-gdkx11 < 4
|
||||||
# streamly-* packages which are not in stackage and to be constrained
|
|
||||||
# as long as we have streamly < 0.8.0
|
|
||||||
- streamly-archive < 0.1.0
|
|
||||||
- streamly-bytestring < 0.1.3
|
|
||||||
- streamly-lmdb < 0.3.0
|
|
||||||
- streamly-process
|
|
||||||
# dhall-nix is not part of stackage, remove if dhall >= 1.40
|
|
||||||
- dhall-nix < 1.1.22
|
|
||||||
# reflex-dom-pandoc is only used by neuron which needs a version < 1.0.0.0
|
# reflex-dom-pandoc is only used by neuron which needs a version < 1.0.0.0
|
||||||
- reflex-dom-pandoc < 1.0.0.0
|
- reflex-dom-pandoc < 1.0.0.0
|
||||||
# 2021-09-07: pin to our current GHC version
|
# 2022-02-18: pin to our current GHC version
|
||||||
- ghc-api-compat == 8.10.7
|
- ghc-api-compat == 9.0.*
|
||||||
# 2021-10-13: weeder 2.3.0 require GHC == 9.0.*; remove pin when GHC version changes
|
|
||||||
- weeder < 2.3.0
|
|
||||||
# 2021-10-10: taskwarrior 0.4 requires aeson > 2.0.1.0
|
|
||||||
- taskwarrior < 0.4.0.0
|
|
||||||
# 2021-10-19: autoapply 0.4.1.1 requires th-desugar 1.12
|
|
||||||
- autoapply < 0.4.1.1
|
|
||||||
# 2021-10-22: 1.8 breaks shake-bench
|
|
||||||
- SVGFonts < 1.8
|
|
||||||
# 2021-11-09: 0.20.6 can't be built with aeson < 2.0 which is a pain to override at the moment
|
|
||||||
- futhark < 0.20.6
|
|
||||||
# 2021-11-09: ghc-bignum is bundled starting with 9.0.1; only 1.0 builds with GHCs prior to 9.2.1
|
# 2021-11-09: ghc-bignum is bundled starting with 9.0.1; only 1.0 builds with GHCs prior to 9.2.1
|
||||||
- ghc-bignum == 1.0
|
- ghc-bignum == 1.0
|
||||||
# 2021-11-18: lucid-{alpine, htmx} are not in stackage, so we need to downgrade them
|
|
||||||
- lucid-alpine == 0.1.0.2
|
|
||||||
- lucid-htmx == 0.1.0.2
|
|
||||||
# 2021-11-21: restrict haskell-gi-related packages to match stackage version (0.25)
|
|
||||||
- gi-girepository < 1.0.25
|
|
||||||
- gi-ggit < 1.0.11
|
|
||||||
- gi-gst < 1.0.25
|
|
||||||
- gi-gstaudio < 1.0.24
|
|
||||||
- gi-gstbase < 1.0.25
|
|
||||||
- gi-gstvideo < 1.0.25
|
|
||||||
- gi-gtksource < 3.0.25
|
|
||||||
- gi-ibus < 1.5.4
|
|
||||||
- gi-javascriptcore < 4.0.24
|
|
||||||
- gi-ostree < 1.0.15
|
|
||||||
- gi-notify < 0.7.24
|
|
||||||
- gi-pangocairo < 1.0.26
|
|
||||||
- gi-poppler < 0.18.26
|
|
||||||
- gi-secret < 0.0.14
|
|
||||||
- gi-soup < 2.4.25
|
|
||||||
- gi-vte < 2.91.29
|
|
||||||
- gi-webkit2 < 4.0.28
|
|
||||||
- gi-webkit2webextension < 4.0.27
|
|
||||||
- gi-wnck < 3.0.11
|
|
||||||
# gi-cogl, gi-coglpango, gi-clutter, gi-json, gi-rsvg are only available for haskell-gi >= 0.26
|
|
||||||
# 1.2.1.0 needs opaleye >= 0.8 which stackage doesn't provide
|
|
||||||
- rel8 < 1.2.1.0
|
|
||||||
# 0.14.0.0 drops support for every GHC < 9.0.1
|
|
||||||
- brittany < 0.14
|
|
||||||
# 1.2.0.0: “Dropped support for GHC <9.2 (might readd it later)”
|
# 1.2.0.0: “Dropped support for GHC <9.2 (might readd it later)”
|
||||||
- retrie < 1.2.0.0
|
- retrie < 1.2.0.0
|
||||||
# Compat with polysemy in Stackage LTS 18
|
|
||||||
- polysemy-resume < 0.1.0.2
|
|
||||||
- polysemy-conc < 0.5
|
|
||||||
- polysemy-mocks < 0.2
|
|
||||||
# Pinning patch because it is mainly used by the reflex-frp ecosystem which is not yet compatible with it.
|
|
||||||
# https://github.com/reflex-frp/reflex-dom/issues/431
|
|
||||||
- patch < 0.0.5.0
|
|
||||||
# On the recommendation of hnix author:
|
# On the recommendation of hnix author:
|
||||||
# https://github.com/NixOS/nixpkgs/pull/154461#issuecomment-1015511883
|
# https://github.com/NixOS/nixpkgs/pull/154461#issuecomment-1015511883
|
||||||
- hnix < 0.15
|
- hnix < 0.15
|
||||||
# needs http-client >= 0.7.11 which isn't part of Stackage LTS 18
|
# needs http-client >= 0.7.11 which isn't part of Stackage LTS 18
|
||||||
- http-client-restricted < 0.0.5
|
- http-client-restricted < 0.0.5
|
||||||
|
# Needs dhall 1.41.*, Stackage Nightly has 1.40
|
||||||
|
- dhall-nix < 1.1.24
|
||||||
|
|
||||||
extra-packages:
|
extra-packages:
|
||||||
|
- aeson < 2 # required by pantry-0.5.2
|
||||||
- base16-bytestring < 1 # required for cabal-install etc.
|
- base16-bytestring < 1 # required for cabal-install etc.
|
||||||
- Cabal == 2.2.* # required for jailbreak-cabal etc.
|
- Cabal == 2.2.* # required for jailbreak-cabal etc.
|
||||||
- Cabal == 2.4.* # required for cabal-install etc.
|
- Cabal == 2.4.* # required for cabal-install etc.
|
||||||
|
@ -158,19 +109,26 @@ extra-packages:
|
||||||
- mmorph == 1.1.3 # Newest working version of mmorph on ghc 8.6.5. needed for hls
|
- mmorph == 1.1.3 # Newest working version of mmorph on ghc 8.6.5. needed for hls
|
||||||
- network == 2.6.3.1 # required by pkgs/games/hedgewars/default.nix, 2020-11-15
|
- network == 2.6.3.1 # required by pkgs/games/hedgewars/default.nix, 2020-11-15
|
||||||
- optparse-applicative < 0.16 # needed for niv-0.2.19
|
- optparse-applicative < 0.16 # needed for niv-0.2.19
|
||||||
|
- pantry == 0.5.2.1 # needed for stack-2.7.3
|
||||||
- resolv == 0.1.1.2 # required to build cabal-install-3.0.0.0 with pre ghc-8.8.x
|
- resolv == 0.1.1.2 # required to build cabal-install-3.0.0.0 with pre ghc-8.8.x
|
||||||
- sbv == 7.13 # required for pkgs.petrinizer
|
- sbv == 7.13 # required for pkgs.petrinizer
|
||||||
- crackNum < 3.0 # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
|
- crackNum < 3.0 # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
|
||||||
- ghc-api-compat == 8.6 # 2021-09-07: preserve for GHC 8.8.4
|
- ghc-api-compat == 8.6 # 2021-09-07: preserve for GHC 8.8.4
|
||||||
- ghc-lib == 9.0.* # 2021-11-05: Need one GHC 9.0.2 compatible version
|
- ghc-api-compat == 8.10.7 # 2022-02-17: preserve for GHC 8.10.7
|
||||||
- ghc-lib-parser == 9.0.* # 2021-11-05: Need one GHC 9.0.2 compatible version
|
- ghc-lib == 8.10.7.* # 2022-02-17: preserve for GHC 8.10.7
|
||||||
- ghc-lib-parser-ex == 9.0.* # 2021-11-05: Need one GHC 9.0.2 compatible version
|
- ghc-lib-parser == 8.10.7.* # 2022-02-17: preserve for GHC 8.10.7
|
||||||
|
- ghc-lib-parser-ex == 8.10.* # 2022-02-17: preserve for GHC 8.10.7
|
||||||
- doctest == 0.18.* # 2021-11-19: closest to stackage version for GHC 9.*
|
- doctest == 0.18.* # 2021-11-19: closest to stackage version for GHC 9.*
|
||||||
- brick == 0.64.* # 2021-12-03: matterhorn depends on brick < 0.65
|
- brick == 0.64.* # 2021-12-03: matterhorn depends on brick < 0.65
|
||||||
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.2
|
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.2
|
||||||
- ormolu == 0.3.* # 2021-12-03: for HLS with GHC 9.0.2
|
- ormolu == 0.2.* # 2022-02-21: For ghc 8.8 and 8.10
|
||||||
- fourmolu == 0.4.* # 2022-02-05: for HLS with GHC 9.0.2
|
|
||||||
- ghc-exactprint == 1.4.* # 2022-02-07: preserve for now, 1.5.0 has a breaking change without type changes
|
- ghc-exactprint == 1.4.* # 2022-02-07: preserve for now, 1.5.0 has a breaking change without type changes
|
||||||
|
- ShellCheck == 0.7.2 # 2022-02-20: haskell-ci 0.14 needs this
|
||||||
|
- weeder == 2.2.* # 2022-02-21: preserve for GHC 8.10.7
|
||||||
|
- attoparsec == 0.13.* # 2022-02-23: Needed to compile elm for now
|
||||||
|
- relude == 0.7.0.0 # 2022-02-25: Needed for ema 0.6
|
||||||
|
- SVGFonts < 1.8 # 2022-03-19: Needed for Chart-diagrams 1.9.3
|
||||||
|
- clay < 0.14 # 2022-03-20: Needed for neuron 1.0.0.0
|
||||||
|
|
||||||
package-maintainers:
|
package-maintainers:
|
||||||
abbradar:
|
abbradar:
|
||||||
|
@ -191,6 +149,7 @@ package-maintainers:
|
||||||
- pretty-simple
|
- pretty-simple
|
||||||
- purenix
|
- purenix
|
||||||
- spago
|
- spago
|
||||||
|
- stack
|
||||||
- termonad
|
- termonad
|
||||||
dalpd:
|
dalpd:
|
||||||
- ghc-vis
|
- ghc-vis
|
||||||
|
@ -290,7 +249,6 @@ package-maintainers:
|
||||||
- cabal-fmt
|
- cabal-fmt
|
||||||
- ema
|
- ema
|
||||||
- generic-optics
|
- generic-optics
|
||||||
- ghcup
|
|
||||||
- ghcid
|
- ghcid
|
||||||
- ghcide
|
- ghcide
|
||||||
- haskell-language-server
|
- haskell-language-server
|
||||||
|
@ -436,6 +394,7 @@ unsupported-platforms:
|
||||||
bindings-sane: [ x86_64-darwin, aarch64-darwin ]
|
bindings-sane: [ x86_64-darwin, aarch64-darwin ]
|
||||||
btrfs: [ x86_64-darwin, aarch64-darwin ] # depends on linux
|
btrfs: [ x86_64-darwin, aarch64-darwin ] # depends on linux
|
||||||
bustle: [ x86_64-darwin, aarch64-darwin ] # uses glibc-specific ptsname_r
|
bustle: [ x86_64-darwin, aarch64-darwin ] # uses glibc-specific ptsname_r
|
||||||
|
camfort: [ aarch64-linux ]
|
||||||
charsetdetect: [ aarch64-linux ] # not supported by vendored lib / not configured properly https://github.com/batterseapower/libcharsetdetect/issues/3
|
charsetdetect: [ aarch64-linux ] # not supported by vendored lib / not configured properly https://github.com/batterseapower/libcharsetdetect/issues/3
|
||||||
cut-the-crap: [ x86_64-darwin, aarch64-darwin ]
|
cut-the-crap: [ x86_64-darwin, aarch64-darwin ]
|
||||||
d3d11binding: [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
|
d3d11binding: [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
|
||||||
|
@ -453,19 +412,21 @@ unsupported-platforms:
|
||||||
gi-dbusmenugtk3: [ x86_64-darwin, aarch64-darwin ]
|
gi-dbusmenugtk3: [ x86_64-darwin, aarch64-darwin ]
|
||||||
gi-dbusmenu: [ x86_64-darwin, aarch64-darwin ]
|
gi-dbusmenu: [ x86_64-darwin, aarch64-darwin ]
|
||||||
gi-ggit: [ x86_64-darwin, aarch64-darwin ]
|
gi-ggit: [ x86_64-darwin, aarch64-darwin ]
|
||||||
|
gi-gtkosxapplication: [ x86_64-linux, aarch64-linux ]
|
||||||
gi-ibus: [ x86_64-darwin, aarch64-darwin ]
|
gi-ibus: [ x86_64-darwin, aarch64-darwin ]
|
||||||
gi-javascriptcore: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
gi-javascriptcore: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
||||||
gi-ostree: [ x86_64-darwin, aarch64-darwin ]
|
gi-ostree: [ x86_64-darwin, aarch64-darwin ]
|
||||||
gi-vte: [ x86_64-darwin, aarch64-darwin ]
|
gi-vte: [ x86_64-darwin, aarch64-darwin ]
|
||||||
gi-webkit2: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
|
||||||
gi-webkit2webextension: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
gi-webkit2webextension: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
||||||
|
gi-webkit2: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
||||||
gi-wnck: [ x86_64-darwin, aarch64-darwin ]
|
gi-wnck: [ x86_64-darwin, aarch64-darwin ]
|
||||||
gnome-keyring: [ x86_64-darwin, aarch64-darwin ]
|
gnome-keyring: [ x86_64-darwin, aarch64-darwin ]
|
||||||
|
gtk3-mac-integration: [ x86_64-linux, aarch64-linux ]
|
||||||
gtk-mac-integration: [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
|
gtk-mac-integration: [ i686-linux, x86_64-linux, aarch64-linux, armv7l-linux ]
|
||||||
gtk-sni-tray: [ x86_64-darwin, aarch64-darwin ]
|
gtk-sni-tray: [ x86_64-darwin, aarch64-darwin ]
|
||||||
haskell-snake: [ x86_64-darwin, aarch64-darwin ]
|
haskell-snake: [ x86_64-darwin, aarch64-darwin ]
|
||||||
hbro: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
|
||||||
hbro-contrib: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
hbro-contrib: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
||||||
|
hbro: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
|
||||||
hcwiid: [ x86_64-darwin, aarch64-darwin ]
|
hcwiid: [ x86_64-darwin, aarch64-darwin ]
|
||||||
HFuse: [ x86_64-darwin, aarch64-darwin ]
|
HFuse: [ x86_64-darwin, aarch64-darwin ]
|
||||||
hidapi: [ x86_64-darwin, aarch64-darwin ]
|
hidapi: [ x86_64-darwin, aarch64-darwin ]
|
||||||
|
@ -478,6 +439,11 @@ unsupported-platforms:
|
||||||
iwlib: [ x86_64-darwin, aarch64-darwin ]
|
iwlib: [ x86_64-darwin, aarch64-darwin ]
|
||||||
Jazzkell: [ x86_64-darwin, aarch64-darwin ] # depends on Euterpea
|
Jazzkell: [ x86_64-darwin, aarch64-darwin ] # depends on Euterpea
|
||||||
jsaddle-webkit2gtk: [ x86_64-darwin, aarch64-darwin ]
|
jsaddle-webkit2gtk: [ x86_64-darwin, aarch64-darwin ]
|
||||||
|
keid-core: [ aarch64-linux ]
|
||||||
|
keid-geometry: [ aarch64-linux ]
|
||||||
|
keid-render-basic: [ aarch64-linux ]
|
||||||
|
keid-sound-openal: [ aarch64-linux ]
|
||||||
|
keid-ui-dearimgui: [ aarch64-linux ]
|
||||||
kqueue: [ x86_64-linux, aarch64-linux, i686-linux, armv7l-linux ] # BSD / Darwin only API
|
kqueue: [ x86_64-linux, aarch64-linux, i686-linux, armv7l-linux ] # BSD / Darwin only API
|
||||||
Kulitta: [ x86_64-darwin, aarch64-darwin ] # depends on Euterpea
|
Kulitta: [ x86_64-darwin, aarch64-darwin ] # depends on Euterpea
|
||||||
LambdaHack: [ x86_64-darwin, aarch64-darwin ]
|
LambdaHack: [ x86_64-darwin, aarch64-darwin ]
|
||||||
|
@ -494,6 +460,7 @@ unsupported-platforms:
|
||||||
linux-namespaces: [ x86_64-darwin, aarch64-darwin ]
|
linux-namespaces: [ x86_64-darwin, aarch64-darwin ]
|
||||||
lio-fs: [ x86_64-darwin, aarch64-darwin ]
|
lio-fs: [ x86_64-darwin, aarch64-darwin ]
|
||||||
logging-facade-journald: [ x86_64-darwin, aarch64-darwin ]
|
logging-facade-journald: [ x86_64-darwin, aarch64-darwin ]
|
||||||
|
longshot: [ aarch64-linux ]
|
||||||
midi-alsa: [ x86_64-darwin, aarch64-darwin ]
|
midi-alsa: [ x86_64-darwin, aarch64-darwin ]
|
||||||
mpi-hs: [ aarch64-linux, x86_64-darwin, aarch64-darwin ]
|
mpi-hs: [ aarch64-linux, x86_64-darwin, aarch64-darwin ]
|
||||||
mpi-hs-binary: [ aarch64-linux, x86_64-darwin, aarch64-darwin ]
|
mpi-hs-binary: [ aarch64-linux, x86_64-darwin, aarch64-darwin ]
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user