Merge master into staging-next
This commit is contained in:
		
						commit
						f6b39f852e
					
				@ -26,7 +26,7 @@
 | 
			
		||||
   </listitem>
 | 
			
		||||
   <listitem>
 | 
			
		||||
    <para>
 | 
			
		||||
     <literal>packages</literal>: a set of package sets, each compiled with a specific Erlang/OTP version, e.g. <literal>beam.packages.erlangR19</literal>.
 | 
			
		||||
     <literal>packages</literal>: a set of package builders (Mix and rebar3), each compiled with a specific Erlang/OTP version, e.g. <literal>beam.packages.erlangR19</literal>.
 | 
			
		||||
    </para>
 | 
			
		||||
   </listitem>
 | 
			
		||||
  </itemizedlist>
 | 
			
		||||
@ -36,15 +36,11 @@
 | 
			
		||||
  </para>
 | 
			
		||||
 | 
			
		||||
  <para>
 | 
			
		||||
   To create a package set built with a custom Erlang version, use the lambda, <literal>beam.packagesWith</literal>, which accepts an Erlang/OTP derivation and produces a package set similar to <literal>beam.packages.erlang</literal>.
 | 
			
		||||
   To create a package builder built with a custom Erlang version, use the lambda, <literal>beam.packagesWith</literal>, which accepts an Erlang/OTP derivation and produces a package builder similar to <literal>beam.packages.erlang</literal>.
 | 
			
		||||
  </para>
 | 
			
		||||
 | 
			
		||||
  <para>
 | 
			
		||||
   Many Erlang/OTP distributions available in <literal>beam.interpreters</literal> have versions with ODBC and/or Java enabled. For example, there's <literal>beam.interpreters.erlangR19_odbc_javac</literal>, which corresponds to <literal>beam.interpreters.erlangR19</literal>.
 | 
			
		||||
  </para>
 | 
			
		||||
 | 
			
		||||
  <para xml:id="erlang-call-package">
 | 
			
		||||
   We also provide the lambda, <literal>beam.packages.erlang.callPackage</literal>, which simplifies writing BEAM package definitions by injecting all packages from <literal>beam.packages.erlang</literal> into the top-level context.
 | 
			
		||||
   Many Erlang/OTP distributions available in <literal>beam.interpreters</literal> have versions with ODBC and/or Java enabled or without wx (no observer support). For example, there's <literal>beam.interpreters.erlangR22_odbc_javac</literal>, which corresponds to <literal>beam.interpreters.erlangR22</literal> and <literal>beam.interpreters.erlangR22_nox</literal>, which corresponds to <literal>beam.interpreters.erlangR22</literal>.
 | 
			
		||||
  </para>
 | 
			
		||||
 </section>
 | 
			
		||||
 | 
			
		||||
@ -55,7 +51,7 @@
 | 
			
		||||
   <title>Rebar3</title>
 | 
			
		||||
 | 
			
		||||
   <para>
 | 
			
		||||
    We provide a version of Rebar3, which is the normal, unmodified Rebar3, under <literal>rebar3</literal>. We also provide a helper to fetch Rebar3 dependencies from a lockfile under <literal>fetchRebar3Deps</literal>.
 | 
			
		||||
    We provide a version of Rebar3, under <literal>rebar3</literal>. We also provide a helper to fetch Rebar3 dependencies from a lockfile under <literal>fetchRebar3Deps</literal>.
 | 
			
		||||
   </para>
 | 
			
		||||
  </section>
 | 
			
		||||
 | 
			
		||||
@ -72,32 +68,14 @@
 | 
			
		||||
  <title>How to Install BEAM Packages</title>
 | 
			
		||||
 | 
			
		||||
  <para>
 | 
			
		||||
   BEAM packages are not registered at the top level, simply because they are not relevant to the vast majority of Nix users. They are installable using the <literal>beam.packages.erlang</literal> attribute set (aliased as <literal>beamPackages</literal>), which points to packages built by the default Erlang/OTP version in Nixpkgs, as defined by <literal>beam.interpreters.erlang</literal>. To list the available packages in <literal>beamPackages</literal>, use the following command:
 | 
			
		||||
   BEAM builders are not registered at the top level, simply because they are not relevant to the vast majority of Nix users. 
 | 
			
		||||
   To install any of those builders into your profile, refer to them by their attribute path <literal>beamPackages.rebar3</literal>:
 | 
			
		||||
  </para>
 | 
			
		||||
 | 
			
		||||
<screen>
 | 
			
		||||
<prompt>$ </prompt>nix-env -f "<nixpkgs>" -qaP -A beamPackages
 | 
			
		||||
beamPackages.esqlite    esqlite-0.2.1
 | 
			
		||||
beamPackages.goldrush   goldrush-0.1.7
 | 
			
		||||
beamPackages.ibrowse    ibrowse-4.2.2
 | 
			
		||||
beamPackages.jiffy      jiffy-0.14.5
 | 
			
		||||
beamPackages.lager      lager-3.0.2
 | 
			
		||||
beamPackages.meck       meck-0.8.3
 | 
			
		||||
beamPackages.rebar3-pc  pc-1.1.0
 | 
			
		||||
</screen>
 | 
			
		||||
 | 
			
		||||
  <para>
 | 
			
		||||
   To install any of those packages into your profile, refer to them by their attribute path (first column):
 | 
			
		||||
  </para>
 | 
			
		||||
 | 
			
		||||
<screen>
 | 
			
		||||
<prompt>$ </prompt>nix-env -f "<nixpkgs>" -iA beamPackages.ibrowse
 | 
			
		||||
</screen>
 | 
			
		||||
 | 
			
		||||
  <para>
 | 
			
		||||
   The attribute path of any BEAM package corresponds to the name of that particular package in <link xlink:href="https://hex.pm">Hex</link> or its OTP Application/Release name.
 | 
			
		||||
  </para>
 | 
			
		||||
 </section>
 | 
			
		||||
  <screen>
 | 
			
		||||
  <prompt>$ </prompt>nix-env -f "<nixpkgs>" -iA beamPackages.rebar3
 | 
			
		||||
  </screen>
 | 
			
		||||
</section>
 | 
			
		||||
 | 
			
		||||
 <section xml:id="packaging-beam-applications">
 | 
			
		||||
  <title>Packaging BEAM Applications</title>
 | 
			
		||||
@ -109,35 +87,7 @@ beamPackages.rebar3-pc  pc-1.1.0
 | 
			
		||||
    <title>Rebar3 Packages</title>
 | 
			
		||||
 | 
			
		||||
    <para>
 | 
			
		||||
     The Nix function, <literal>buildRebar3</literal>, defined in <literal>beam.packages.erlang.buildRebar3</literal> and aliased at the top level, can be used to build a derivation that understands how to build a Rebar3 project. For example, we can build <link
 | 
			
		||||
        xlink:href="https://github.com/erlang-nix/hex2nix">hex2nix</link> as follows:
 | 
			
		||||
    </para>
 | 
			
		||||
 | 
			
		||||
<programlisting>
 | 
			
		||||
{ stdenv, fetchFromGitHub, buildRebar3, ibrowse, jsx, erlware_commons }:
 | 
			
		||||
 | 
			
		||||
buildRebar3 rec {
 | 
			
		||||
  name = "hex2nix";
 | 
			
		||||
  version = "0.0.1";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "ericbmerritt";
 | 
			
		||||
    repo = "hex2nix";
 | 
			
		||||
    rev = "${version}";
 | 
			
		||||
    sha256 = "1w7xjidz1l5yjmhlplfx7kphmnpvqm67w99hd2m7kdixwdxq0zqg";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  beamDeps = [ ibrowse jsx erlware_commons ];
 | 
			
		||||
}
 | 
			
		||||
</programlisting>
 | 
			
		||||
 | 
			
		||||
    <para>
 | 
			
		||||
     Such derivations are callable with <literal>beam.packages.erlang.callPackage</literal> (see <xref
 | 
			
		||||
        linkend="erlang-call-package"/>). To call this package using the normal <literal>callPackage</literal>, refer to dependency packages via <literal>beamPackages</literal>, e.g. <literal>beamPackages.ibrowse</literal>.
 | 
			
		||||
    </para>
 | 
			
		||||
 | 
			
		||||
    <para>
 | 
			
		||||
     Notably, <literal>buildRebar3</literal> includes <literal>beamDeps</literal>, while <literal>stdenv.mkDerivation</literal> does not. BEAM dependencies added there will be correctly handled by the system.
 | 
			
		||||
     The Nix function, <literal>buildRebar3</literal>, defined in <literal>beam.packages.erlang.buildRebar3</literal> and aliased at the top level, can be used to build a derivation that understands how to build a Rebar3 project.
 | 
			
		||||
    </para>
 | 
			
		||||
 | 
			
		||||
    <para>
 | 
			
		||||
@ -152,30 +102,6 @@ buildRebar3 rec {
 | 
			
		||||
     Erlang.mk functions similarly to Rebar3, except we use <literal>buildErlangMk</literal> instead of <literal>buildRebar3</literal>.
 | 
			
		||||
    </para>
 | 
			
		||||
 | 
			
		||||
<programlisting>
 | 
			
		||||
{ buildErlangMk, fetchHex, cowlib, ranch }:
 | 
			
		||||
 | 
			
		||||
buildErlangMk {
 | 
			
		||||
  name = "cowboy";
 | 
			
		||||
  version = "1.0.4";
 | 
			
		||||
 | 
			
		||||
  src = fetchHex {
 | 
			
		||||
    pkg = "cowboy";
 | 
			
		||||
    version = "1.0.4";
 | 
			
		||||
    sha256 = "6a0edee96885fae3a8dd0ac1f333538a42e807db638a9453064ccfdaa6b9fdac";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  beamDeps = [ cowlib ranch ];
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = ''
 | 
			
		||||
      Small, fast, modular HTTP server written in Erlang
 | 
			
		||||
    '';
 | 
			
		||||
    license = stdenv.lib.licenses.isc;
 | 
			
		||||
    homepage = https://github.com/ninenines/cowboy;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
</programlisting>
 | 
			
		||||
   </section>
 | 
			
		||||
 | 
			
		||||
   <section xml:id="mix-packages">
 | 
			
		||||
@ -185,57 +111,9 @@ buildErlangMk {
 | 
			
		||||
     Mix functions similarly to Rebar3, except we use <literal>buildMix</literal> instead of <literal>buildRebar3</literal>.
 | 
			
		||||
    </para>
 | 
			
		||||
 | 
			
		||||
<programlisting>
 | 
			
		||||
{ buildMix, fetchHex, plug, absinthe }:
 | 
			
		||||
 | 
			
		||||
buildMix {
 | 
			
		||||
  name = "absinthe_plug";
 | 
			
		||||
  version = "1.0.0";
 | 
			
		||||
 | 
			
		||||
  src = fetchHex {
 | 
			
		||||
    pkg = "absinthe_plug";
 | 
			
		||||
    version = "1.0.0";
 | 
			
		||||
    sha256 = "08459823fe1fd4f0325a8bf0c937a4520583a5a26d73b193040ab30a1dfc0b33";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  beamDeps = [ plug absinthe ];
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = ''
 | 
			
		||||
      A plug for Absinthe, an experimental GraphQL toolkit
 | 
			
		||||
    '';
 | 
			
		||||
    license = stdenv.lib.licenses.bsd3;
 | 
			
		||||
    homepage = https://github.com/CargoSense/absinthe_plug;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
</programlisting>
 | 
			
		||||
 | 
			
		||||
    <para>
 | 
			
		||||
     Alternatively, we can use <literal>buildHex</literal> as a shortcut:
 | 
			
		||||
    </para>
 | 
			
		||||
 | 
			
		||||
<programlisting>
 | 
			
		||||
{ buildHex, buildMix, plug, absinthe }:
 | 
			
		||||
 | 
			
		||||
buildHex {
 | 
			
		||||
  name = "absinthe_plug";
 | 
			
		||||
  version = "1.0.0";
 | 
			
		||||
 | 
			
		||||
  sha256 = "08459823fe1fd4f0325a8bf0c937a4520583a5a26d73b193040ab30a1dfc0b33";
 | 
			
		||||
 | 
			
		||||
  builder = buildMix;
 | 
			
		||||
 | 
			
		||||
  beamDeps = [ plug absinthe ];
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = ''
 | 
			
		||||
      A plug for Absinthe, an experimental GraphQL toolkit
 | 
			
		||||
    '';
 | 
			
		||||
    license = stdenv.lib.licenses.bsd3;
 | 
			
		||||
    homepage = https://github.com/CargoSense/absinthe_plug;
 | 
			
		||||
 };
 | 
			
		||||
}
 | 
			
		||||
</programlisting>
 | 
			
		||||
   </section>
 | 
			
		||||
  </section>
 | 
			
		||||
 </section>
 | 
			
		||||
@ -243,66 +121,13 @@ buildHex {
 | 
			
		||||
 <section xml:id="how-to-develop">
 | 
			
		||||
  <title>How to Develop</title>
 | 
			
		||||
 | 
			
		||||
  <section xml:id="accessing-an-environment">
 | 
			
		||||
   <title>Accessing an Environment</title>
 | 
			
		||||
 | 
			
		||||
   <para>
 | 
			
		||||
    Often, we simply want to access a valid environment that contains a specific package and its dependencies. We can accomplish that with the <literal>env</literal> attribute of a derivation. For example, let's say we want to access an Erlang REPL with <literal>ibrowse</literal> loaded up. We could do the following:
 | 
			
		||||
   </para>
 | 
			
		||||
 | 
			
		||||
<screen>
 | 
			
		||||
<prompt>$ </prompt><userinput>nix-shell -A beamPackages.ibrowse.env --run "erl"</userinput>
 | 
			
		||||
<computeroutput>Erlang/OTP 18 [erts-7.0] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false]
 | 
			
		||||
 | 
			
		||||
Eshell V7.0  (abort with ^G)</computeroutput>
 | 
			
		||||
<prompt>1> </prompt><userinput>m(ibrowse).</userinput>
 | 
			
		||||
<computeroutput>Module: ibrowse
 | 
			
		||||
MD5: 3b3e0137d0cbb28070146978a3392945
 | 
			
		||||
Compiled: January 10 2016, 23:34
 | 
			
		||||
Object file: /nix/store/g1rlf65rdgjs4abbyj4grp37ry7ywivj-ibrowse-4.2.2/lib/erlang/lib/ibrowse-4.2.2/ebin/ibrowse.beam
 | 
			
		||||
Compiler options:  [{outdir,"/tmp/nix-build-ibrowse-4.2.2.drv-0/hex-source-ibrowse-4.2.2/_build/default/lib/ibrowse/ebin"},
 | 
			
		||||
debug_info,debug_info,nowarn_shadow_vars,
 | 
			
		||||
warn_unused_import,warn_unused_vars,warnings_as_errors,
 | 
			
		||||
{i,"/tmp/nix-build-ibrowse-4.2.2.drv-0/hex-source-ibrowse-4.2.2/_build/default/lib/ibrowse/include"}]
 | 
			
		||||
Exports:
 | 
			
		||||
add_config/1                  send_req_direct/7
 | 
			
		||||
all_trace_off/0               set_dest/3
 | 
			
		||||
code_change/3                 set_max_attempts/3
 | 
			
		||||
get_config_value/1            set_max_pipeline_size/3
 | 
			
		||||
get_config_value/2            set_max_sessions/3
 | 
			
		||||
get_metrics/0                 show_dest_status/0
 | 
			
		||||
get_metrics/2                 show_dest_status/1
 | 
			
		||||
handle_call/3                 show_dest_status/2
 | 
			
		||||
handle_cast/2                 spawn_link_worker_process/1
 | 
			
		||||
handle_info/2                 spawn_link_worker_process/2
 | 
			
		||||
init/1                        spawn_worker_process/1
 | 
			
		||||
module_info/0                 spawn_worker_process/2
 | 
			
		||||
module_info/1                 start/0
 | 
			
		||||
rescan_config/0               start_link/0
 | 
			
		||||
rescan_config/1               stop/0
 | 
			
		||||
send_req/3                    stop_worker_process/1
 | 
			
		||||
send_req/4                    stream_close/1
 | 
			
		||||
send_req/5                    stream_next/1
 | 
			
		||||
send_req/6                    terminate/2
 | 
			
		||||
send_req_direct/4             trace_off/0
 | 
			
		||||
send_req_direct/5             trace_off/2
 | 
			
		||||
send_req_direct/6             trace_on/0
 | 
			
		||||
trace_on/2
 | 
			
		||||
ok</computeroutput>
 | 
			
		||||
<prompt>2></prompt>
 | 
			
		||||
</screen>
 | 
			
		||||
 | 
			
		||||
   <para>
 | 
			
		||||
    Notice the <literal>-A beamPackages.ibrowse.env</literal>. That is the key to this functionality.
 | 
			
		||||
   </para>
 | 
			
		||||
  </section>
 | 
			
		||||
 | 
			
		||||
  <section xml:id="creating-a-shell">
 | 
			
		||||
   <title>Creating a Shell</title>
 | 
			
		||||
 | 
			
		||||
   <para>
 | 
			
		||||
    Getting access to an environment often isn't enough to do real development. Usually, we need to create a <literal>shell.nix</literal> file and do our development inside of the environment specified therein. This file looks a lot like the packaging described above, except that <literal>src</literal> points to the project root and we call the package directly.
 | 
			
		||||
   </para>
 | 
			
		||||
  <para>
 | 
			
		||||
    Usually, we need to create a <literal>shell.nix</literal> file and do our development inside of the environment specified therein. Just install your version of erlang and other interpreter, and then user your normal build tools.
 | 
			
		||||
    As an example with elixir:
 | 
			
		||||
  </para>
 | 
			
		||||
 | 
			
		||||
<programlisting>
 | 
			
		||||
{ pkgs ? import "<nixpkgs"> {} }:
 | 
			
		||||
@ -311,114 +136,24 @@ with pkgs;
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
 | 
			
		||||
  f = { buildRebar3, ibrowse, jsx, erlware_commons }:
 | 
			
		||||
      buildRebar3 {
 | 
			
		||||
        name = "hex2nix";
 | 
			
		||||
        version = "0.1.0";
 | 
			
		||||
        src = ./.;
 | 
			
		||||
        beamDeps = [ ibrowse jsx erlware_commons ];
 | 
			
		||||
      };
 | 
			
		||||
  drv = beamPackages.callPackage f {};
 | 
			
		||||
  elixir = beam.packages.erlangR22.elixir_1_9;
 | 
			
		||||
 | 
			
		||||
in
 | 
			
		||||
mkShell {
 | 
			
		||||
  buildInputs = [ elixir ];
 | 
			
		||||
 | 
			
		||||
  drv
 | 
			
		||||
  ERL_INCLUDE_PATH="${erlang}/lib/erlang/usr/include";
 | 
			
		||||
}
 | 
			
		||||
</programlisting>
 | 
			
		||||
 | 
			
		||||
   <section xml:id="building-in-a-shell">
 | 
			
		||||
    <title>Building in a Shell (for Mix Projects)</title>
 | 
			
		||||
 | 
			
		||||
    <para>
 | 
			
		||||
     We can leverage the support of the derivation, irrespective of the build derivation, by calling the commands themselves.
 | 
			
		||||
    </para>
 | 
			
		||||
 | 
			
		||||
<programlisting>
 | 
			
		||||
# =============================================================================
 | 
			
		||||
# Variables
 | 
			
		||||
# =============================================================================
 | 
			
		||||
 | 
			
		||||
NIX_TEMPLATES := "$(CURDIR)/nix-templates"
 | 
			
		||||
 | 
			
		||||
TARGET := "$(PREFIX)"
 | 
			
		||||
 | 
			
		||||
PROJECT_NAME := thorndyke
 | 
			
		||||
 | 
			
		||||
NIXPKGS=../nixpkgs
 | 
			
		||||
NIX_PATH=nixpkgs=$(NIXPKGS)
 | 
			
		||||
NIX_SHELL=nix-shell -I "$(NIX_PATH)" --pure
 | 
			
		||||
# =============================================================================
 | 
			
		||||
# Rules
 | 
			
		||||
# =============================================================================
 | 
			
		||||
.PHONY= all test clean repl shell build test analyze configure install \
 | 
			
		||||
        test-nix-install publish plt analyze
 | 
			
		||||
 | 
			
		||||
all: build
 | 
			
		||||
 | 
			
		||||
guard-%:
 | 
			
		||||
        @ if [ "${${*}}" == "" ]; then \
 | 
			
		||||
                echo "Environment variable $* not set"; \
 | 
			
		||||
                exit 1; \
 | 
			
		||||
        fi
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
        rm -rf _build
 | 
			
		||||
        rm -rf .cache
 | 
			
		||||
 | 
			
		||||
repl:
 | 
			
		||||
        $(NIX_SHELL) --run "iex -pa './_build/prod/lib/*/ebin'"
 | 
			
		||||
 | 
			
		||||
shell:
 | 
			
		||||
        $(NIX_SHELL)
 | 
			
		||||
 | 
			
		||||
configure:
 | 
			
		||||
        $(NIX_SHELL) --command 'eval "$$configurePhase"'
 | 
			
		||||
 | 
			
		||||
build: configure
 | 
			
		||||
        $(NIX_SHELL) --command 'eval "$$buildPhase"'
 | 
			
		||||
 | 
			
		||||
install:
 | 
			
		||||
        $(NIX_SHELL) --command 'eval "$$installPhase"'
 | 
			
		||||
 | 
			
		||||
test:
 | 
			
		||||
        $(NIX_SHELL) --command 'mix test --no-start --no-deps-check'
 | 
			
		||||
 | 
			
		||||
plt:
 | 
			
		||||
        $(NIX_SHELL) --run "mix dialyzer.plt --no-deps-check"
 | 
			
		||||
 | 
			
		||||
analyze: build plt
 | 
			
		||||
        $(NIX_SHELL) --run "mix dialyzer --no-compile"
 | 
			
		||||
 | 
			
		||||
</programlisting>
 | 
			
		||||
 | 
			
		||||
    <para>
 | 
			
		||||
     Using a <literal>shell.nix</literal> as described (see <xref
 | 
			
		||||
      linkend="creating-a-shell"/>) should just work. Aside from <literal>test</literal>, <literal>plt</literal>, and <literal>analyze</literal>, the Make targets work just fine for all of the build derivations.
 | 
			
		||||
      linkend="creating-a-shell"/>) should just work.
 | 
			
		||||
    </para>
 | 
			
		||||
   </section>
 | 
			
		||||
  </section>
 | 
			
		||||
 </section>
 | 
			
		||||
 | 
			
		||||
 <section xml:id="generating-packages-from-hex-with-hex2nix">
 | 
			
		||||
  <title>Generating Packages from Hex with <literal>hex2nix</literal></title>
 | 
			
		||||
 | 
			
		||||
  <para>
 | 
			
		||||
   Updating the <link xlink:href="https://hex.pm">Hex</link> package set requires <link
 | 
			
		||||
    xlink:href="https://github.com/erlang-nix/hex2nix">hex2nix</link>. Given the path to the Erlang modules (usually <literal>pkgs/development/erlang-modules</literal>), it will dump a file called <literal>hex-packages.nix</literal>, containing all the packages that use a recognized build system in <link
 | 
			
		||||
    xlink:href="https://hex.pm">Hex</link>. It can't be determined, however, whether every package is buildable.
 | 
			
		||||
  </para>
 | 
			
		||||
 | 
			
		||||
  <para>
 | 
			
		||||
   To make life easier for our users, try to build every <link
 | 
			
		||||
      xlink:href="https://hex.pm">Hex</link> package and remove those that fail. To do that, simply run the following command in the root of your <literal>nixpkgs</literal> repository:
 | 
			
		||||
  </para>
 | 
			
		||||
 | 
			
		||||
<screen>
 | 
			
		||||
<prompt>$ </prompt>nix-build -A beamPackages
 | 
			
		||||
</screen>
 | 
			
		||||
 | 
			
		||||
  <para>
 | 
			
		||||
   That will attempt to build every package in <literal>beamPackages</literal>. Then manually remove those that fail. Hopefully, someone will improve <link
 | 
			
		||||
      xlink:href="https://github.com/erlang-nix/hex2nix">hex2nix</link> in the future to automate the process.
 | 
			
		||||
  </para>
 | 
			
		||||
 </section>
 | 
			
		||||
</section>
 | 
			
		||||
 | 
			
		||||
@ -944,6 +944,12 @@
 | 
			
		||||
    githubId = 5718007;
 | 
			
		||||
    name = "Bastian Köcher";
 | 
			
		||||
  };
 | 
			
		||||
  blitz = {
 | 
			
		||||
    email = "js@alien8.de";
 | 
			
		||||
    github = "blitz";
 | 
			
		||||
    githubId = 37907;
 | 
			
		||||
    name = "Julian Stecklina";
 | 
			
		||||
  };
 | 
			
		||||
  bluescreen303 = {
 | 
			
		||||
    email = "mathijs@bluescreen303.nl";
 | 
			
		||||
    github = "bluescreen303";
 | 
			
		||||
@ -1399,6 +1405,12 @@
 | 
			
		||||
    githubId = 1740337;
 | 
			
		||||
    name = "Chris Ostrouchov";
 | 
			
		||||
  };
 | 
			
		||||
  contrun = {
 | 
			
		||||
    email = "uuuuuu@protonmail.com";
 | 
			
		||||
    github = "contrun";
 | 
			
		||||
    githubId = 32609395;
 | 
			
		||||
    name = "B YI";
 | 
			
		||||
  };
 | 
			
		||||
  couchemar = {
 | 
			
		||||
    email = "couchemar@yandex.ru";
 | 
			
		||||
    github = "couchemar";
 | 
			
		||||
@ -2295,6 +2307,16 @@
 | 
			
		||||
    githubId = 415760;
 | 
			
		||||
    name = "Jonas Höglund";
 | 
			
		||||
  };
 | 
			
		||||
  Flakebi = {
 | 
			
		||||
    email = "flakebi@t-online.de";
 | 
			
		||||
    github = "Flakebi";
 | 
			
		||||
    githubId = "Flakebi";
 | 
			
		||||
    name = "Sebastian Neubauer";
 | 
			
		||||
    keys = [{
 | 
			
		||||
      longkeyid = "rsa4096/0xECC755EE583C1672";
 | 
			
		||||
      fingerprint = "2F93 661D AC17 EA98 A104  F780 ECC7 55EE 583C 1672";
 | 
			
		||||
    }];
 | 
			
		||||
  };
 | 
			
		||||
  flexw = {
 | 
			
		||||
    email = "felix.weilbach@t-online.de";
 | 
			
		||||
    github = "FlexW";
 | 
			
		||||
@ -3386,6 +3408,12 @@
 | 
			
		||||
    github = "juliendehos";
 | 
			
		||||
    name = "Julien Dehos";
 | 
			
		||||
  };
 | 
			
		||||
  jumper149 = {
 | 
			
		||||
    email = "felixspringer149@gmail.com";
 | 
			
		||||
    github = "jumper149";
 | 
			
		||||
    githubId = 39434424;
 | 
			
		||||
    name = "Felix Springer";
 | 
			
		||||
  };
 | 
			
		||||
  justinwoo = {
 | 
			
		||||
    email = "moomoowoo@gmail.com";
 | 
			
		||||
    github = "justinwoo";
 | 
			
		||||
@ -3922,6 +3950,22 @@
 | 
			
		||||
    github = "lovek323";
 | 
			
		||||
    name = "Jason O'Conal";
 | 
			
		||||
  };
 | 
			
		||||
  lovesegfault = {
 | 
			
		||||
    email = "meurerbernardo@gmail.com";
 | 
			
		||||
    github = "lovesegfault";
 | 
			
		||||
    githubId = 7243783;
 | 
			
		||||
    name = "Bernardo Meurer";
 | 
			
		||||
    keys = [
 | 
			
		||||
      {
 | 
			
		||||
        longkeyid = "rsa2048/0xE421C74191EA186C";
 | 
			
		||||
        fingerprint = "5894 12CE 19DF 582A E10A  3320 E421 C741 91EA 186C";
 | 
			
		||||
      }
 | 
			
		||||
      {
 | 
			
		||||
        longkeyid = "rsa2048/0x4A6D87A0E7475769";
 | 
			
		||||
        fingerprint = "56A8 E164 E834 290C 4AC0  EE3E 4A6D 87A0 E747 5769";
 | 
			
		||||
      }
 | 
			
		||||
    ];
 | 
			
		||||
  };
 | 
			
		||||
  lowfatcomputing = {
 | 
			
		||||
    email = "andreas.wagner@lowfatcomputing.org";
 | 
			
		||||
    github = "lowfatcomputing";
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
        xmlns:xlink="http://www.w3.org/1999/xlink"
 | 
			
		||||
        xmlns:xi="http://www.w3.org/2001/XInclude"
 | 
			
		||||
        version="5.0"
 | 
			
		||||
        xml:id="sec-running-nixos-tests">
 | 
			
		||||
        xml:id="sec-running-nixos-tests-interactively">
 | 
			
		||||
 <title>Running Tests interactively</title>
 | 
			
		||||
 | 
			
		||||
 <para>
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
        xmlns:xlink="http://www.w3.org/1999/xlink"
 | 
			
		||||
        xmlns:xi="http://www.w3.org/2001/XInclude"
 | 
			
		||||
        version="5.0"
 | 
			
		||||
        xml:id="sec-running-nixos-tests-interactively">
 | 
			
		||||
        xml:id="sec-running-nixos-tests">
 | 
			
		||||
 <title>Running Tests</title>
 | 
			
		||||
 | 
			
		||||
 <para>
 | 
			
		||||
 | 
			
		||||
@ -149,6 +149,12 @@
 | 
			
		||||
     SDDM, GDM, or using the startx module which uses Xinitrc.
 | 
			
		||||
    </para>
 | 
			
		||||
   </listitem>
 | 
			
		||||
   <listitem>
 | 
			
		||||
    <para>
 | 
			
		||||
      The BEAM package set has been deleted. You will only find there the different interpreters.
 | 
			
		||||
      You should now use the different build tools coming with the languages with sandbox mode disabled.
 | 
			
		||||
    </para>
 | 
			
		||||
   </listitem>
 | 
			
		||||
  </itemizedlist>
 | 
			
		||||
 </section>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -40,6 +40,7 @@ let
 | 
			
		||||
  daemonService = appName: args:
 | 
			
		||||
    { description = "Samba Service Daemon ${appName}";
 | 
			
		||||
 | 
			
		||||
      after = [ (mkIf (cfg.enableNmbd && "${appName}" == "smbd") "samba-nmbd.service") ];
 | 
			
		||||
      requiredBy = [ "samba.target" ];
 | 
			
		||||
      partOf = [ "samba.target" ];
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -35,6 +35,7 @@ let
 | 
			
		||||
       (if (cfg.web.credentialsFile != null || cfg.web.credentials != { })
 | 
			
		||||
         then "--credentials=${toString credFile}"
 | 
			
		||||
         else "--no-auth")
 | 
			
		||||
       "--addr=${address}:${toString port}"
 | 
			
		||||
     ] ++ extraOptions);
 | 
			
		||||
 | 
			
		||||
in {
 | 
			
		||||
@ -177,7 +178,7 @@ in {
 | 
			
		||||
    systemd.services.magneticod = {
 | 
			
		||||
      description = "Magnetico DHT crawler";
 | 
			
		||||
      wantedBy = [ "multi-user.target" ];
 | 
			
		||||
      after    = [ "network-online.target" ];
 | 
			
		||||
      after    = [ "network.target" ];
 | 
			
		||||
 | 
			
		||||
      serviceConfig = {
 | 
			
		||||
        User      = "magnetico";
 | 
			
		||||
@ -189,7 +190,7 @@ in {
 | 
			
		||||
    systemd.services.magneticow = {
 | 
			
		||||
      description = "Magnetico web interface";
 | 
			
		||||
      wantedBy = [ "multi-user.target" ];
 | 
			
		||||
      after    = [ "network-online.target" "magneticod.service"];
 | 
			
		||||
      after    = [ "network.target" "magneticod.service"];
 | 
			
		||||
 | 
			
		||||
      serviceConfig = {
 | 
			
		||||
        User           = "magnetico";
 | 
			
		||||
@ -202,7 +203,7 @@ in {
 | 
			
		||||
    assertions =
 | 
			
		||||
    [
 | 
			
		||||
      {
 | 
			
		||||
        assertion = cfg.web.credentialsFile != null || cfg.web.credentials != { };
 | 
			
		||||
        assertion = cfg.web.credentialsFile == null || cfg.web.credentials == { };
 | 
			
		||||
        message = ''
 | 
			
		||||
          The options services.magnetico.web.credentialsFile and
 | 
			
		||||
          services.magnetico.web.credentials are mutually exclusives.
 | 
			
		||||
 | 
			
		||||
@ -15,7 +15,7 @@ with import ../../lib/qemu-flags.nix { inherit pkgs; };
 | 
			
		||||
  #
 | 
			
		||||
  # One particular example are the boot tests where we want instrumentation
 | 
			
		||||
  # within the images but not other stuff like setting up 9p filesystems.
 | 
			
		||||
  options.virtualisation.qemu.program = mkOption { type = types.path; };
 | 
			
		||||
  options.virtualisation.qemu = { };
 | 
			
		||||
 | 
			
		||||
  config = {
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -148,6 +148,7 @@ in
 | 
			
		||||
  loki = handleTest ./loki.nix {};
 | 
			
		||||
  #logstash = handleTest ./logstash.nix {};
 | 
			
		||||
  lorri = handleTest ./lorri/default.nix {};
 | 
			
		||||
  magnetico = handleTest ./magnetico.nix {};
 | 
			
		||||
  mailcatcher = handleTest ./mailcatcher.nix {};
 | 
			
		||||
  mathics = handleTest ./mathics.nix {};
 | 
			
		||||
  matomo = handleTest ./matomo.nix {};
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,9 @@
 | 
			
		||||
import ./make-test.nix ({ pkgs, ...} : {
 | 
			
		||||
import ./make-test-python.nix ({ pkgs, ...} :
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  port = 8081;
 | 
			
		||||
in
 | 
			
		||||
{
 | 
			
		||||
  name = "magnetico";
 | 
			
		||||
  meta = with pkgs.stdenv.lib.maintainers; {
 | 
			
		||||
    maintainers = [ rnhmjoj ];
 | 
			
		||||
@ -12,17 +17,24 @@ import ./make-test.nix ({ pkgs, ...} : {
 | 
			
		||||
    services.magnetico = {
 | 
			
		||||
      enable = true;
 | 
			
		||||
      crawler.port = 9000;
 | 
			
		||||
      web.port = port;
 | 
			
		||||
      web.credentials.user = "$2y$12$P88ZF6soFthiiAeXnz64aOWDsY3Dw7Yw8fZ6GtiqFNjknD70zDmNe";
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  testScript =
 | 
			
		||||
    ''
 | 
			
		||||
      startAll;
 | 
			
		||||
      $machine->waitForUnit("magneticod");
 | 
			
		||||
      $machine->waitForUnit("magneticow");
 | 
			
		||||
      $machine->succeed("${pkgs.curl}/bin/curl -u user:password http://localhost:8080");
 | 
			
		||||
      $machine->succeed("${pkgs.curl}/bin/curl -u user:wrongpwd http://localhost:8080") =~ "Unauthorised." or die;
 | 
			
		||||
      $machine->shutdown();
 | 
			
		||||
      start_all()
 | 
			
		||||
      machine.wait_for_unit("magneticod")
 | 
			
		||||
      machine.wait_for_unit("magneticow")
 | 
			
		||||
      machine.succeed(
 | 
			
		||||
          "${pkgs.curl}/bin/curl "
 | 
			
		||||
          + "-u user:password http://localhost:${toString port}"
 | 
			
		||||
      )
 | 
			
		||||
      assert "Unauthorised." in machine.succeed(
 | 
			
		||||
          "${pkgs.curl}/bin/curl "
 | 
			
		||||
          + "-u user:wrongpwd http://localhost:${toString port}"
 | 
			
		||||
      )
 | 
			
		||||
      machine.shutdown()
 | 
			
		||||
    '';
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										22
									
								
								nixos/tests/spike.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								nixos/tests/spike.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,22 @@
 | 
			
		||||
import ./make-test-python.nix ({ pkgs, ... }:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  riscvPkgs = import ../.. { crossSystem = pkgs.stdenv.lib.systems.examples.riscv64-embedded; };
 | 
			
		||||
in
 | 
			
		||||
{
 | 
			
		||||
  name = "spike";
 | 
			
		||||
  meta = with pkgs.stdenv.lib.maintainers; { maintainers = [ blitz ]; };
 | 
			
		||||
 | 
			
		||||
  machine = { pkgs, lib, ... }: {
 | 
			
		||||
    environment.systemPackages = [ pkgs.spike riscvPkgs.riscv-pk riscvPkgs.hello ];
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  # Run the RISC-V hello applications using the proxy kernel on the
 | 
			
		||||
  # Spike emulator and see whether we get the expected output.
 | 
			
		||||
  testScript =
 | 
			
		||||
    ''
 | 
			
		||||
      machine.wait_for_unit("multi-user.target")
 | 
			
		||||
      output = machine.succeed("spike -m64 $(which pk) $(which hello)")
 | 
			
		||||
      assert output == "Hello, world!\n"
 | 
			
		||||
    '';
 | 
			
		||||
})
 | 
			
		||||
							
								
								
									
										43
									
								
								pkgs/applications/audio/giada/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								pkgs/applications/audio/giada/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,43 @@
 | 
			
		||||
{ lib, stdenv, fetchFromGitHub, autoreconfHook,
 | 
			
		||||
  fltk, jansson, rtmidi, libsamplerate, libsndfile,
 | 
			
		||||
  jack2, alsaLib, libpulseaudio,
 | 
			
		||||
  libXpm, libXinerama, libXcursor }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "giada";
 | 
			
		||||
  version = "0.15.4";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "monocasual";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "0a5lqzxs417alpjr42q5197v6dwgrc74434znszk4lfhivr88p8v";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  configureFlags = [ "--target=linux" ];
 | 
			
		||||
  nativeBuildInputs = [
 | 
			
		||||
    autoreconfHook
 | 
			
		||||
  ];
 | 
			
		||||
  buildInputs = [
 | 
			
		||||
    fltk
 | 
			
		||||
    libsndfile
 | 
			
		||||
    libsamplerate
 | 
			
		||||
    jansson
 | 
			
		||||
    rtmidi
 | 
			
		||||
    libXpm
 | 
			
		||||
    jack2
 | 
			
		||||
    alsaLib
 | 
			
		||||
    libpulseaudio
 | 
			
		||||
    libXinerama
 | 
			
		||||
    libXcursor
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  meta = with lib; {
 | 
			
		||||
    description = "A free, minimal, hardcore audio tool for DJs, live performers and electronic musicians";
 | 
			
		||||
    homepage = "https://giadamusic.com/";
 | 
			
		||||
    license = licenses.gpl3;
 | 
			
		||||
    maintainers = with maintainers; [ petabyteboy ];
 | 
			
		||||
    platforms = platforms.all;
 | 
			
		||||
    broken = stdenv.hostPlatform.isAarch64; # produces build failure on aarch64-linux
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -2,16 +2,16 @@
 | 
			
		||||
 | 
			
		||||
buildGoModule rec {
 | 
			
		||||
  pname = "lnd";
 | 
			
		||||
  version = "0.7.1-beta";
 | 
			
		||||
  version = "0.8.1-beta";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "lightningnetwork";
 | 
			
		||||
    repo = "lnd";
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "1c0sm0lavdai4w6d283q54knggw9d42vvqmglnv2h9swbw1l23ry";
 | 
			
		||||
    sha256 = "0f9fx2y66l3wxiax2vl2966avamjarkv3vbn9dy0wbxkwg4pfayb";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  modSha256 = "13hjaf4bswk8g57lyxzdlqqp4a6ddl3qm6n4jja4b1h58mlbil73";
 | 
			
		||||
  modSha256 = "1i6xw2amkg4azvzybcl4pqxif9c0mv8ayrhz9hm8x85bz7i6a787";
 | 
			
		||||
 | 
			
		||||
  meta = with lib; {
 | 
			
		||||
    description = "Lightning Network Daemon";
 | 
			
		||||
 | 
			
		||||
@ -2,11 +2,11 @@
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "wasabiwallet";
 | 
			
		||||
  version = "1.1.9";
 | 
			
		||||
  version = "1.1.9.2";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://github.com/zkSNACKs/WalletWasabi/releases/download/v${version}/WasabiLinux-${version}.tar.gz";
 | 
			
		||||
    sha256 = "1dz05ivhadfjfp4yfpz492401yznm3rlnx7g4nqzxwh4cmqzisrm";
 | 
			
		||||
    sha256 = "0qcgrw106rqcls6p5iq02sq3w6xrzhc5z7w8v5almbw7ikv6f0s2";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  dontBuild = true;
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
{stdenv, fetchzip, emacs, colorTheme}:
 | 
			
		||||
{stdenv, fetchzip, emacs, color-theme}:
 | 
			
		||||
let
 | 
			
		||||
  commit = "412713a0fcedd520d208a7b783fea03d710bcc61";
 | 
			
		||||
  commit = "f3ca8902ea056fb8e46cb09f09c96294e31cd4ee";
 | 
			
		||||
in
 | 
			
		||||
stdenv.mkDerivation {
 | 
			
		||||
  name = "color-theme-solarized-1.0.0";
 | 
			
		||||
@ -8,15 +8,14 @@ stdenv.mkDerivation {
 | 
			
		||||
  src = fetchzip {
 | 
			
		||||
 | 
			
		||||
    url = "https://github.com/sellout/emacs-color-theme-solarized/archive/${commit}.zip";
 | 
			
		||||
    sha256 = "1xd2yk7p39zxgcf91s80pqknzdxw9d09cppjb87g7ihj6f0wxqjv";
 | 
			
		||||
    sha256 = "16d7adqi07lzzr0qipl1fbag9l8kiyr3xrqxi528pimcisbg85d3";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  buildInputs = [ emacs ];
 | 
			
		||||
  propagatedUserEnvPkgs = [ colorTheme ];
 | 
			
		||||
 | 
			
		||||
  propagatedUserEnvPkgs = [ color-theme ];
 | 
			
		||||
 | 
			
		||||
  buildPhase = ''
 | 
			
		||||
    emacs -L . -L ${colorTheme}/share/emacs/site-lisp --batch -f batch-byte-compile *.el
 | 
			
		||||
    emacs -L . -L ${color-theme}/share/emacs/site-lisp/elpa/color-theme-* --batch -f batch-byte-compile *.el
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  installPhase = ''
 | 
			
		||||
@ -30,8 +29,5 @@ stdenv.mkDerivation {
 | 
			
		||||
    maintainers = [ maintainers.samuelrivas ];
 | 
			
		||||
    license = licenses.mit;
 | 
			
		||||
    platforms = platforms.all;
 | 
			
		||||
 | 
			
		||||
    # Fails with `solarized-definitions.el:786:1:Warning: the function `rotatef' is not known to`
 | 
			
		||||
    broken = true;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -128,9 +128,7 @@
 | 
			
		||||
  # From old emacsPackages (pre emacsPackagesNg)
 | 
			
		||||
  cedet = callPackage ./cedet { };
 | 
			
		||||
  cedille = callPackage ./cedille { cedille = pkgs.cedille; };
 | 
			
		||||
  colorThemeSolarized = callPackage ./color-theme-solarized {
 | 
			
		||||
    colorTheme = self.color-theme;
 | 
			
		||||
  };
 | 
			
		||||
  colorThemeSolarized = callPackage ./color-theme-solarized { };
 | 
			
		||||
  emacsSessionManagement = callPackage ./session-management-for-emacs { };
 | 
			
		||||
  hsc3-mode = callPackage ./hsc3 { };
 | 
			
		||||
  hol_light_mode = callPackage ./hol_light { };
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										25
									
								
								pkgs/applications/editors/hexdino/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								pkgs/applications/editors/hexdino/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,25 @@
 | 
			
		||||
{ stdenv, fetchFromGitHub, rustPlatform, ncurses }:
 | 
			
		||||
rustPlatform.buildRustPackage rec {
 | 
			
		||||
  name = "hexdino-${version}";
 | 
			
		||||
  version = "0.1.0";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "Luz";
 | 
			
		||||
    repo = "hexdino";
 | 
			
		||||
    rev = "de5b5d7042129f57e0ab36416a06476126bce389";
 | 
			
		||||
    sha256 = "11mz07735gxqfamjcjjmxya6swlvr1p77sgd377zjcmd6z54gwyf";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  cargoSha256 = "0qa8ypp5a7sf1gic482zh3i6s94w6k6bgmk5ynfvwi7g49ql7c4z";
 | 
			
		||||
  verifyCargoDeps = true;
 | 
			
		||||
 | 
			
		||||
  buildInputs = [ ncurses ];
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A hex editor with vim like keybindings written in Rust";
 | 
			
		||||
    homepage = https://github.com/Luz/hexdino;
 | 
			
		||||
    license = licenses.mit;
 | 
			
		||||
    maintainers = [ maintainers.luz ];
 | 
			
		||||
    platforms = platforms.all;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
{ stdenv, python3, fetchFromGitHub, makeWrapper, buildEnv, aspellDicts
 | 
			
		||||
{ stdenv, python3, fetchFromGitHub, wrapQtAppsHook, buildEnv, aspellDicts
 | 
			
		||||
# Use `lib.collect lib.isDerivation aspellDicts;` to make all dictionaries
 | 
			
		||||
# available.
 | 
			
		||||
, enchantAspellDicts ? with aspellDicts; [ en en-computers en-science ]
 | 
			
		||||
@ -42,12 +42,11 @@ in python.pkgs.buildPythonApplication {
 | 
			
		||||
 | 
			
		||||
  doCheck = false;
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ makeWrapper ];
 | 
			
		||||
  nativeBuildInputs = [ wrapQtAppsHook ];
 | 
			
		||||
  propagatedBuildInputs = [ pythonEnv ];
 | 
			
		||||
 | 
			
		||||
  postInstall = ''
 | 
			
		||||
    mv $out/bin/retext $out/bin/.retext
 | 
			
		||||
    makeWrapper "$out/bin/.retext" "$out/bin/retext" \
 | 
			
		||||
    wrapQtApp "$out/bin/retext" \
 | 
			
		||||
      --set ASPELL_CONF "dict-dir ${buildEnv {
 | 
			
		||||
        name = "aspell-all-dicts";
 | 
			
		||||
        paths = map (path: "${path}/lib/aspell") enchantAspellDicts;
 | 
			
		||||
 | 
			
		||||
@ -76,6 +76,7 @@ stdenv.mkDerivation {
 | 
			
		||||
      "--with-tclsh=${tcl}/bin/tclsh"
 | 
			
		||||
      "--with-tlib=ncurses"
 | 
			
		||||
      "--with-compiledby=Nix"
 | 
			
		||||
      "LDFLAGS=-headerpad_max_install_names"
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  makeFlags = ''PREFIX=$(out) CPPFLAGS="-Wno-error"'';
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										40
									
								
								pkgs/applications/misc/birdtray/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								pkgs/applications/misc/birdtray/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,40 @@
 | 
			
		||||
{ mkDerivation
 | 
			
		||||
  , lib
 | 
			
		||||
  , fetchFromGitHub
 | 
			
		||||
 | 
			
		||||
  , cmake
 | 
			
		||||
  , pkgconfig
 | 
			
		||||
  , qtbase
 | 
			
		||||
  , qttools
 | 
			
		||||
  , qtx11extras
 | 
			
		||||
  , sqlite
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
mkDerivation rec {
 | 
			
		||||
  pname = "birdtray";
 | 
			
		||||
  version = "1.6";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "gyunaev";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = "RELEASE_${version}";
 | 
			
		||||
    sha256 = "0n6qr224ir59ncid4xbdilk5642z0kcaylzbil1bdcv3h32ysjym";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ cmake pkgconfig ];
 | 
			
		||||
  buildInputs = [
 | 
			
		||||
    qtbase qtx11extras sqlite
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  installPhase = ''
 | 
			
		||||
    install -Dm755 birdtray $out/bin/birdtray
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  meta = with lib; {
 | 
			
		||||
    description = "Mail system tray notification icon for Thunderbird";
 | 
			
		||||
    homepage = https://github.com/gyunaev/birdtray;
 | 
			
		||||
    license = licenses.gpl3Plus;
 | 
			
		||||
    maintainers = with maintainers; [ Flakebi ];
 | 
			
		||||
    platforms = platforms.linux;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										31
									
								
								pkgs/applications/misc/blugon/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								pkgs/applications/misc/blugon/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,31 @@
 | 
			
		||||
{ stdenv, fetchFromGitHub, python3, libX11, libXrandr }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "blugon";
 | 
			
		||||
  version = "1.11.4";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "jumper149";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = version;
 | 
			
		||||
    sha256 = "0x320w2h5nlcgha4345i8ns15akb4kmrdgkh710s4r1n1by4x11r";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  buildInputs = [ python3 libX11 libXrandr ];
 | 
			
		||||
 | 
			
		||||
  makeFlags = [ "PREFIX=$(out)" ];
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "Simple and configurable Blue Light Filter for X";
 | 
			
		||||
    longDescription = ''
 | 
			
		||||
      blugon is a simple and fast Blue Light Filter, that is highly configurable and provides a command line interface.
 | 
			
		||||
      The program can be run just once or as a daemon (manually or via systemd).
 | 
			
		||||
      There are several different backends available.
 | 
			
		||||
      blugon calculates the screen color from your local time and configuration.
 | 
			
		||||
    '';
 | 
			
		||||
    license = licenses.asl20;
 | 
			
		||||
    homepage = "https://github.com/jumper149/blugon";
 | 
			
		||||
    platforms = platforms.unix;
 | 
			
		||||
    maintainers = with maintainers; [ jumper149 ];
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
GEM
 | 
			
		||||
  remote: https://rubygems.org/
 | 
			
		||||
  specs:
 | 
			
		||||
    charlock_holmes (0.7.6)
 | 
			
		||||
    charlock_holmes (0.7.7)
 | 
			
		||||
    diff-lcs (1.3)
 | 
			
		||||
    gemojione (3.3.0)
 | 
			
		||||
      json
 | 
			
		||||
@ -31,12 +31,12 @@ GEM
 | 
			
		||||
      twitter-text (= 1.14.7)
 | 
			
		||||
    json (2.2.0)
 | 
			
		||||
    kramdown (1.9.0)
 | 
			
		||||
    mime-types (3.2.2)
 | 
			
		||||
    mime-types (3.3)
 | 
			
		||||
      mime-types-data (~> 3.2015)
 | 
			
		||||
    mime-types-data (3.2019.0331)
 | 
			
		||||
    mime-types-data (3.2019.1009)
 | 
			
		||||
    mini_portile2 (2.4.0)
 | 
			
		||||
    mustache (0.99.8)
 | 
			
		||||
    nokogiri (1.10.4)
 | 
			
		||||
    nokogiri (1.10.5)
 | 
			
		||||
      mini_portile2 (~> 2.4.0)
 | 
			
		||||
    posix-spawn (0.3.13)
 | 
			
		||||
    rack (1.6.11)
 | 
			
		||||
@ -50,7 +50,7 @@ GEM
 | 
			
		||||
      rack-protection (~> 1.4)
 | 
			
		||||
      tilt (>= 1.3, < 3)
 | 
			
		||||
    stringex (2.8.5)
 | 
			
		||||
    tilt (2.0.9)
 | 
			
		||||
    tilt (2.0.10)
 | 
			
		||||
    twitter-text (1.14.7)
 | 
			
		||||
      unf (~> 0.1.0)
 | 
			
		||||
    unf (0.1.4)
 | 
			
		||||
@ -65,4 +65,4 @@ DEPENDENCIES
 | 
			
		||||
  gollum
 | 
			
		||||
 | 
			
		||||
BUNDLED WITH
 | 
			
		||||
   1.17.2
 | 
			
		||||
   1.17.3
 | 
			
		||||
 | 
			
		||||
@ -4,10 +4,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1nf1l31n10yaark2rrg5qzyzcx9w80681449s3j09qmnipsl8rl5";
 | 
			
		||||
      sha256 = "0hybw8jw9ryvz5zrki3gc9r88jqy373m6v46ynxsdzv1ysiyr40p";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "0.7.6";
 | 
			
		||||
    version = "0.7.7";
 | 
			
		||||
  };
 | 
			
		||||
  diff-lcs = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -110,20 +110,20 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
 | 
			
		||||
      sha256 = "0g7l18igjb9z7q4b2ykvyxyvjxlx5pwsmx5z3ibdbr6372xgfglk";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.2.2";
 | 
			
		||||
    version = "3.3";
 | 
			
		||||
  };
 | 
			
		||||
  mime-types-data = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1m00pg19cm47n1qlcxgl91ajh2yq0fszvn1vy8fy0s1jkrp9fw4a";
 | 
			
		||||
      sha256 = "18x61fc36951vw7f74gq8cyybdpxvyg5d0azvqhrs82ddw3v16xh";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.2019.0331";
 | 
			
		||||
    version = "3.2019.1009";
 | 
			
		||||
  };
 | 
			
		||||
  mini_portile2 = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -151,10 +151,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0nmdrqqz1gs0fwkgzxjl4wr554gr8dc1fkrqjc2jpsvwgm41rygv";
 | 
			
		||||
      sha256 = "185g3dwba73jqxjr94bd2zk6fil6n9hmcfnfyzh3p1w47vm296r7";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.10.4";
 | 
			
		||||
    version = "1.10.5";
 | 
			
		||||
  };
 | 
			
		||||
  posix-spawn = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -234,10 +234,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0ca4k0clwf0rkvy7726x4nxpjxkpv67w043i39saxgldxd97zmwz";
 | 
			
		||||
      sha256 = "0rn8z8hda4h41a64l0zhkiwz2vxw9b1nb70gl37h1dg2k874yrlv";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.0.9";
 | 
			
		||||
    version = "2.0.10";
 | 
			
		||||
  };
 | 
			
		||||
  twitter-text = {
 | 
			
		||||
    dependencies = ["unf"];
 | 
			
		||||
 | 
			
		||||
@ -1,28 +1,28 @@
 | 
			
		||||
GEM
 | 
			
		||||
  remote: https://rubygems.org/
 | 
			
		||||
  specs:
 | 
			
		||||
    activesupport (6.0.0)
 | 
			
		||||
    activesupport (6.0.1)
 | 
			
		||||
      concurrent-ruby (~> 1.0, >= 1.0.2)
 | 
			
		||||
      i18n (>= 0.7, < 2)
 | 
			
		||||
      minitest (~> 5.1)
 | 
			
		||||
      tzinfo (~> 1.1)
 | 
			
		||||
      zeitwerk (~> 2.1, >= 2.1.8)
 | 
			
		||||
    addressable (2.6.0)
 | 
			
		||||
      public_suffix (>= 2.0.2, < 4.0)
 | 
			
		||||
      zeitwerk (~> 2.2)
 | 
			
		||||
    addressable (2.7.0)
 | 
			
		||||
      public_suffix (>= 2.0.2, < 5.0)
 | 
			
		||||
    colorator (1.1.0)
 | 
			
		||||
    concurrent-ruby (1.1.5)
 | 
			
		||||
    em-websocket (0.5.1)
 | 
			
		||||
      eventmachine (>= 0.12.9)
 | 
			
		||||
      http_parser.rb (~> 0.6.0)
 | 
			
		||||
    eventmachine (1.2.7)
 | 
			
		||||
    ffi (1.11.1)
 | 
			
		||||
    ffi (1.11.2)
 | 
			
		||||
    forwardable-extended (2.6.0)
 | 
			
		||||
    gemoji (3.0.1)
 | 
			
		||||
    html-pipeline (2.12.0)
 | 
			
		||||
    html-pipeline (2.12.2)
 | 
			
		||||
      activesupport (>= 2)
 | 
			
		||||
      nokogiri (>= 1.4)
 | 
			
		||||
    http_parser.rb (0.6.0)
 | 
			
		||||
    i18n (1.6.0)
 | 
			
		||||
    i18n (1.7.0)
 | 
			
		||||
      concurrent-ruby (~> 1.0)
 | 
			
		||||
    jekyll (4.0.0)
 | 
			
		||||
      addressable (~> 2.4)
 | 
			
		||||
@ -44,7 +44,7 @@ GEM
 | 
			
		||||
    jekyll-mentions (1.5.1)
 | 
			
		||||
      html-pipeline (~> 2.3)
 | 
			
		||||
      jekyll (>= 3.7, < 5.0)
 | 
			
		||||
    jekyll-sass-converter (2.0.0)
 | 
			
		||||
    jekyll-sass-converter (2.0.1)
 | 
			
		||||
      sassc (> 2.0.1, < 3.0)
 | 
			
		||||
    jekyll-seo-tag (2.6.1)
 | 
			
		||||
      jekyll (>= 3.3, < 5.0)
 | 
			
		||||
@ -60,25 +60,23 @@ GEM
 | 
			
		||||
    kramdown-parser-gfm (1.1.0)
 | 
			
		||||
      kramdown (~> 2.0)
 | 
			
		||||
    liquid (4.0.3)
 | 
			
		||||
    listen (3.1.5)
 | 
			
		||||
      rb-fsevent (~> 0.9, >= 0.9.4)
 | 
			
		||||
      rb-inotify (~> 0.9, >= 0.9.7)
 | 
			
		||||
      ruby_dep (~> 1.2)
 | 
			
		||||
    listen (3.2.0)
 | 
			
		||||
      rb-fsevent (~> 0.10, >= 0.10.3)
 | 
			
		||||
      rb-inotify (~> 0.9, >= 0.9.10)
 | 
			
		||||
    mercenary (0.3.6)
 | 
			
		||||
    mini_portile2 (2.4.0)
 | 
			
		||||
    minitest (5.11.3)
 | 
			
		||||
    nokogiri (1.10.4)
 | 
			
		||||
    minitest (5.13.0)
 | 
			
		||||
    nokogiri (1.10.5)
 | 
			
		||||
      mini_portile2 (~> 2.4.0)
 | 
			
		||||
    pathutil (0.16.2)
 | 
			
		||||
      forwardable-extended (~> 2.6)
 | 
			
		||||
    public_suffix (3.1.1)
 | 
			
		||||
    public_suffix (4.0.1)
 | 
			
		||||
    rb-fsevent (0.10.3)
 | 
			
		||||
    rb-inotify (0.10.0)
 | 
			
		||||
      ffi (~> 1.0)
 | 
			
		||||
    rouge (3.9.0)
 | 
			
		||||
    ruby_dep (1.5.0)
 | 
			
		||||
    rouge (3.13.0)
 | 
			
		||||
    safe_yaml (1.0.5)
 | 
			
		||||
    sassc (2.1.0)
 | 
			
		||||
    sassc (2.2.1)
 | 
			
		||||
      ffi (~> 1.9)
 | 
			
		||||
    terminal-table (1.8.0)
 | 
			
		||||
      unicode-display_width (~> 1.1, >= 1.1.1)
 | 
			
		||||
@ -86,7 +84,7 @@ GEM
 | 
			
		||||
    tzinfo (1.2.5)
 | 
			
		||||
      thread_safe (~> 0.1)
 | 
			
		||||
    unicode-display_width (1.6.0)
 | 
			
		||||
    zeitwerk (2.1.9)
 | 
			
		||||
    zeitwerk (2.2.1)
 | 
			
		||||
 | 
			
		||||
PLATFORMS
 | 
			
		||||
  ruby
 | 
			
		||||
@ -100,4 +98,4 @@ DEPENDENCIES
 | 
			
		||||
  jemoji
 | 
			
		||||
 | 
			
		||||
BUNDLED WITH
 | 
			
		||||
   1.17.2
 | 
			
		||||
   1.17.3
 | 
			
		||||
 | 
			
		||||
@ -5,10 +5,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0b24ch7zmrdb4h6aismahk9785lc4ij30lmdr6ydv19kkljsjq5v";
 | 
			
		||||
      sha256 = "190xv21yz03zz8nlfly557ir859jr5zkwi89naziy65hskdnkw1s";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "6.0.0";
 | 
			
		||||
    version = "6.0.1";
 | 
			
		||||
  };
 | 
			
		||||
  addressable = {
 | 
			
		||||
    dependencies = ["public_suffix"];
 | 
			
		||||
@ -16,10 +16,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0bcm2hchn897xjhqj9zzsxf3n9xhddymj4lsclz508f4vw3av46l";
 | 
			
		||||
      sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.6.0";
 | 
			
		||||
    version = "2.7.0";
 | 
			
		||||
  };
 | 
			
		||||
  colorator = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -67,10 +67,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "06mvxpjply8qh4j3fj9wh08kdzwkbnvsiysh0vrhlk5cwxzjmblh";
 | 
			
		||||
      sha256 = "0cbads5da12lb3j0mg2hjrd57s5qkkairxh2y6r9bqyblb5b8xbw";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.11.1";
 | 
			
		||||
    version = "1.11.2";
 | 
			
		||||
  };
 | 
			
		||||
  forwardable-extended = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -98,10 +98,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0f7x70p3fda7i5wfjjljjgjgqwx8m12345bs4xpnh7fhnis42fkk";
 | 
			
		||||
      sha256 = "19hc7njr029pzqljpfhzhdi0p2rgn8ihn3bdnai2apy6nj1g1sg2";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.12.0";
 | 
			
		||||
    version = "2.12.2";
 | 
			
		||||
  };
 | 
			
		||||
  "http_parser.rb" = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -119,10 +119,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1hfxnlyr618s25xpafw9mypa82qppjccbh292c4l3bj36az7f6wl";
 | 
			
		||||
      sha256 = "0hmypvx9iyc0b4hski7aic2xzm09cg1c7q1qlpnk3k8s5acxzyhl";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.6.0";
 | 
			
		||||
    version = "1.7.0";
 | 
			
		||||
  };
 | 
			
		||||
  jekyll = {
 | 
			
		||||
    dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "kramdown-parser-gfm" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml" "terminal-table"];
 | 
			
		||||
@ -163,10 +163,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0fbc25p8vqyzmg8wpmgacqjkk3jhrr6kz9y45m43ygck74h2cad2";
 | 
			
		||||
      sha256 = "0xjzqpp35qr2vnf2zpak0srn773mp21glcq81a0iqpnrva7h80m3";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.0.0";
 | 
			
		||||
    version = "2.0.1";
 | 
			
		||||
  };
 | 
			
		||||
  jekyll-seo-tag = {
 | 
			
		||||
    dependencies = ["jekyll"];
 | 
			
		||||
@ -244,15 +244,15 @@
 | 
			
		||||
    version = "4.0.3";
 | 
			
		||||
  };
 | 
			
		||||
  listen = {
 | 
			
		||||
    dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"];
 | 
			
		||||
    dependencies = ["rb-fsevent" "rb-inotify"];
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx";
 | 
			
		||||
      sha256 = "1j3s7bprp2jfhgb959wd1h98978zg3207nl87yg8k5w7k08f7snb";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.1.5";
 | 
			
		||||
    version = "3.2.0";
 | 
			
		||||
  };
 | 
			
		||||
  mercenary = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -279,10 +279,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq";
 | 
			
		||||
      sha256 = "0w16p7cvslh3hxd3cia8jg4pd85z7rz7xqb16vh42gj4rijn8rmi";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "5.11.3";
 | 
			
		||||
    version = "5.13.0";
 | 
			
		||||
  };
 | 
			
		||||
  nokogiri = {
 | 
			
		||||
    dependencies = ["mini_portile2"];
 | 
			
		||||
@ -290,10 +290,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0nmdrqqz1gs0fwkgzxjl4wr554gr8dc1fkrqjc2jpsvwgm41rygv";
 | 
			
		||||
      sha256 = "185g3dwba73jqxjr94bd2zk6fil6n9hmcfnfyzh3p1w47vm296r7";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.10.4";
 | 
			
		||||
    version = "1.10.5";
 | 
			
		||||
  };
 | 
			
		||||
  pathutil = {
 | 
			
		||||
    dependencies = ["forwardable-extended"];
 | 
			
		||||
@ -311,10 +311,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0g9ds2ffzljl6jjmkjffwxc1z6lh5nkqqmhhkxjk71q5ggv0rkpm";
 | 
			
		||||
      sha256 = "0xnfv2j2bqgdpg2yq9i2rxby0w2sc9h5iyjkpaas2xknwrgmhdb0";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.1.1";
 | 
			
		||||
    version = "4.0.1";
 | 
			
		||||
  };
 | 
			
		||||
  rb-fsevent = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -342,20 +342,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1cn6fin40ngrasqi6qis85mqwx6phnbkzhkkd93acm9vrcf3rkl3";
 | 
			
		||||
      sha256 = "1y90nx9ph9adnrpcsvs2adca2l3dyz8am2d2kzxkwd3a086ji7aw";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.9.0";
 | 
			
		||||
  };
 | 
			
		||||
  ruby_dep = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.5.0";
 | 
			
		||||
    version = "3.13.0";
 | 
			
		||||
  };
 | 
			
		||||
  safe_yaml = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -373,10 +363,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "06kwfqvpwf33cvkvbv1l9g5ln3q721hz5d3dyasq0k9d28x9w4fs";
 | 
			
		||||
      sha256 = "09bnid7r5z5hcin5hykvpvv8xig27wbbckxwis60z2aaxq4j9siz";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.1.0";
 | 
			
		||||
    version = "2.2.1";
 | 
			
		||||
  };
 | 
			
		||||
  terminal-table = {
 | 
			
		||||
    dependencies = ["unicode-display_width"];
 | 
			
		||||
@ -425,9 +415,9 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0gaiqg207j99cvqpgmn4ps6a14hz1rrh5zaxfdkiiavapbc5vpzw";
 | 
			
		||||
      sha256 = "0w7w7y4jr6pcbgnzmh113fh8wz0f00xixl7qvf2rpvnanb68d5gw";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.1.9";
 | 
			
		||||
    version = "2.2.1";
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -1,14 +1,14 @@
 | 
			
		||||
GEM
 | 
			
		||||
  remote: https://rubygems.org/
 | 
			
		||||
  specs:
 | 
			
		||||
    activesupport (6.0.0)
 | 
			
		||||
    activesupport (6.0.1)
 | 
			
		||||
      concurrent-ruby (~> 1.0, >= 1.0.2)
 | 
			
		||||
      i18n (>= 0.7, < 2)
 | 
			
		||||
      minitest (~> 5.1)
 | 
			
		||||
      tzinfo (~> 1.1)
 | 
			
		||||
      zeitwerk (~> 2.1, >= 2.1.8)
 | 
			
		||||
    addressable (2.6.0)
 | 
			
		||||
      public_suffix (>= 2.0.2, < 4.0)
 | 
			
		||||
      zeitwerk (~> 2.2)
 | 
			
		||||
    addressable (2.7.0)
 | 
			
		||||
      public_suffix (>= 2.0.2, < 5.0)
 | 
			
		||||
    classifier-reborn (2.2.0)
 | 
			
		||||
      fast-stemmer (~> 1.0)
 | 
			
		||||
    coderay (1.1.2)
 | 
			
		||||
@ -23,17 +23,17 @@ GEM
 | 
			
		||||
      http_parser.rb (~> 0.6.0)
 | 
			
		||||
    eventmachine (1.2.7)
 | 
			
		||||
    execjs (2.7.0)
 | 
			
		||||
    faraday (0.15.4)
 | 
			
		||||
    faraday (0.17.0)
 | 
			
		||||
      multipart-post (>= 1.2, < 3)
 | 
			
		||||
    fast-stemmer (1.0.2)
 | 
			
		||||
    ffi (1.11.1)
 | 
			
		||||
    ffi (1.11.2)
 | 
			
		||||
    forwardable-extended (2.6.0)
 | 
			
		||||
    gemoji (3.0.1)
 | 
			
		||||
    html-pipeline (2.12.0)
 | 
			
		||||
    html-pipeline (2.12.2)
 | 
			
		||||
      activesupport (>= 2)
 | 
			
		||||
      nokogiri (>= 1.4)
 | 
			
		||||
    http_parser.rb (0.6.0)
 | 
			
		||||
    i18n (1.6.0)
 | 
			
		||||
    i18n (1.7.0)
 | 
			
		||||
      concurrent-ruby (~> 1.0)
 | 
			
		||||
    jekyll (4.0.0)
 | 
			
		||||
      addressable (~> 2.4)
 | 
			
		||||
@ -52,10 +52,10 @@ GEM
 | 
			
		||||
      terminal-table (~> 1.8)
 | 
			
		||||
    jekyll-avatar (0.7.0)
 | 
			
		||||
      jekyll (>= 3.0, < 5.0)
 | 
			
		||||
    jekyll-coffeescript (1.2.2)
 | 
			
		||||
    jekyll-coffeescript (2.0.0)
 | 
			
		||||
      coffee-script (~> 2.2)
 | 
			
		||||
      coffee-script-source (~> 1.12)
 | 
			
		||||
    jekyll-feed (0.12.1)
 | 
			
		||||
    jekyll-feed (0.13.0)
 | 
			
		||||
      jekyll (>= 3.7, < 5.0)
 | 
			
		||||
    jekyll-gist (1.5.0)
 | 
			
		||||
      octokit (~> 4.2)
 | 
			
		||||
@ -65,7 +65,7 @@ GEM
 | 
			
		||||
    jekyll-paginate (1.1.0)
 | 
			
		||||
    jekyll-redirect-from (0.15.0)
 | 
			
		||||
      jekyll (>= 3.3, < 5.0)
 | 
			
		||||
    jekyll-sass-converter (2.0.0)
 | 
			
		||||
    jekyll-sass-converter (2.0.1)
 | 
			
		||||
      sassc (> 2.0.1, < 3.0)
 | 
			
		||||
    jekyll-seo-tag (2.6.1)
 | 
			
		||||
      jekyll (>= 3.3, < 5.0)
 | 
			
		||||
@ -86,32 +86,30 @@ GEM
 | 
			
		||||
    liquid (4.0.3)
 | 
			
		||||
    liquid-c (4.0.0)
 | 
			
		||||
      liquid (>= 3.0.0)
 | 
			
		||||
    listen (3.1.5)
 | 
			
		||||
      rb-fsevent (~> 0.9, >= 0.9.4)
 | 
			
		||||
      rb-inotify (~> 0.9, >= 0.9.7)
 | 
			
		||||
      ruby_dep (~> 1.2)
 | 
			
		||||
    listen (3.2.0)
 | 
			
		||||
      rb-fsevent (~> 0.10, >= 0.10.3)
 | 
			
		||||
      rb-inotify (~> 0.9, >= 0.9.10)
 | 
			
		||||
    mercenary (0.3.6)
 | 
			
		||||
    mime-types (3.2.2)
 | 
			
		||||
    mime-types (3.3)
 | 
			
		||||
      mime-types-data (~> 3.2015)
 | 
			
		||||
    mime-types-data (3.2019.0331)
 | 
			
		||||
    mime-types-data (3.2019.1009)
 | 
			
		||||
    mini_portile2 (2.4.0)
 | 
			
		||||
    minitest (5.11.3)
 | 
			
		||||
    minitest (5.13.0)
 | 
			
		||||
    multipart-post (2.1.1)
 | 
			
		||||
    nokogiri (1.10.4)
 | 
			
		||||
    nokogiri (1.10.5)
 | 
			
		||||
      mini_portile2 (~> 2.4.0)
 | 
			
		||||
    octokit (4.14.0)
 | 
			
		||||
      sawyer (~> 0.8.0, >= 0.5.3)
 | 
			
		||||
    pathutil (0.16.2)
 | 
			
		||||
      forwardable-extended (~> 2.6)
 | 
			
		||||
    public_suffix (3.1.1)
 | 
			
		||||
    public_suffix (4.0.1)
 | 
			
		||||
    rb-fsevent (0.10.3)
 | 
			
		||||
    rb-inotify (0.10.0)
 | 
			
		||||
      ffi (~> 1.0)
 | 
			
		||||
    rdoc (6.1.1)
 | 
			
		||||
    rouge (3.9.0)
 | 
			
		||||
    ruby_dep (1.5.0)
 | 
			
		||||
    rdoc (6.2.0)
 | 
			
		||||
    rouge (3.13.0)
 | 
			
		||||
    safe_yaml (1.0.5)
 | 
			
		||||
    sassc (2.1.0)
 | 
			
		||||
    sassc (2.2.1)
 | 
			
		||||
      ffi (~> 1.9)
 | 
			
		||||
    sawyer (0.8.2)
 | 
			
		||||
      addressable (>= 2.3.5)
 | 
			
		||||
@ -124,7 +122,7 @@ GEM
 | 
			
		||||
      thread_safe (~> 0.1)
 | 
			
		||||
    unicode-display_width (1.6.0)
 | 
			
		||||
    yajl-ruby (1.4.1)
 | 
			
		||||
    zeitwerk (2.1.9)
 | 
			
		||||
    zeitwerk (2.2.1)
 | 
			
		||||
 | 
			
		||||
PLATFORMS
 | 
			
		||||
  ruby
 | 
			
		||||
@ -150,4 +148,4 @@ DEPENDENCIES
 | 
			
		||||
  yajl-ruby (~> 1.4)
 | 
			
		||||
 | 
			
		||||
BUNDLED WITH
 | 
			
		||||
   1.17.2
 | 
			
		||||
   1.17.3
 | 
			
		||||
 | 
			
		||||
@ -5,10 +5,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0b24ch7zmrdb4h6aismahk9785lc4ij30lmdr6ydv19kkljsjq5v";
 | 
			
		||||
      sha256 = "190xv21yz03zz8nlfly557ir859jr5zkwi89naziy65hskdnkw1s";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "6.0.0";
 | 
			
		||||
    version = "6.0.1";
 | 
			
		||||
  };
 | 
			
		||||
  addressable = {
 | 
			
		||||
    dependencies = ["public_suffix"];
 | 
			
		||||
@ -16,10 +16,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0bcm2hchn897xjhqj9zzsxf3n9xhddymj4lsclz508f4vw3av46l";
 | 
			
		||||
      sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.6.0";
 | 
			
		||||
    version = "2.7.0";
 | 
			
		||||
  };
 | 
			
		||||
  classifier-reborn = {
 | 
			
		||||
    dependencies = ["fast-stemmer"];
 | 
			
		||||
@ -132,10 +132,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0s72m05jvzc1pd6cw1i289chas399q0a14xrwg4rvkdwy7bgzrh0";
 | 
			
		||||
      sha256 = "0jk2bar4x6miq2cr73lv0lsbmw4cymiljvp29xb85jifsb3ba6az";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "0.15.4";
 | 
			
		||||
    version = "0.17.0";
 | 
			
		||||
  };
 | 
			
		||||
  fast-stemmer = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -164,10 +164,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "06mvxpjply8qh4j3fj9wh08kdzwkbnvsiysh0vrhlk5cwxzjmblh";
 | 
			
		||||
      sha256 = "0cbads5da12lb3j0mg2hjrd57s5qkkairxh2y6r9bqyblb5b8xbw";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.11.1";
 | 
			
		||||
    version = "1.11.2";
 | 
			
		||||
  };
 | 
			
		||||
  forwardable-extended = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -195,10 +195,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0f7x70p3fda7i5wfjjljjgjgqwx8m12345bs4xpnh7fhnis42fkk";
 | 
			
		||||
      sha256 = "19hc7njr029pzqljpfhzhdi0p2rgn8ihn3bdnai2apy6nj1g1sg2";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.12.0";
 | 
			
		||||
    version = "2.12.2";
 | 
			
		||||
  };
 | 
			
		||||
  "http_parser.rb" = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -216,10 +216,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1hfxnlyr618s25xpafw9mypa82qppjccbh292c4l3bj36az7f6wl";
 | 
			
		||||
      sha256 = "0hmypvx9iyc0b4hski7aic2xzm09cg1c7q1qlpnk3k8s5acxzyhl";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.6.0";
 | 
			
		||||
    version = "1.7.0";
 | 
			
		||||
  };
 | 
			
		||||
  jekyll = {
 | 
			
		||||
    dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "kramdown-parser-gfm" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml" "terminal-table"];
 | 
			
		||||
@ -249,10 +249,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "040i6cyv20qmxlpm74kh5hfci8208ja4903yxdv4x0qs0z172kl9";
 | 
			
		||||
      sha256 = "17fjk0bfm0rs3myid24y2scsf5vzzza185bissjmcc44cbxp571j";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.2.2";
 | 
			
		||||
    version = "2.0.0";
 | 
			
		||||
  };
 | 
			
		||||
  jekyll-feed = {
 | 
			
		||||
    dependencies = ["jekyll"];
 | 
			
		||||
@ -260,10 +260,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "01f0ivjdr3qc9dh9n8lj6paiy7zmlb7hs9nk6rgni6jjn5plslg3";
 | 
			
		||||
      sha256 = "1lx8nvkhd8l1wm3b6s506rycwbmpbzbsbjl65p21asjz6vbwf1ir";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "0.12.1";
 | 
			
		||||
    version = "0.13.0";
 | 
			
		||||
  };
 | 
			
		||||
  jekyll-gist = {
 | 
			
		||||
    dependencies = ["octokit"];
 | 
			
		||||
@ -314,10 +314,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0fbc25p8vqyzmg8wpmgacqjkk3jhrr6kz9y45m43ygck74h2cad2";
 | 
			
		||||
      sha256 = "0xjzqpp35qr2vnf2zpak0srn773mp21glcq81a0iqpnrva7h80m3";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.0.0";
 | 
			
		||||
    version = "2.0.1";
 | 
			
		||||
  };
 | 
			
		||||
  jekyll-seo-tag = {
 | 
			
		||||
    dependencies = ["jekyll"];
 | 
			
		||||
@ -441,15 +441,15 @@
 | 
			
		||||
    version = "4.0.0";
 | 
			
		||||
  };
 | 
			
		||||
  listen = {
 | 
			
		||||
    dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"];
 | 
			
		||||
    dependencies = ["rb-fsevent" "rb-inotify"];
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx";
 | 
			
		||||
      sha256 = "1j3s7bprp2jfhgb959wd1h98978zg3207nl87yg8k5w7k08f7snb";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.1.5";
 | 
			
		||||
    version = "3.2.0";
 | 
			
		||||
  };
 | 
			
		||||
  mercenary = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -467,20 +467,20 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
 | 
			
		||||
      sha256 = "0g7l18igjb9z7q4b2ykvyxyvjxlx5pwsmx5z3ibdbr6372xgfglk";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.2.2";
 | 
			
		||||
    version = "3.3";
 | 
			
		||||
  };
 | 
			
		||||
  mime-types-data = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1m00pg19cm47n1qlcxgl91ajh2yq0fszvn1vy8fy0s1jkrp9fw4a";
 | 
			
		||||
      sha256 = "18x61fc36951vw7f74gq8cyybdpxvyg5d0azvqhrs82ddw3v16xh";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.2019.0331";
 | 
			
		||||
    version = "3.2019.1009";
 | 
			
		||||
  };
 | 
			
		||||
  mini_portile2 = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -497,10 +497,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq";
 | 
			
		||||
      sha256 = "0w16p7cvslh3hxd3cia8jg4pd85z7rz7xqb16vh42gj4rijn8rmi";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "5.11.3";
 | 
			
		||||
    version = "5.13.0";
 | 
			
		||||
  };
 | 
			
		||||
  multipart-post = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -518,10 +518,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0nmdrqqz1gs0fwkgzxjl4wr554gr8dc1fkrqjc2jpsvwgm41rygv";
 | 
			
		||||
      sha256 = "185g3dwba73jqxjr94bd2zk6fil6n9hmcfnfyzh3p1w47vm296r7";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.10.4";
 | 
			
		||||
    version = "1.10.5";
 | 
			
		||||
  };
 | 
			
		||||
  octokit = {
 | 
			
		||||
    dependencies = ["sawyer"];
 | 
			
		||||
@ -550,10 +550,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0g9ds2ffzljl6jjmkjffwxc1z6lh5nkqqmhhkxjk71q5ggv0rkpm";
 | 
			
		||||
      sha256 = "0xnfv2j2bqgdpg2yq9i2rxby0w2sc9h5iyjkpaas2xknwrgmhdb0";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.1.1";
 | 
			
		||||
    version = "4.0.1";
 | 
			
		||||
  };
 | 
			
		||||
  rb-fsevent = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -581,30 +581,20 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "07b7ac2nls2yskaicqshxgip6dwpxl80hlx4pslq90jgpxgs2kkp";
 | 
			
		||||
      sha256 = "1gh7sc3xd4rgl9z90181cq580r1xqn063mmv51wdrhhsrkkw2bi9";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "6.1.1";
 | 
			
		||||
    version = "6.2.0";
 | 
			
		||||
  };
 | 
			
		||||
  rouge = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1cn6fin40ngrasqi6qis85mqwx6phnbkzhkkd93acm9vrcf3rkl3";
 | 
			
		||||
      sha256 = "1y90nx9ph9adnrpcsvs2adca2l3dyz8am2d2kzxkwd3a086ji7aw";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.9.0";
 | 
			
		||||
  };
 | 
			
		||||
  ruby_dep = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.5.0";
 | 
			
		||||
    version = "3.13.0";
 | 
			
		||||
  };
 | 
			
		||||
  safe_yaml = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -622,10 +612,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "06kwfqvpwf33cvkvbv1l9g5ln3q721hz5d3dyasq0k9d28x9w4fs";
 | 
			
		||||
      sha256 = "09bnid7r5z5hcin5hykvpvv8xig27wbbckxwis60z2aaxq4j9siz";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.1.0";
 | 
			
		||||
    version = "2.2.1";
 | 
			
		||||
  };
 | 
			
		||||
  sawyer = {
 | 
			
		||||
    dependencies = ["addressable" "faraday"];
 | 
			
		||||
@ -717,9 +707,9 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0gaiqg207j99cvqpgmn4ps6a14hz1rrh5zaxfdkiiavapbc5vpzw";
 | 
			
		||||
      sha256 = "0w7w7y4jr6pcbgnzmh113fh8wz0f00xixl7qvf2rpvnanb68d5gw";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "2.1.9";
 | 
			
		||||
    version = "2.2.1";
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -1,15 +1,12 @@
 | 
			
		||||
{ stdenv, fetchurl, sane-backends, qtbase, qtsvg, nss, autoPatchelfHook, lib, wrapQtAppsHook }:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  version = "5.4.10";
 | 
			
		||||
 | 
			
		||||
in stdenv.mkDerivation {
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "masterpdfeditor";
 | 
			
		||||
  inherit version;
 | 
			
		||||
  version = "5.4.38";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://code-industry.net/public/master-pdf-editor-${version}_qt5.amd64.tar.gz";
 | 
			
		||||
    sha256 = "1902ahb2g9xanrip1n0ihr31az8sv9fsvzddnzf70kbwlfclnqf7";
 | 
			
		||||
    url = "https://code-industry.net/public/master-pdf-editor-${version}-qt5.amd64.tar.gz";
 | 
			
		||||
    sha256 = "0fidy8gd4mqvyfgmrwdiz8z53dyzihqqhgfrffj0z0idm2zi4mcq";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ autoPatchelfHook wrapQtAppsHook ];
 | 
			
		||||
 | 
			
		||||
@ -2,13 +2,13 @@
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  pname = "notable";
 | 
			
		||||
  version = "1.4.0";
 | 
			
		||||
  version = "1.7.3";
 | 
			
		||||
in
 | 
			
		||||
appimageTools.wrapType2 rec {
 | 
			
		||||
  name = "${pname}-${version}";
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://github.com/notable/notable/releases/download/v${version}/Notable.${version}.AppImage";
 | 
			
		||||
    sha256 = "0ldmxnhqcphr92rb7imgb1dfx7bb3p515nrdds8jn4b8x6jgmnjr";
 | 
			
		||||
    url = "https://github.com/notable/notable/releases/download/v${version}/Notable-${version}.AppImage";
 | 
			
		||||
    sha256 = "1a7xpdk23np398nrgivyp8z54idqm72dfwx67i2rmxa3dnmcxkvl";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  profile = ''
 | 
			
		||||
@ -17,7 +17,7 @@ appimageTools.wrapType2 rec {
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  multiPkgs = null; # no 32bit needed
 | 
			
		||||
  extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
 | 
			
		||||
  extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [ p.at-spi2-atk p.at-spi2-core ];
 | 
			
		||||
  extraInstallCommands = "mv $out/bin/{${name},${pname}}";
 | 
			
		||||
 | 
			
		||||
  meta = with lib; {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
{ stdenv, lib, fetchurl, buildFHSUserEnv, makeDesktopItem, makeWrapper, atomEnv, libuuid, at-spi2-atk, icu, openssl, zlib }:
 | 
			
		||||
	let
 | 
			
		||||
		pname = "sidequest";
 | 
			
		||||
		version = "0.7.5";
 | 
			
		||||
		version = "0.7.6";
 | 
			
		||||
 | 
			
		||||
		desktopItem = makeDesktopItem rec {
 | 
			
		||||
			name = "SideQuest";
 | 
			
		||||
@ -16,7 +16,7 @@
 | 
			
		||||
 | 
			
		||||
			src = fetchurl {
 | 
			
		||||
				url = "https://github.com/the-expanse/SideQuest/releases/download/v${version}/SideQuest-${version}.tar.xz";
 | 
			
		||||
				sha256 = "1a77slpm7yga5vh3j1y440dq2xgv4pa6h8xg29rdcs6zig55pa97";
 | 
			
		||||
				sha256 = "1yyba5495ydyyfl62pjd4hbga86k7f2a72ds2j2qzkinngyl14j8";
 | 
			
		||||
			};
 | 
			
		||||
 | 
			
		||||
			buildInputs = [ makeWrapper ];
 | 
			
		||||
 | 
			
		||||
@ -1,23 +1,31 @@
 | 
			
		||||
{ stdenv, fetchFromGitHub, pidgin, glib, json-glib, nss, nspr, libgnome-keyring } :
 | 
			
		||||
{ stdenv, fetchFromGitHub, pkgconfig, pidgin, glib, json-glib, nss, nspr
 | 
			
		||||
, libsecret
 | 
			
		||||
} :
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation {
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "pidgin-opensteamworks";
 | 
			
		||||
  version = "unstable-2018-08-02";
 | 
			
		||||
  version = "1.7";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "EionRobb";
 | 
			
		||||
    repo = "pidgin-opensteamworks";
 | 
			
		||||
    rev = "b16a636d177f4a8862abdfbdb2c0994712ea0cd3";
 | 
			
		||||
    sha256 = "0qyxfrfzsm43f1gmbg350znwxld1fqr9a9yziqs322bx2vglzgfh";
 | 
			
		||||
    rev = version;
 | 
			
		||||
    sha256 = "0zxd45g9ycw5kmm4i0800jnqg1ms2gbqcld6gkyv6n3ac1wxizpj";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  preConfigure = "cd steam-mobile";
 | 
			
		||||
  sourceRoot = "source/steam-mobile";
 | 
			
		||||
 | 
			
		||||
  installFlags = [
 | 
			
		||||
    "PLUGIN_DIR_PURPLE=${placeholder "out"}/lib/purple-2"
 | 
			
		||||
    "DATA_ROOT_DIR_PURPLE=${placeholder "out"}/share"
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  buildInputs = [ pidgin glib json-glib nss nspr libgnome-keyring ];
 | 
			
		||||
  nativeBuildInputs = [
 | 
			
		||||
    pkgconfig
 | 
			
		||||
  ];
 | 
			
		||||
  buildInputs = [
 | 
			
		||||
    pidgin glib json-glib nss nspr libsecret
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    homepage = https://github.com/EionRobb/pidgin-opensteamworks;
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,40 @@
 | 
			
		||||
{ lib
 | 
			
		||||
, fetchurl
 | 
			
		||||
, appimageTools
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  pname = "zulip";
 | 
			
		||||
  version = "4.0.0";
 | 
			
		||||
  name = "${pname}-${version}";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://github.com/zulip/zulip-desktop/releases/download/v${version}/Zulip-${version}-x86_64.AppImage";
 | 
			
		||||
    sha256 = "1pni02mb5bvwx3k45vd6ga269ghdl633gjklyslai24rrhp16h9z";
 | 
			
		||||
    name="${pname}-${version}.AppImage";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  appimageContents = appimageTools.extractType2 {
 | 
			
		||||
    inherit name src;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
in appimageTools.wrapType2 {
 | 
			
		||||
  inherit name src;
 | 
			
		||||
 | 
			
		||||
  extraInstallCommands = ''
 | 
			
		||||
    mv $out/bin/${name} $out/bin/${pname}
 | 
			
		||||
    install -m 444 -D ${appimageContents}/zulip.desktop $out/share/applications/zulip.desktop
 | 
			
		||||
    install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/512x512/apps/zulip.png \
 | 
			
		||||
      $out/share/icons/hicolor/512x512/apps/zulip.png
 | 
			
		||||
    substituteInPlace $out/share/applications/zulip.desktop \
 | 
			
		||||
      --replace 'Exec=AppRun' 'Exec=${pname}'
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  meta = with lib; {
 | 
			
		||||
    description = "Desktop client for Zulip Chat";
 | 
			
		||||
    homepage = https://zulipchat.com;
 | 
			
		||||
    license = licenses.asl20;
 | 
			
		||||
    maintainers = with maintainers; [ jonafato ];
 | 
			
		||||
    platforms = [ "x86_64-linux" ];
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -4,13 +4,13 @@
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "quiterss";
 | 
			
		||||
  version = "0.19.0";
 | 
			
		||||
  version = "0.19.1";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "QuiteRSS";
 | 
			
		||||
    repo = "quiterss";
 | 
			
		||||
    rev = version;
 | 
			
		||||
    sha256 = "1czz8n21f4iaazvkq37m867bqy40sdkj44bqggfjcw49pl60kvjn";
 | 
			
		||||
    sha256 = "0zr17r33g99ylvb1avcbixg2jiwisaks4x91lywv2dy3g6dkpxml";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										17
									
								
								pkgs/applications/video/obs-studio/hardcode-ndi-path.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								pkgs/applications/video/obs-studio/hardcode-ndi-path.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,17 @@
 | 
			
		||||
diff --git a/src/obs-ndi.cpp b/src/obs-ndi.cpp
 | 
			
		||||
index 493831c..7b0f8db 100644
 | 
			
		||||
--- a/src/obs-ndi.cpp
 | 
			
		||||
+++ b/src/obs-ndi.cpp
 | 
			
		||||
@@ -197,11 +197,7 @@ const char* obs_module_description()
 | 
			
		||||
 const NDIlib_v4* load_ndilib()
 | 
			
		||||
 {
 | 
			
		||||
 	QStringList locations;
 | 
			
		||||
-	locations << QString(qgetenv(NDILIB_REDIST_FOLDER));
 | 
			
		||||
-#if defined(__linux__) || defined(__APPLE__)
 | 
			
		||||
-	locations << "/usr/lib";
 | 
			
		||||
-	locations << "/usr/local/lib";
 | 
			
		||||
-#endif
 | 
			
		||||
+	locations << "@NDI@/lib";
 | 
			
		||||
 
 | 
			
		||||
 	for (QString path : locations) {
 | 
			
		||||
 		blog(LOG_INFO, "Trying '%s'", path.toUtf8().constData());
 | 
			
		||||
@ -2,15 +2,18 @@
 | 
			
		||||
# somewhat manually install this:
 | 
			
		||||
 | 
			
		||||
# nix-env -f "<nixpkgs>" -iA obs-ndi
 | 
			
		||||
# mkdir -p ~/.config/obs-studio/plugins
 | 
			
		||||
# ln -s ~/.nix-profile/share/obs/obs-plugins/obs-ndi ~/.config/obs-studio/plugins/
 | 
			
		||||
# mkdir -p ~/.config/obs-studio/plugins/bin
 | 
			
		||||
# ln -s ~/.nix-profile/lib/obs-plugins/obs-ndi.so ~/.config/obs-studio/plugins/bin/
 | 
			
		||||
 | 
			
		||||
{ stdenv, fetchFromGitHub, obs-studio, cmake, qt5 }:
 | 
			
		||||
{ stdenv, fetchFromGitHub, obs-studio, cmake, qt5, ndi }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "obs-ndi";
 | 
			
		||||
  version = "4.7.1";
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ cmake ];
 | 
			
		||||
  buildInputs = [ obs-studio qt5.qtbase ndi ];
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "Palakis";
 | 
			
		||||
    repo = "obs-ndi";
 | 
			
		||||
@ -18,10 +21,9 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    sha256 = "040fkbf3f3qgqcrd3072y3zrjb4fwga8zr10jym744xd7bgyylqh";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  patches = [ ./fix-search-path.patch ];
 | 
			
		||||
  patches = [ ./fix-search-path.patch ./hardcode-ndi-path.patch ];
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ cmake ];
 | 
			
		||||
  buildInputs = [ obs-studio qt5.qtbase ];
 | 
			
		||||
  postPatch = "sed -i -e s,@NDI@,${ndi},g src/obs-ndi.cpp";
 | 
			
		||||
 | 
			
		||||
  cmakeFlags = [
 | 
			
		||||
    "-DLIBOBS_INCLUDE_DIR=${obs-studio}/include/obs"
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										30
									
								
								pkgs/applications/virtualization/spike/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								pkgs/applications/virtualization/spike/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,30 @@
 | 
			
		||||
{ stdenv, fetchgit, dtc }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "spike";
 | 
			
		||||
  version = "1.0.0";
 | 
			
		||||
 | 
			
		||||
  src = fetchgit {
 | 
			
		||||
    url = "https://github.com/riscv/riscv-isa-sim.git";
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "1hcl01nj96s3rkz4mrq747s5lkw81lgdjdimb8b1b9h8qnida7ww";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ dtc ];
 | 
			
		||||
  enableParallelBuilding = true;
 | 
			
		||||
 | 
			
		||||
  patchPhase = ''
 | 
			
		||||
    patchShebangs scripts/*.sh
 | 
			
		||||
    patchShebangs tests/ebreak.py
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  doCheck = true;
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A RISC-V ISA Simulator";
 | 
			
		||||
    homepage = "https://github.com/riscv/riscv-isa-sim";
 | 
			
		||||
    license = licenses.bsd3;
 | 
			
		||||
    platforms = [ "x86_64-linux" "aarch64-linux" ];
 | 
			
		||||
    maintainers = with maintainers; [ blitz ];
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										39
									
								
								pkgs/data/fonts/recursive/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								pkgs/data/fonts/recursive/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,39 @@
 | 
			
		||||
{ stdenv, fetchzip }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "recursive";
 | 
			
		||||
  version = "1.022";
 | 
			
		||||
 | 
			
		||||
  srcs = [
 | 
			
		||||
    (fetchzip {
 | 
			
		||||
      name = "${pname}";
 | 
			
		||||
      url = "https://github.com/arrowtype/recursive/releases/download/v${version}/recursive-beta_1_022.zip";
 | 
			
		||||
      sha256 = "09nr1fli7ksv8z4yb25c4xidwsqq50av18qrybsy4kqy5c22957v";
 | 
			
		||||
      stripRoot = false;
 | 
			
		||||
    })
 | 
			
		||||
 | 
			
		||||
    (fetchzip {
 | 
			
		||||
      name = "${pname}-static";
 | 
			
		||||
      url = "https://github.com/arrowtype/recursive/releases/download/v${version}/recursive-static_fonts-b020.zip";
 | 
			
		||||
      sha256 = "1wlj113gjm26ra9y2r2b3syis2wx0mjq2m8i8xpwscp1kflma1r6";
 | 
			
		||||
      stripRoot = false;
 | 
			
		||||
    })
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  sourceRoot = ".";
 | 
			
		||||
 | 
			
		||||
  installPhase = ''
 | 
			
		||||
    mkdir -p $out/share/fonts/{opentype,truetype,woff2}
 | 
			
		||||
    find -name "*.otf" -exec cp "{}" $out/share/fonts/opentype \;
 | 
			
		||||
    find -name "*.ttf" -exec cp "{}" $out/share/fonts/truetype \;
 | 
			
		||||
    find -name "*.woff2" -exec cp "{}" $out/share/fonts/woff2 \;
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    homepage = https://github.com/arrowtype/recursive;
 | 
			
		||||
    description = "A variable font family for code & UI";
 | 
			
		||||
    license = licenses.ofl;
 | 
			
		||||
    maintainers = [ maintainers.eadwu ];
 | 
			
		||||
    platforms = platforms.all;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -349,11 +349,11 @@ lib.makeScope pkgs.newScope (self: with self; {
 | 
			
		||||
  pidgin-im-gnome-shell-extension = pkgs.gnomeExtensions.pidgin-im-integration; # added 2019-08-01
 | 
			
		||||
 | 
			
		||||
  # added 2019-08-25
 | 
			
		||||
  corePackages = throw "deprecated 2019-08-25: please use `services.gnome3.core-shell.enable`";
 | 
			
		||||
  optionalPackages = throw "deprecated 2019-08-25: please use `services.gnome3.core-utilities.enable`";
 | 
			
		||||
  gamesPackages = throw "deprecated 2019-08-25: please use `services.gnome3.games.enable`";
 | 
			
		||||
  corePackages = throw "gnome3.corePackages is removed since 2019-08-25: please use `services.gnome3.core-shell.enable`";
 | 
			
		||||
  optionalPackages = throw "gnome3.optionalPackages is removed since 2019-08-25: please use `services.gnome3.core-utilities.enable`";
 | 
			
		||||
  gamesPackages = throw "gnome3.gamesPackages is removed since 2019-08-25: please use `services.gnome3.games.enable`";
 | 
			
		||||
 | 
			
		||||
  nautilus-sendto = throw "deprecated 2019-09-17: abandoned";
 | 
			
		||||
  nautilus-sendto = throw "nautilus-sendto is removed since 2019-09-17: abandoned upstream";
 | 
			
		||||
 | 
			
		||||
  inherit (pkgs) vala; # added 2019-10-10
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
{ stdenv, writeText, elixir, erlang, hexRegistrySnapshot, hex, lib }:
 | 
			
		||||
{ stdenv, writeText, elixir, erlang, hex, lib }:
 | 
			
		||||
 | 
			
		||||
{ name
 | 
			
		||||
, version
 | 
			
		||||
@ -43,7 +43,7 @@ let
 | 
			
		||||
    else setupHook;
 | 
			
		||||
 | 
			
		||||
    inherit buildInputs;
 | 
			
		||||
    propagatedBuildInputs = [ hexRegistrySnapshot hex elixir ] ++ beamDeps;
 | 
			
		||||
    propagatedBuildInputs = [ hex elixir ] ++ beamDeps;
 | 
			
		||||
 | 
			
		||||
    configurePhase = if configurePhase == null
 | 
			
		||||
    then ''
 | 
			
		||||
 | 
			
		||||
@ -14,16 +14,11 @@ let
 | 
			
		||||
      defaultScope = mkScope self;
 | 
			
		||||
      callPackage = drv: args: callPackageWithScope defaultScope drv args;
 | 
			
		||||
    in
 | 
			
		||||
      import ./hex-packages.nix {
 | 
			
		||||
        inherit pkgs stdenv callPackage;
 | 
			
		||||
      } // rec {
 | 
			
		||||
      rec {
 | 
			
		||||
        inherit callPackage erlang;
 | 
			
		||||
        beamPackages = self;
 | 
			
		||||
 | 
			
		||||
        hexRegistrySnapshot = callPackage ./hex-registry-snapshot.nix { };
 | 
			
		||||
 | 
			
		||||
        rebar = callPackage ../tools/build-managers/rebar { };
 | 
			
		||||
        rebar3-open = callPackage ../tools/build-managers/rebar3 { };
 | 
			
		||||
        rebar3 = callPackage ../tools/build-managers/rebar3 { };
 | 
			
		||||
 | 
			
		||||
        # rebar3 port compiler plugin is required by buildRebar3
 | 
			
		||||
@ -80,9 +75,6 @@ let
 | 
			
		||||
        webdriver = callPackage ./webdriver {};
 | 
			
		||||
        relxExe = callPackage ../tools/erlang/relx-exe {};
 | 
			
		||||
 | 
			
		||||
        # The tool used to upgrade hex-packages.nix.
 | 
			
		||||
        hex2nix = callPackage ../tools/erlang/hex2nix {};
 | 
			
		||||
 | 
			
		||||
        # An example of Erlang/C++ package.
 | 
			
		||||
        cuter = callPackage ../tools/erlang/cuter {};
 | 
			
		||||
      };
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										37751
									
								
								pkgs/development/beam-modules/hex-packages.nix
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										37751
									
								
								pkgs/development/beam-modules/hex-packages.nix
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -1,27 +0,0 @@
 | 
			
		||||
{stdenv, writeText, fetchFromGitHub }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
    pname = "hex-registry";
 | 
			
		||||
    rev = "11d7a24e9f53f52490ce255a6248e71128e73aa1";
 | 
			
		||||
    version = "unstable-2018-07-12";
 | 
			
		||||
 | 
			
		||||
    src = fetchFromGitHub {
 | 
			
		||||
        inherit rev;
 | 
			
		||||
        owner  = "erlang-nix";
 | 
			
		||||
        repo   = "hex-pm-registry-snapshots";
 | 
			
		||||
        sha256 = "0dbpcrdh6jqmvnm1ysmy7ixyc95vnbqmikyx5kk77qwgyd43fqgi";
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    installPhase = ''
 | 
			
		||||
       mkdir -p "$out/var/hex"
 | 
			
		||||
       zcat "registry.ets.gz" > "$out/var/hex/registry.ets"
 | 
			
		||||
    '';
 | 
			
		||||
 | 
			
		||||
    setupHook = writeText "setupHook.sh" ''
 | 
			
		||||
        export HEX_REGISTRY_SNAPSHOT="$1/var/hex/registry.ets"
 | 
			
		||||
   '';
 | 
			
		||||
 | 
			
		||||
    meta = {
 | 
			
		||||
        platforms = stdenv.lib.platforms.unix;
 | 
			
		||||
    };
 | 
			
		||||
}
 | 
			
		||||
@ -25,8 +25,7 @@
 | 
			
		||||
-record(data, {version
 | 
			
		||||
              , erl_libs
 | 
			
		||||
              , root
 | 
			
		||||
              , name
 | 
			
		||||
              , registry_snapshot}).
 | 
			
		||||
              , name}).
 | 
			
		||||
-define(LOCAL_HEX_REGISTRY, "registry.ets").
 | 
			
		||||
 | 
			
		||||
main(Args) ->
 | 
			
		||||
@ -51,8 +50,7 @@ gather_required_data_from_the_environment(_) ->
 | 
			
		||||
    {ok, #data{ version = guard_env("version")
 | 
			
		||||
              , erl_libs = os:getenv("ERL_LIBS", [])
 | 
			
		||||
              , root = code:root_dir()
 | 
			
		||||
              , name = guard_env("name")
 | 
			
		||||
              , registry_snapshot = guard_env("HEX_REGISTRY_SNAPSHOT")}}.
 | 
			
		||||
              , name = guard_env("name")}}.
 | 
			
		||||
 | 
			
		||||
-spec guard_env(string()) -> string().
 | 
			
		||||
guard_env(Name) ->
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										42
									
								
								pkgs/development/interpreters/quickjs/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								pkgs/development/interpreters/quickjs/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,42 @@
 | 
			
		||||
{ stdenv, fetchurl }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "quickjs";
 | 
			
		||||
  version = "2019-10-27";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://bellard.org/${pname}/${pname}-${version}.tar.xz";
 | 
			
		||||
    sha256 = "0xm16ja3c0k80jy0xkx0f40r44v2lgx2si4dnaw2w7c5nx7cmkai";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  makeFlags = [ "prefix=${placeholder ''out''}" ];
 | 
			
		||||
  enableParallelBuilding = true;
 | 
			
		||||
 | 
			
		||||
  doInstallCheck = true;
 | 
			
		||||
  installCheckPhase = ''
 | 
			
		||||
    PATH="$out/bin:$PATH"
 | 
			
		||||
 | 
			
		||||
    # Programs exit with code 1 when testing help, so grep for a string
 | 
			
		||||
    set +o pipefail
 | 
			
		||||
    qjs     --help 2>&1 | grep "QuickJS version"
 | 
			
		||||
    qjsbn   --help 2>&1 | grep "QuickJS version"
 | 
			
		||||
    qjscalc --help 2>&1 | grep "QuickJS version"
 | 
			
		||||
    set -o pipefail
 | 
			
		||||
 | 
			
		||||
    temp=$(mktemp).js
 | 
			
		||||
    echo "console.log('Output from compiled program');" > "$temp"
 | 
			
		||||
    set -o verbose
 | 
			
		||||
    out=$(mktemp) && qjsc         "$temp" -o "$out" && "$out" | grep -q "Output from compiled program"
 | 
			
		||||
    out=$(mktemp) && qjsbnc       "$temp" -o "$out" && "$out" | grep -q "Output from compiled program"
 | 
			
		||||
    out=$(mktemp) && qjsc   -flto "$temp" -o "$out" && "$out" | grep -q "Output from compiled program"
 | 
			
		||||
    out=$(mktemp) && qjsbnc -flto "$temp" -o "$out" && "$out" | grep -q "Output from compiled program"
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A small and embeddable Javascript engine";
 | 
			
		||||
    homepage = "https://bellard.org/quickjs/";
 | 
			
		||||
    maintainers = with maintainers; [ stesie ivan ];
 | 
			
		||||
    platforms = platforms.linux;
 | 
			
		||||
    license = licenses.mit;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -15,11 +15,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  nativeBuildInputs = [ cmake ninja unzip ];
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A polygon and line clipping and offsetting library (C++, C#, Delphi)";
 | 
			
		||||
    longDescription = ''
 | 
			
		||||
      The Clipper library performs line & polygon clipping - intersection, union, difference & exclusive-or,
 | 
			
		||||
      and line & polygon offsetting. The library is based on Vatti's clipping algorithm.
 | 
			
		||||
    '';
 | 
			
		||||
    homepage = https://sourceforge.net/projects/polyclipping;
 | 
			
		||||
    homepage = "https://sourceforge.net/projects/polyclipping";
 | 
			
		||||
    license = licenses.boost;
 | 
			
		||||
    maintainers = with maintainers; [ mpickering ];
 | 
			
		||||
    platforms = with platforms; unix;
 | 
			
		||||
 | 
			
		||||
@ -1,15 +1,17 @@
 | 
			
		||||
{ stdenv, fetchsvn, cmake } :
 | 
			
		||||
{ stdenv, fetchFromGitHub, cmake } :
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  version = "0.8";
 | 
			
		||||
  version = "0.9.2";
 | 
			
		||||
 | 
			
		||||
in stdenv.mkDerivation {
 | 
			
		||||
  pname = "codec2";
 | 
			
		||||
  inherit version;
 | 
			
		||||
 | 
			
		||||
  src = fetchsvn {
 | 
			
		||||
    url = "https://svn.code.sf.net/p/freetel/code/codec2/branches/${version}";
 | 
			
		||||
    sha256 = "0qbyaqdn37253s30n6m2ric8nfdsxhkslb9h572kdx18j2yjccki";
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "drowe67";
 | 
			
		||||
    repo = "codec2";
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "1jpvr7bra8srz8jvnlbmhf8andbaavq5v01qjnp2f61za93rzwba";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  enableParallelBuilding = true;
 | 
			
		||||
 | 
			
		||||
@ -1,18 +0,0 @@
 | 
			
		||||
{stdenv, fetchurl}:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation {
 | 
			
		||||
  name = "coredumper-1.1";
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = http://google-coredumper.googlecode.com/files/coredumper-1.1.tar.gz;
 | 
			
		||||
    sha256 = "1phl1zg2n17rp595dyzz9iw01gfdpsdh0l6wy2hfb5shi71h63rx";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  # Doesn't build:
 | 
			
		||||
  #
 | 
			
		||||
  # src/elfcore.c: In function 'CreatePipeline':
 | 
			
		||||
  # src/elfcore.c:1424:26: error: 'CLONE_VM' undeclared (first use in this function)
 | 
			
		||||
  #                           CLONE_VM|CLONE_UNTRACED|SIGCHLD, &args, 0, 0, 0);
 | 
			
		||||
  #                           ^
 | 
			
		||||
  # src/elfcore.c:1424:26: note: each undeclared identifier is reported only once for each function it appears in
 | 
			
		||||
  meta.broken = true;
 | 
			
		||||
}
 | 
			
		||||
@ -19,7 +19,8 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  doCheck = stdenv.isLinux;
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    homepage = https://libopenraw.freedesktop.org/wiki/Exempi/;
 | 
			
		||||
    description = "An implementation of XMP (Adobe's Extensible Metadata Platform)";
 | 
			
		||||
    homepage = "https://libopenraw.freedesktop.org/wiki/Exempi/";
 | 
			
		||||
    platforms = platforms.linux ++ platforms.darwin;
 | 
			
		||||
    license = licenses.bsd3;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -7,7 +7,8 @@ stdenv.mkDerivation {
 | 
			
		||||
  };
 | 
			
		||||
  buildInputs = [ libusb ];
 | 
			
		||||
  meta = {
 | 
			
		||||
    homepage = https://code.google.com/archive/p/garmintools/; # community clone at https://github.com/ianmartin/garmintools
 | 
			
		||||
    description = "Provides the ability to communicate with the Garmin Forerunner 305 via the USB interface";
 | 
			
		||||
    homepage = "https://code.google.com/archive/p/garmintools/"; # community clone at https://github.com/ianmartin/garmintools
 | 
			
		||||
    license = stdenv.lib.licenses.gpl2;
 | 
			
		||||
    maintainers = [ stdenv.lib.maintainers.ocharles ];
 | 
			
		||||
    platforms = stdenv.lib.platforms.unix;
 | 
			
		||||
 | 
			
		||||
@ -40,6 +40,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  doCheck = stdenv.isx86_64;
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = " A library for 2D/3D vectors and matrices and other mathematical objects, functions and data types for computer graphics";
 | 
			
		||||
    homepage = https://www.openexr.com/;
 | 
			
		||||
    license = licenses.bsd3;
 | 
			
		||||
    platforms = platforms.all;
 | 
			
		||||
 | 
			
		||||
@ -10,6 +10,8 @@ stdenv.mkDerivation {
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = "A XMPP (Jabber) client library for instant messaging and presence";
 | 
			
		||||
    homepage = "http://www.igniterealtime.org/projects/smack/";
 | 
			
		||||
    platforms = stdenv.lib.platforms.unix;
 | 
			
		||||
    license = stdenv.lib.licenses.asl20;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -8,6 +8,8 @@ stdenv.mkDerivation {
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = "A portable library for controlling audio CDs";
 | 
			
		||||
    homepage = "http://libcdaudio.sourceforge.net";
 | 
			
		||||
    platforms = stdenv.lib.platforms.linux;
 | 
			
		||||
    license = stdenv.lib.licenses.lgpl2;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -22,6 +22,12 @@ stdenv.mkDerivation rec {
 | 
			
		||||
      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/libextractor-exiv2-0.27.patch?h=packages/libextractor&id=4dc53f7fc69210ae571285dface108ed65d8ee53";
 | 
			
		||||
      sha256 = "0w4gc1q1m1yxsd4hv105nblmif465nw3g5nxzldy0x2rl9mdncg6";
 | 
			
		||||
    })
 | 
			
		||||
    (fetchpatch {
 | 
			
		||||
      name = "CVE-2019-15531.patch";
 | 
			
		||||
      url = "https://git.gnunet.org/libextractor.git/patch/?id=d2b032452241708bee68d02aa02092cfbfba951a";
 | 
			
		||||
      sha256 = "01xhcjbzv6p53wz7y2ii76kb8m9iwvnm4ip9w4a0bpgaxqz4b9fw";
 | 
			
		||||
      excludes = [ "ChangeLog" ];
 | 
			
		||||
    })
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  preConfigure =
 | 
			
		||||
 | 
			
		||||
@ -32,6 +32,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A library that provides GObject bindings for libudev";
 | 
			
		||||
    homepage = https://wiki.gnome.org/Projects/libgudev;
 | 
			
		||||
    maintainers = [ maintainers.eelco ] ++ gnome3.maintainers;
 | 
			
		||||
    platforms = platforms.linux;
 | 
			
		||||
 | 
			
		||||
@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  enableParallelBuilding = true;
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A GPL reimplementation of libdjb";
 | 
			
		||||
    homepage = https://www.fefe.de/libowfat/;
 | 
			
		||||
    license = licenses.gpl2;
 | 
			
		||||
    platforms = platforms.linux;
 | 
			
		||||
 | 
			
		||||
@ -12,7 +12,8 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  ++ stdenv.lib.optional (stdenv.cc.libc != null) "SYSROOT=${stdenv.lib.getDev stdenv.cc.libc}"
 | 
			
		||||
  ;
 | 
			
		||||
  meta = {
 | 
			
		||||
    homepage = http://www.creytiv.com/re.html;
 | 
			
		||||
    description = "A library for real-time communications with async IO support and a complete SIP stack";
 | 
			
		||||
    homepage = "http://www.creytiv.com/re.html";
 | 
			
		||||
    platforms = with stdenv.lib.platforms; linux;
 | 
			
		||||
    maintainers = with stdenv.lib.maintainers; [raskin];
 | 
			
		||||
    license = stdenv.lib.licenses.bsd3;
 | 
			
		||||
 | 
			
		||||
@ -16,7 +16,8 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  ++ stdenv.lib.optional (stdenv.cc.libc != null) "SYSROOT=${stdenv.lib.getDev stdenv.cc.libc}"
 | 
			
		||||
  ;
 | 
			
		||||
  meta = {
 | 
			
		||||
    homepage = http://www.creytiv.com/rem.html;
 | 
			
		||||
    description = " A library for real-time audio and video processing";
 | 
			
		||||
    homepage = "http://www.creytiv.com/rem.html";
 | 
			
		||||
    platforms = with stdenv.lib.platforms; linux;
 | 
			
		||||
    maintainers = with stdenv.lib.maintainers; [raskin];
 | 
			
		||||
    license = stdenv.lib.licenses.bsd3;
 | 
			
		||||
 | 
			
		||||
@ -29,6 +29,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  doCheck = true;
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "Vorbis audio compression reference implementation";
 | 
			
		||||
    homepage = https://xiph.org/vorbis/;
 | 
			
		||||
    license = licenses.bsd3;
 | 
			
		||||
    maintainers = [ maintainers.ehmry ];
 | 
			
		||||
 | 
			
		||||
@ -10,6 +10,7 @@ stdenv.mkDerivation {
 | 
			
		||||
  sourceRoot = "zlib-${zlib.version}/contrib/minizip";
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = "Compression library implementing the deflate compression method found in gzip and PKZIP";
 | 
			
		||||
    inherit (zlib.meta) license homepage;
 | 
			
		||||
    platforms = stdenv.lib.platforms.unix;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -4,11 +4,11 @@
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation  rec {
 | 
			
		||||
  pname = "mpich";
 | 
			
		||||
  version = "3.3.1";
 | 
			
		||||
  version = "3.3.2";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://www.mpich.org/static/downloads/${version}/mpich-${version}.tar.gz";
 | 
			
		||||
    sha256 = "1raism1r4jsx4cybc9ddyr1xkccbxm0l8j3ryrw8kslfkkr1wmgy";
 | 
			
		||||
    sha256 = "1farz5zfx4cd0c3a0wb9pgfypzw0xxql1j1294z1sxslga1ziyjb";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  configureFlags = [
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										60
									
								
								pkgs/development/libraries/ndi/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								pkgs/development/libraries/ndi/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,60 @@
 | 
			
		||||
{ stdenv, requireFile, avahi }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "ndi";
 | 
			
		||||
  version = "4";
 | 
			
		||||
 | 
			
		||||
  src = requireFile rec {
 | 
			
		||||
    name    = "InstallNDISDK_v${version}_Linux.tar.gz";
 | 
			
		||||
    sha256  = "1hac5npyg8nifs9ipj34pkn0zjyx8774x3i3h8znhmijx2j2982p";
 | 
			
		||||
    message = ''
 | 
			
		||||
      In order to use the NDI SDK, you need to comply with NewTek's license and
 | 
			
		||||
      download the Linux version ${version} tarball from:
 | 
			
		||||
 | 
			
		||||
      ${meta.homepage}
 | 
			
		||||
 | 
			
		||||
      Once you have downloaded the file, please use the following command and
 | 
			
		||||
      re-run the installation:
 | 
			
		||||
 | 
			
		||||
      nix-prefetch-url file://\$PWD/${name}
 | 
			
		||||
    '';
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  buildInputs = [ avahi ];
 | 
			
		||||
 | 
			
		||||
  unpackPhase = ''
 | 
			
		||||
    unpackFile ${src}
 | 
			
		||||
    echo y | ./InstallNDISDK_v4_Linux.sh
 | 
			
		||||
    sourceRoot="NDI SDK for Linux";
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  installPhase = ''
 | 
			
		||||
    mkdir $out
 | 
			
		||||
    mv bin/x86_64-linux-gnu $out/bin
 | 
			
		||||
    for i in $out/bin/*; do
 | 
			
		||||
      patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$i"
 | 
			
		||||
    done
 | 
			
		||||
    patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" $out/bin/ndi-record
 | 
			
		||||
    mv lib/x86_64-linux-gnu $out/lib
 | 
			
		||||
    for i in $out/lib/*; do
 | 
			
		||||
      if [ -L "$i" ]; then continue; fi
 | 
			
		||||
      patchelf --set-rpath "${avahi}/lib:${stdenv.cc.libc}/lib" "$i"
 | 
			
		||||
    done
 | 
			
		||||
    mv include examples $out/
 | 
			
		||||
    mkdir -p $out/share/doc/${pname}-${version}
 | 
			
		||||
    mv licenses $out/share/doc/${pname}-${version}/licenses
 | 
			
		||||
    mv logos $out/share/doc/${pname}-${version}/logos
 | 
			
		||||
    mv documentation/* $out/share/doc/${pname}-${version}/
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  # Stripping breaks ndi-record.
 | 
			
		||||
  dontStrip = true;
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    homepage = "https://ndi.tv/sdk/";
 | 
			
		||||
    description = "NDI Software Developer Kit";
 | 
			
		||||
    platforms = ["x86_64-linux"];
 | 
			
		||||
    hydraPlatforms = [];
 | 
			
		||||
    license = licenses.unfree;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -41,6 +41,7 @@ in stdenv.mkDerivation rec {
 | 
			
		||||
  ++ (stdenv.lib.optionals mpiSupport [ "--enable-parallel-tests" "CC=${mpi}/bin/mpicc" ]);
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
      description = "Libraries for the Unidata network Common Data Format";
 | 
			
		||||
      platforms = stdenv.lib.platforms.unix;
 | 
			
		||||
      homepage = https://www.unidata.ucar.edu/software/netcdf/;
 | 
			
		||||
      license = {
 | 
			
		||||
 | 
			
		||||
@ -25,6 +25,8 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  nativeBuildInputs = [ cmake pkgconfig ];
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = "A toolbox designed to speak the many languages of chemical data";
 | 
			
		||||
    homepage = "http://openbabel.org";
 | 
			
		||||
    platforms = stdenv.lib.platforms.all;
 | 
			
		||||
    maintainers = [ ];
 | 
			
		||||
    license = stdenv.lib.licenses.gpl2Plus;
 | 
			
		||||
 | 
			
		||||
@ -16,7 +16,8 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  configureFlags = [ "ac_cv_file__usr_include_mach_audit_triggers_defs=no" ];
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    homepage = http://www.openbsm.org/;
 | 
			
		||||
    description = "An implementation of Sun's Basic Security Module (BSM) security audit API and file format";
 | 
			
		||||
    homepage = "http://www.openbsm.org/";
 | 
			
		||||
    platforms = lib.platforms.unix;
 | 
			
		||||
    maintainers = with lib.maintainers; [ matthewbauer ];
 | 
			
		||||
    license = lib.licenses.bsd2;
 | 
			
		||||
 | 
			
		||||
@ -55,7 +55,8 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  doCheck = false; # fails 1 of 1 tests
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    homepage = https://www.openexr.com/;
 | 
			
		||||
    description = "A high dynamic-range (HDR) image file format";
 | 
			
		||||
    homepage = "https://www.openexr.com/";
 | 
			
		||||
    license = licenses.bsd3;
 | 
			
		||||
    platforms = platforms.all;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -4,10 +4,7 @@ stdenv.mkDerivation {
 | 
			
		||||
  name = "schroedinger-1.0.11";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    urls = [
 | 
			
		||||
      http://diracvideo.org/download/schroedinger/schroedinger-1.0.11.tar.gz
 | 
			
		||||
      https://download.videolan.org/contrib/schroedinger-1.0.11.tar.gz
 | 
			
		||||
    ];
 | 
			
		||||
    url = https://download.videolan.org/contrib/schroedinger-1.0.11.tar.gz;
 | 
			
		||||
    sha256 = "04prr667l4sn4zx256v1z36a0nnkxfdqyln48rbwlamr6l3jlmqy";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -27,7 +24,8 @@ stdenv.mkDerivation {
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    homepage = http://diracvideo.org/;
 | 
			
		||||
    description = "An implementation of the Dirac video codec in ANSI C";
 | 
			
		||||
    homepage = "https://sourceforge.net/projects/schrodinger/";
 | 
			
		||||
    maintainers = [ maintainers.spwhitt ];
 | 
			
		||||
    license = [ licenses.mpl11 licenses.lgpl2 licenses.mit ];
 | 
			
		||||
    platforms = platforms.unix;
 | 
			
		||||
 | 
			
		||||
@ -46,6 +46,7 @@ in stdenvNoCC.mkDerivation {
 | 
			
		||||
      tar xzvf $f
 | 
			
		||||
    done
 | 
			
		||||
  '' else ''
 | 
			
		||||
    rpmextract rpm/intel-mkl-cluster-rt-${rpm-ver}.x86_64.rpm
 | 
			
		||||
    rpmextract rpm/intel-mkl-common-c-${rpm-ver}.noarch.rpm
 | 
			
		||||
    rpmextract rpm/intel-mkl-core-${rpm-ver}.x86_64.rpm
 | 
			
		||||
    rpmextract rpm/intel-mkl-core-rt-${rpm-ver}.x86_64.rpm
 | 
			
		||||
 | 
			
		||||
@ -11,6 +11,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
 | 
			
		||||
  propagatedBuildInputs = [audiofile libtiff];
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = "A portable and modular SIP User-Agent with audio and video support";
 | 
			
		||||
    homepage = http://www.creytiv.com/baresip.html;
 | 
			
		||||
    platforms = with stdenv.lib.platforms; linux;
 | 
			
		||||
    maintainers = with stdenv.lib.maintainers; [raskin];
 | 
			
		||||
 | 
			
		||||
@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  meta = {
 | 
			
		||||
    description = "Lightweight and robust POSIX compliant regexp matching library";
 | 
			
		||||
    homepage = "https://laurikari.net/tre/";
 | 
			
		||||
    platforms = stdenv.lib.platforms.unix;
 | 
			
		||||
    license = stdenv.lib.licenses.bsd2;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -3,19 +3,23 @@
 | 
			
		||||
, fetchPypi
 | 
			
		||||
, cython
 | 
			
		||||
, numpy
 | 
			
		||||
, scikitlearn
 | 
			
		||||
, six
 | 
			
		||||
, python
 | 
			
		||||
, isPy27
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
buildPythonPackage rec {
 | 
			
		||||
  pname = "word2vec";
 | 
			
		||||
  version = "0.10.2";
 | 
			
		||||
  disabled = isPy27;
 | 
			
		||||
 | 
			
		||||
  src = fetchPypi {
 | 
			
		||||
    inherit pname version;
 | 
			
		||||
    sha256 = "40f6f30a5f113ffbfc24c5ad5de23bfac897f4c1210fb93685b7fca5c4dee7db";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  propagatedBuildInputs = [ cython numpy ];
 | 
			
		||||
  propagatedBuildInputs = [ cython numpy scikitlearn six ];
 | 
			
		||||
 | 
			
		||||
  checkPhase = ''
 | 
			
		||||
   cd word2vec/tests;
 | 
			
		||||
@ -27,7 +31,6 @@ buildPythonPackage rec {
 | 
			
		||||
    homepage = "https://github.com/danielfrg/word2vec";
 | 
			
		||||
    license     = licenses.asl20;
 | 
			
		||||
    maintainers = with maintainers; [ NikolaMandic ];
 | 
			
		||||
    broken = true;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1,14 +1,14 @@
 | 
			
		||||
{ stdenv, fetchFromGitHub, ocamlPackages, CoreServices }:
 | 
			
		||||
{ stdenv, fetchFromGitHub, ocamlPackages, CoreServices, fetchpatch }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "flow";
 | 
			
		||||
  version = "0.111.3";
 | 
			
		||||
  version = "0.112.0";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner  = "facebook";
 | 
			
		||||
    repo   = "flow";
 | 
			
		||||
    rev    = "refs/tags/v${version}";
 | 
			
		||||
    sha256 = "12hfdcm491ylh0a8rhzj76wdbh556r02aj4q6vv86n3lh2120cxm";
 | 
			
		||||
    sha256 = "1l8aahvlj9hk93snvrqm7r0mxj5iw244q72s6wallsqm7j4g967h";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  installPhase = ''
 | 
			
		||||
@ -19,6 +19,14 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  buildInputs = (with ocamlPackages; [ ocaml findlib ocamlbuild dtoa core_kernel sedlex ocaml_lwt lwt_log lwt_ppx ppx_deriving ppx_gen_rec ppx_tools_versioned visitors wtf8 ocaml-migrate-parsetree ])
 | 
			
		||||
    ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
 | 
			
		||||
 | 
			
		||||
  patches = [
 | 
			
		||||
    # Fix List.compare labeled argument. Remove when https://github.com/facebook/flow/pull/8191 is merged
 | 
			
		||||
    (fetchpatch {
 | 
			
		||||
      url = "https://github.com/facebook/flow/commit/1625664ec7290d4128587d96cb878571751f8881.patch";
 | 
			
		||||
      sha256 = "18fan0d2xa6z4ilbr7ha3vhnfqlr2s6mb02sgpv8ala99b0mcgmn";
 | 
			
		||||
    })
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A static type checker for JavaScript";
 | 
			
		||||
    homepage = https://flow.org/;
 | 
			
		||||
 | 
			
		||||
@ -2,22 +2,22 @@
 | 
			
		||||
 | 
			
		||||
buildGoModule rec {
 | 
			
		||||
  pname = "tflint";
 | 
			
		||||
  version = "0.12.1";
 | 
			
		||||
  version = "0.13.1";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "wata727";
 | 
			
		||||
    owner = "terraform-linters";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "1vwv6gkzrs5nv5a278siwza2ifwqy08rmcdddx275crcjkz3bv53";
 | 
			
		||||
    sha256 = "0ivvx1nbhzijyiv9q05b5953wxga5wdskamnhfvlwpniabic3gxi";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  modSha256 = "048mh6zr1fkz5bcxg27d0s472ig9xcq0zgbqpxspkvkdxxw9iizf";
 | 
			
		||||
  modSha256 = "0q1sc0bj4a29rzly4fk6m40b8i7syxa7ff9882jwi7gxjdiklch3";
 | 
			
		||||
 | 
			
		||||
  subPackages = [ "." ];
 | 
			
		||||
 | 
			
		||||
  meta = with lib; {
 | 
			
		||||
    description = "Terraform linter focused on possible errors, best practices, and so on";
 | 
			
		||||
    homepage = "https://github.com/wata727/tflint";
 | 
			
		||||
    homepage = "https://github.com/terraform-linters/tflint";
 | 
			
		||||
    license = licenses.mpl20;
 | 
			
		||||
    maintainers = [ maintainers.marsam ];
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										29
									
								
								pkgs/development/tools/async/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								pkgs/development/tools/async/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,29 @@
 | 
			
		||||
{ stdenv, fetchFromGitHub, rustPlatform }:
 | 
			
		||||
 | 
			
		||||
rustPlatform.buildRustPackage rec {
 | 
			
		||||
  pname = "async";
 | 
			
		||||
  version = "0.1.1";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "ctbur";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "19ypflbayi5l0mb8yw7w0a4bq9a3w8nl9jsxapp9m3xggzmsvrxx";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  cargoSha256 = "1qf52xsd15rj8y9w65zyab7akvzry76k1d4gxvxlz7ph3sl7jl3y";
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A tool to parallelize shell commands";
 | 
			
		||||
    longDescription = ''
 | 
			
		||||
      `async` is a tool to run shell commands in parallel and is designed to be
 | 
			
		||||
      able to quickly parallelize shell scripts with minimal changes. It was
 | 
			
		||||
      inspired by GNU Parallel, with the main difference being that async
 | 
			
		||||
      retains state between commands by running a server in the background.
 | 
			
		||||
      '';
 | 
			
		||||
    homepage = "https://github.com/ctbur/async";
 | 
			
		||||
    license = licenses.gpl3Plus;
 | 
			
		||||
    maintainers = with maintainers; [ minijackson ];
 | 
			
		||||
    platforms = platforms.all;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -1,12 +1,10 @@
 | 
			
		||||
{ stdenv, fetchFromGitHub,
 | 
			
		||||
  fetchHex, erlang,
 | 
			
		||||
  tree, hexRegistrySnapshot }:
 | 
			
		||||
  tree }:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  version = "3.12.0";
 | 
			
		||||
 | 
			
		||||
  bootstrapper = ./rebar3-nix-bootstrap;
 | 
			
		||||
 | 
			
		||||
  erlware_commons = fetchHex {
 | 
			
		||||
    pkg = "erlware_commons";
 | 
			
		||||
    version = "1.3.1";
 | 
			
		||||
@ -80,15 +78,9 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    sha256 = "0936ix7lfwsamssap58b265zid7x2m97azrr2qpjcln3xysd16lg";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  inherit bootstrapper;
 | 
			
		||||
 | 
			
		||||
  buildInputs = [ erlang tree ];
 | 
			
		||||
 | 
			
		||||
  # TODO: Remove registry snapshot
 | 
			
		||||
  propagatedBuildInputs = [ hexRegistrySnapshot ];
 | 
			
		||||
 | 
			
		||||
  postPatch = ''
 | 
			
		||||
    ${erlang}/bin/escript ${bootstrapper} registry-only
 | 
			
		||||
    mkdir -p _checkouts
 | 
			
		||||
    mkdir -p _build/default/lib/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -25,14 +25,12 @@
 | 
			
		||||
%%%   Environment Variable
 | 
			
		||||
 | 
			
		||||
-record(data, {version
 | 
			
		||||
              , registry_only = false
 | 
			
		||||
              , debug_info = false
 | 
			
		||||
              , compile_ports
 | 
			
		||||
              , erl_libs
 | 
			
		||||
              , plugins
 | 
			
		||||
              , root
 | 
			
		||||
              , name
 | 
			
		||||
              , registry_snapshot}).
 | 
			
		||||
              , name}).
 | 
			
		||||
 | 
			
		||||
-define(HEX_REGISTRY_PATH, ".cache/rebar3/hex/default/registry").
 | 
			
		||||
 | 
			
		||||
@ -41,30 +39,24 @@ main(Args) ->
 | 
			
		||||
    {ok, RequiredData} = gather_required_data_from_the_environment(ArgData),
 | 
			
		||||
    do_the_bootstrap(RequiredData).
 | 
			
		||||
 | 
			
		||||
%% @doc There are two modes 'registry_only' where the register is
 | 
			
		||||
%% created from hex and everything else.
 | 
			
		||||
-spec do_the_bootstrap(#data{}) -> ok.
 | 
			
		||||
do_the_bootstrap(RequiredData = #data{registry_only = true}) ->
 | 
			
		||||
    ok = bootstrap_registry(RequiredData);
 | 
			
		||||
do_the_bootstrap(RequiredData) ->
 | 
			
		||||
    ok = bootstrap_registry(RequiredData),
 | 
			
		||||
    ok = bootstrap_configs(RequiredData),
 | 
			
		||||
    ok = bootstrap_plugins(RequiredData),
 | 
			
		||||
    ok = bootstrap_libs(RequiredData).
 | 
			
		||||
 | 
			
		||||
%% @doc
 | 
			
		||||
%% Argument parsing is super simple only because we want to keep the
 | 
			
		||||
%% dependencies minimal. For now there can be two entries on the
 | 
			
		||||
%% command line, "registry-only" and "debug-info"
 | 
			
		||||
%% dependencies minimal. For now there can be one entry on the
 | 
			
		||||
%% command line: "debug-info"
 | 
			
		||||
-spec parse_args([string()]) -> #data{}.
 | 
			
		||||
parse_args(Args0) ->
 | 
			
		||||
    PossibleArgs = sets:from_list(["registry-only", "debug-info"]),
 | 
			
		||||
    PossibleArgs = sets:from_list(["debug-info"]),
 | 
			
		||||
    Args1 = sets:from_list(Args0),
 | 
			
		||||
    Result = sets:subtract(Args1, PossibleArgs),
 | 
			
		||||
    case sets:to_list(Result) of
 | 
			
		||||
        [] ->
 | 
			
		||||
            {ok, #data{registry_only = sets:is_element("registry-only", Args1),
 | 
			
		||||
                       debug_info = sets:is_element("debug-info", Args1)}};
 | 
			
		||||
            {ok, #data{debug_info = sets:is_element("debug-info", Args1)}};
 | 
			
		||||
        UnknownArgs ->
 | 
			
		||||
            io:format("Unexpected command line arguments passed in: ~p~n",
 | 
			
		||||
                      [UnknownArgs]),
 | 
			
		||||
@ -156,30 +148,6 @@ fixup_app_name(FileName) ->
 | 
			
		||||
        [Name, _Version, _Tag] -> Name
 | 
			
		||||
    end.
 | 
			
		||||
 | 
			
		||||
-spec bootstrap_registry(#data{}) -> ok.
 | 
			
		||||
bootstrap_registry(#data{registry_snapshot = RegistrySnapshot}) ->
 | 
			
		||||
    io:format("Bootstrapping Hex Registry for Rebar~n"),
 | 
			
		||||
    make_sure_registry_snapshot_exists(RegistrySnapshot),
 | 
			
		||||
    filelib:ensure_dir(?HEX_REGISTRY_PATH),
 | 
			
		||||
    ok = case filelib:is_file(?HEX_REGISTRY_PATH) of
 | 
			
		||||
             true ->
 | 
			
		||||
                 file:delete(?HEX_REGISTRY_PATH);
 | 
			
		||||
             false ->
 | 
			
		||||
                 ok
 | 
			
		||||
         end,
 | 
			
		||||
    ok = file:make_symlink(RegistrySnapshot,
 | 
			
		||||
                           ?HEX_REGISTRY_PATH).
 | 
			
		||||
 | 
			
		||||
-spec make_sure_registry_snapshot_exists(string()) -> ok.
 | 
			
		||||
make_sure_registry_snapshot_exists(RegistrySnapshot) ->
 | 
			
		||||
    case filelib:is_file(RegistrySnapshot) of
 | 
			
		||||
        true ->
 | 
			
		||||
            ok;
 | 
			
		||||
        false ->
 | 
			
		||||
            stderr("Registry snapshot (~s) does not exist!", [RegistrySnapshot]),
 | 
			
		||||
            erlang:halt(1)
 | 
			
		||||
    end.
 | 
			
		||||
 | 
			
		||||
-spec gather_required_data_from_the_environment(#data{}) -> {ok, #data{}}.
 | 
			
		||||
gather_required_data_from_the_environment(ArgData) ->
 | 
			
		||||
    {ok, ArgData#data{ version = guard_env("version")
 | 
			
		||||
@ -187,8 +155,7 @@ gather_required_data_from_the_environment(ArgData) ->
 | 
			
		||||
                     , plugins = get_env("buildPlugins", [])
 | 
			
		||||
                     , root = code:root_dir()
 | 
			
		||||
                     , name = guard_env("name")
 | 
			
		||||
                     , compile_ports = nix2bool(get_env("compilePorts", ""))
 | 
			
		||||
                     , registry_snapshot = guard_env("HEX_REGISTRY_SNAPSHOT")}}.
 | 
			
		||||
                     , compile_ports = nix2bool(get_env("compilePorts", ""))}}.
 | 
			
		||||
 | 
			
		||||
-spec nix2bool(any()) -> boolean().
 | 
			
		||||
nix2bool("1") ->
 | 
			
		||||
 | 
			
		||||
@ -13,15 +13,20 @@ in stdenv.mkDerivation {
 | 
			
		||||
    runHook preInstall
 | 
			
		||||
 | 
			
		||||
    mkdir -p $out/bin
 | 
			
		||||
    export libc_includes="${stdenv.lib.getDev stdenv.cc.libc}/include"
 | 
			
		||||
    export libcpp_includes="${llvmPackages.libcxx}/include/c++/v1"
 | 
			
		||||
 | 
			
		||||
    export clang=${clang}
 | 
			
		||||
    substituteAll ${./wrapper} $out/bin/clangd
 | 
			
		||||
    chmod +x $out/bin/clangd
 | 
			
		||||
    for tool in \
 | 
			
		||||
      clang-apply-replacements \
 | 
			
		||||
      clang-check \
 | 
			
		||||
      clang-format \
 | 
			
		||||
      clang-rename \
 | 
			
		||||
      clang-tidy \
 | 
			
		||||
      clangd
 | 
			
		||||
      clang-tidy
 | 
			
		||||
    do
 | 
			
		||||
      ln -s ${clang}/bin/$tool $out/bin/$tool
 | 
			
		||||
      ln -s $out/bin/clangd $out/bin/$tool
 | 
			
		||||
    done
 | 
			
		||||
 | 
			
		||||
    runHook postInstall
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										20
									
								
								pkgs/development/tools/clang-tools/wrapper
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								pkgs/development/tools/clang-tools/wrapper
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,20 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
buildcpath() {
 | 
			
		||||
  local path
 | 
			
		||||
  while (( $# )); do
 | 
			
		||||
    case $1 in
 | 
			
		||||
        -isystem)
 | 
			
		||||
            shift
 | 
			
		||||
            path=$path${path':'}$1
 | 
			
		||||
    esac
 | 
			
		||||
    shift
 | 
			
		||||
  done
 | 
			
		||||
  echo $path
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export CPATH=${CPATH}${CPATH:+':'}$(buildcpath ${NIX_CFLAGS_COMPILE})
 | 
			
		||||
export CPATH=${CPATH}${CPATH:+':'}@libc_includes@
 | 
			
		||||
export CPLUS_INCLUDE_PATH=${CPATH}${CPATH:+':'}@libcpp_includes@
 | 
			
		||||
 | 
			
		||||
exec -a "$0" @clang@/bin/$(basename $0) "$@"
 | 
			
		||||
@ -2,28 +2,16 @@
 | 
			
		||||
 | 
			
		||||
rustPlatform.buildRustPackage rec {
 | 
			
		||||
  pname = "cargo-fuzz";
 | 
			
		||||
  version = "0.5.3"; # Note to self: on 0.5.4, remove the hand-added Cargo.lock
 | 
			
		||||
  version = "0.5.4";
 | 
			
		||||
 | 
			
		||||
  src =
 | 
			
		||||
    let
 | 
			
		||||
      source = fetchFromGitHub {
 | 
			
		||||
        owner = "rust-fuzz";
 | 
			
		||||
        repo = "cargo-fuzz";
 | 
			
		||||
        rev = version;
 | 
			
		||||
        sha256 = "1l452fnjw7i10nrd4y4rssi5d457vgjp6rhdr9cnq32bjhdkprrs";
 | 
			
		||||
      };
 | 
			
		||||
      cargo-lock = fetchurl {
 | 
			
		||||
        url = "https://gist.githubusercontent.com/Ekleog/7d5b62d13b7207aafa4c37d1bbdf2de7/raw/c6027fc1c531947f4d6836a3c4cba1b3e24df24c/Cargo.lock";
 | 
			
		||||
        sha256 = "0d7b6kxfbfvwksybzrihylamg2zv5fmsk9m6xshryhwipskzzvmd";
 | 
			
		||||
      };
 | 
			
		||||
    in
 | 
			
		||||
    runCommand "cargo-fuzz-src" {} ''
 | 
			
		||||
      cp -R ${source} $out
 | 
			
		||||
      chmod +w $out
 | 
			
		||||
      cp ${cargo-lock} $out/Cargo.lock
 | 
			
		||||
    '';
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "rust-fuzz";
 | 
			
		||||
    repo = "cargo-fuzz";
 | 
			
		||||
    rev = version;
 | 
			
		||||
    sha256 = "0qy4xb7bxyw2x2ya7zmbkz48wxb69jcnvvj7021f1kyc6wdwcxs7";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  cargoSha256 = "19kldw2sx0jd89q5q9cwmdcaan148s45fxlb2m0vdxwb69crb7yp";
 | 
			
		||||
  cargoSha256 = "1d42cmpg1yn1ql9isx26kxsxzf5rg6qw6j948skc5p054r0c9n3f";
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "Command line helpers for fuzzing";
 | 
			
		||||
 | 
			
		||||
@ -187,6 +187,19 @@ in rec {
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  plumb = mkDerivation {
 | 
			
		||||
    pluginName = "plumb";
 | 
			
		||||
    src = fetchFromGitHub {
 | 
			
		||||
      owner = "eraserhd";
 | 
			
		||||
      repo = "tmux-plumb";
 | 
			
		||||
      rev = "v0.1.1";
 | 
			
		||||
      sha256 = "1c6k4fdl0az9811r6k164mgd4w5la75xr6x7nabmy046xc0z5i2r";
 | 
			
		||||
    };
 | 
			
		||||
    postInstall = ''
 | 
			
		||||
      sed -i -e 's,9 plumb,${pkgs.plan9port}/bin/9 plumb,' $target/scripts/plumb
 | 
			
		||||
    '';
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  prefix-highlight = mkDerivation {
 | 
			
		||||
    pluginName = "prefix-highlight";
 | 
			
		||||
    src = fetchgit {
 | 
			
		||||
 | 
			
		||||
@ -8,11 +8,11 @@ let
 | 
			
		||||
 | 
			
		||||
in stdenv.mkDerivation rec {
 | 
			
		||||
  name = "dpdk-${version}" + lib.optionalString mod "-${kernel.version}";
 | 
			
		||||
  version = "19.08";
 | 
			
		||||
  version = "19.08.2";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://fast.dpdk.org/rel/dpdk-${version}.tar.xz";
 | 
			
		||||
    sha256 = "0xgrkip2aji1c7jy5gk38zzwlp5ap1s6dmbcag5dnyy3bmwvmp9y";
 | 
			
		||||
    sha256 = "141bqqy4w6nzs9z70x7yv94a4gmxjfal46pxry9bwdh3zi1jwnyd";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ pkgconfig ];
 | 
			
		||||
 | 
			
		||||
@ -7,14 +7,14 @@
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "ell";
 | 
			
		||||
  version = "0.24";
 | 
			
		||||
  version = "0.26";
 | 
			
		||||
 | 
			
		||||
  outputs = [ "out" "dev" ];
 | 
			
		||||
 | 
			
		||||
  src = fetchgit {
 | 
			
		||||
     url = "https://git.kernel.org/pub/scm/libs/${pname}/${pname}.git";
 | 
			
		||||
     rev = version;
 | 
			
		||||
     sha256 = "1dspi6ds58dy7g1q3chapxydfiyz8bjjlryq66jvwgpynzp0c1h1";
 | 
			
		||||
     sha256 = "1gnqd7dghwkcn48f6fr9qvkkm976b3x4bn3l7l2k9pamzpng084i";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  patches = [
 | 
			
		||||
 | 
			
		||||
@ -8,16 +8,17 @@
 | 
			
		||||
, docutils
 | 
			
		||||
, readline
 | 
			
		||||
, python3Packages
 | 
			
		||||
, systemd
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "iwd";
 | 
			
		||||
  version = "0.22";
 | 
			
		||||
  version = "1.1";
 | 
			
		||||
 | 
			
		||||
  src = fetchgit {
 | 
			
		||||
    url = https://git.kernel.org/pub/scm/network/wireless/iwd.git;
 | 
			
		||||
    rev = version;
 | 
			
		||||
    sha256 = "0mjc08ayq2k7sinqanrlm97dn88dxkqkyk2vqqcx1nqjvwvbpbsp";
 | 
			
		||||
    sha256 = "1rvsr5i79wpdicghplrxamb4qbkdm5cpgw3mk0rsqzwwj6d6l0vs";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [
 | 
			
		||||
@ -31,6 +32,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    ell
 | 
			
		||||
    python3Packages.python
 | 
			
		||||
    readline
 | 
			
		||||
    systemd
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  pythonPath = [
 | 
			
		||||
@ -46,6 +48,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    "--with-dbus-datadir=${placeholder "out"}/share/"
 | 
			
		||||
    "--with-systemd-modloaddir=${placeholder "out"}/etc/modules-load.d/" # maybe
 | 
			
		||||
    "--with-systemd-unitdir=${placeholder "out"}/lib/systemd/system/"
 | 
			
		||||
    "--with-systemd-networkdir=${placeholder "out"}/lib/systemd/network/"
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  postUnpack = ''
 | 
			
		||||
@ -77,6 +80,6 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    description = "Wireless daemon for Linux";
 | 
			
		||||
    license = licenses.lgpl21;
 | 
			
		||||
    platforms = platforms.linux;
 | 
			
		||||
    maintainers = with maintainers; [ dtzWill ];
 | 
			
		||||
    maintainers = with maintainers; [ dtzWill fpletz ];
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -3,10 +3,10 @@
 | 
			
		||||
}: let
 | 
			
		||||
 | 
			
		||||
  dpdk_17_11 = dpdk.overrideAttrs (old: rec {
 | 
			
		||||
    version = "17.11.6";
 | 
			
		||||
    version = "17.11.9";
 | 
			
		||||
    src = fetchurl {
 | 
			
		||||
      url = "https://fast.dpdk.org/rel/dpdk-${version}.tar.xz";
 | 
			
		||||
      sha256 = "0g4l6yjcn17n18c7q1pxkmnj4fg2kiv0krz7n2vjjsb8s6gmbps2";
 | 
			
		||||
      sha256 = "0vrcc9mdjs5fk69lh7bigsk9208dfmjsz3jxaddkjlvk2hds1id6";
 | 
			
		||||
    };
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "slurm";
 | 
			
		||||
  version = "19.05.3.2";
 | 
			
		||||
  version = "19.05.4.1";
 | 
			
		||||
 | 
			
		||||
  # N.B. We use github release tags instead of https://www.schedmd.com/downloads.php
 | 
			
		||||
  # because the latter does not keep older releases.
 | 
			
		||||
@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 | 
			
		||||
    repo = "slurm";
 | 
			
		||||
    # The release tags use - instead of .
 | 
			
		||||
    rev = "${pname}-${builtins.replaceStrings ["."] ["-"] version}";
 | 
			
		||||
    sha256 = "1ds4dvwswyx9rjcmcwz2fm2zi3q4gcc2n0fxxihl31i5i6wg1kv0";
 | 
			
		||||
    sha256 = "07ydjda2dl9casz8hh91jlxdyc67mj4af1l2gq3gkzi4397azzz6";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  outputs = [ "out" "dev" ];
 | 
			
		||||
 | 
			
		||||
@ -2,11 +2,11 @@
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "pgroonga";
 | 
			
		||||
  version = "2.2.1";
 | 
			
		||||
  version = "2.2.2";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://packages.groonga.org/source/${pname}/${pname}-${version}.tar.gz";
 | 
			
		||||
    sha256 = "0d913rkxx6qlkav6z9crsz3ypqkdffn4c667nsgzh5s9n4wbbpb8";
 | 
			
		||||
    sha256 = "0pdz2lpi7g1n9b5rg6kwhh6fr0bwf06zr642brmh53n6mp41186m";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ pkgconfig ];
 | 
			
		||||
 | 
			
		||||
@ -3,19 +3,17 @@
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  name = "${pname}-${version}";
 | 
			
		||||
  pname = "xzoom";
 | 
			
		||||
  major = "0";
 | 
			
		||||
  minor = "3";
 | 
			
		||||
  version = "0.3";
 | 
			
		||||
  patch = "24";
 | 
			
		||||
  version = "${major}.${minor}.${patch}";
 | 
			
		||||
 | 
			
		||||
  # or fetchFromGitHub(owner,repo,rev) or fetchgit(rev)
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "http://www.ibiblio.org/pub/linux/libs/X/${pname}-${major}.${minor}.tgz";
 | 
			
		||||
    url = "http://www.ibiblio.org/pub/linux/libs/X/${pname}-${version}.tgz";
 | 
			
		||||
    sha256 = "0jzl5py4ny4n4i58lxx2hdwq9zphqf7h3m14spl3079y5mlzssxj";
 | 
			
		||||
  };
 | 
			
		||||
  patches = [
 | 
			
		||||
    (fetchurl {
 | 
			
		||||
       url = "http://http.debian.net/debian/pool/main/x/xzoom/xzoom_${major}.${minor}-${patch}.diff.gz";
 | 
			
		||||
       url = "http://http.debian.net/debian/pool/main/x/xzoom/xzoom_${version}-${patch}.diff.gz";
 | 
			
		||||
       sha256 = "0zhc06whbvaz987bzzzi2bz6h9jp6rv812qs7b71drivvd820qbh";
 | 
			
		||||
    })
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										41
									
								
								pkgs/tools/audio/essentia-extractor/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								pkgs/tools/audio/essentia-extractor/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,41 @@
 | 
			
		||||
{ stdenv, fetchurl }:
 | 
			
		||||
let
 | 
			
		||||
  arch_table = {
 | 
			
		||||
    "x86_64-linux" = "linux-x86_64";
 | 
			
		||||
    "i686-linux" = "linux-i686";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  sha_table = {
 | 
			
		||||
    "x86_64-linux" =
 | 
			
		||||
      "d9902aadac4f442992877945da2a6fe8d6ea6b0de314ca8ac0c28dc5f253f7d8";
 | 
			
		||||
    "i686-linux" =
 | 
			
		||||
      "46deb0a053b4910c4e68737a7b6556ff5360260c8f86652f91a0130445f5c949";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  arch = arch_table.${stdenv.system};
 | 
			
		||||
  sha = sha_table.${stdenv.system};
 | 
			
		||||
in stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "essentia-extractor";
 | 
			
		||||
  version = "2.1_beta2";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url =
 | 
			
		||||
      "ftp://ftp.acousticbrainz.org/pub/acousticbrainz/essentia-extractor-v${version}-${arch}.tar.gz";
 | 
			
		||||
    sha256 = sha;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  unpackPhase = "unpackFile $src ; export sourceRoot=.";
 | 
			
		||||
 | 
			
		||||
  installPhase = ''
 | 
			
		||||
    mkdir -p $out/bin
 | 
			
		||||
    cp streaming_extractor_music $out/bin
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    homepage = "https://acousticbrainz.org/download";
 | 
			
		||||
    description = "AcousticBrainz audio feature extractor";
 | 
			
		||||
    license = licenses.agpl3Plus;
 | 
			
		||||
    maintainers = with maintainers; [ lovesegfault ];
 | 
			
		||||
    platforms = [ "x86_64-linux" "i686-linux" ];
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -1,5 +1,5 @@
 | 
			
		||||
{ stdenv, fetchurl, coreutils, bash, btrfs-progs, openssh, perl, perlPackages
 | 
			
		||||
, utillinux, asciidoc, asciidoctor, makeWrapper }:
 | 
			
		||||
, utillinux, asciidoc, asciidoctor, mbuffer, makeWrapper }:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "btrbk";
 | 
			
		||||
@ -38,15 +38,15 @@ stdenv.mkDerivation rec {
 | 
			
		||||
  preFixup = ''
 | 
			
		||||
    wrapProgram $out/sbin/btrbk \
 | 
			
		||||
      --set PERL5LIB $PERL5LIB \
 | 
			
		||||
      --prefix PATH ':' "${stdenv.lib.makeBinPath [ btrfs-progs bash openssh ]}"
 | 
			
		||||
      --prefix PATH ':' "${stdenv.lib.makeBinPath [ btrfs-progs bash mbuffer openssh ]}"
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "A backup tool for btrfs subvolumes";
 | 
			
		||||
    homepage = http://digint.ch/btrbk;
 | 
			
		||||
    homepage = https://digint.ch/btrbk;
 | 
			
		||||
    license = licenses.gpl3;
 | 
			
		||||
    platforms = platforms.unix;
 | 
			
		||||
    maintainers = with maintainers; [ the-kenny ];
 | 
			
		||||
    maintainers = with maintainers; [ asymmetric the-kenny ];
 | 
			
		||||
    inherit version;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,103 @@
 | 
			
		||||
From ea1bc0fcfd33191002c5d1f7072c1c02bb7ec4af Mon Sep 17 00:00:00 2001
 | 
			
		||||
From: Alyssa Ross <hi@alyssa.is>
 | 
			
		||||
Date: Thu, 14 Nov 2019 15:45:46 +0000
 | 
			
		||||
Subject: [PATCH] Fix build on BSD systems
 | 
			
		||||
 | 
			
		||||
I tested FreeBSD, DragonflyBSD, NetBSD and OpenBSD and the endian
 | 
			
		||||
macros weren't necessary (and in fact caused errors) on all of them.
 | 
			
		||||
 | 
			
		||||
Because OpenBSD ships with an ancient GCC that doesn't support the
 | 
			
		||||
checked addition/multiplication builtins, the build there would fail
 | 
			
		||||
unless built with CC=cc or CC=clang.  I changed configure.ac to prefer
 | 
			
		||||
cc over gcc, so that the distribution's compiler preference is
 | 
			
		||||
respected.  (The default is [gcc cc]).  I had to move AC_PROG_CC above
 | 
			
		||||
LT_INIT because otherwise LT_INIT would run AC_PROG_CC first, and we
 | 
			
		||||
wouldn't have a chance to use non-default parameters.
 | 
			
		||||
---
 | 
			
		||||
 configure.ac          |  2 +-
 | 
			
		||||
 include/util/compat.h | 13 +++++--------
 | 
			
		||||
 lib/common/dirstack.c |  1 +
 | 
			
		||||
 lib/common/mkdir_p.c  |  2 +-
 | 
			
		||||
 4 files changed, 8 insertions(+), 10 deletions(-)
 | 
			
		||||
 | 
			
		||||
diff --git a/configure.ac b/configure.ac
 | 
			
		||||
index 018b3f6..19ea0ed 100644
 | 
			
		||||
--- a/configure.ac
 | 
			
		||||
+++ b/configure.ac
 | 
			
		||||
@@ -3,8 +3,8 @@ AC_INIT([squashfs-tools-ng], [0.7], [goliath@infraroot.at], squashfs-tools-ng)
 | 
			
		||||
 AC_CONFIG_MACRO_DIR([m4])
 | 
			
		||||
 AM_INIT_AUTOMAKE([foreign dist-xz subdir-objects])
 | 
			
		||||
 AM_SILENT_RULES([yes])
 | 
			
		||||
+AC_PROG_CC([cc gcc clang])
 | 
			
		||||
 LT_INIT
 | 
			
		||||
-AC_PROG_CC
 | 
			
		||||
 AC_PROG_CC_C99
 | 
			
		||||
 AC_PROG_INSTALL
 | 
			
		||||
 AC_SYS_LARGEFILE
 | 
			
		||||
diff --git a/include/util/compat.h b/include/util/compat.h
 | 
			
		||||
index 74d0b6f..f53fd0e 100644
 | 
			
		||||
--- a/include/util/compat.h
 | 
			
		||||
+++ b/include/util/compat.h
 | 
			
		||||
@@ -7,6 +7,10 @@
 | 
			
		||||
 #ifndef COMPAT_H
 | 
			
		||||
 #define COMPAT_H
 | 
			
		||||
 
 | 
			
		||||
+#ifndef __linux__
 | 
			
		||||
+#define O_PATH 0
 | 
			
		||||
+#endif
 | 
			
		||||
+
 | 
			
		||||
 #if defined(__APPLE__)
 | 
			
		||||
 #include <libkern/OSByteOrder.h>
 | 
			
		||||
 
 | 
			
		||||
@@ -17,14 +21,8 @@
 | 
			
		||||
 #define le32toh(x) OSSwapLittleToHostInt32(x)
 | 
			
		||||
 #define le16toh(x) OSSwapLittleToHostInt16(x)
 | 
			
		||||
 #define le64toh(x) OSSwapLittleToHostInt64(x)
 | 
			
		||||
-#elif defined(__OpenBSD__)
 | 
			
		||||
+#elif defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
 | 
			
		||||
 #include <sys/endian.h>
 | 
			
		||||
-#elif defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__)
 | 
			
		||||
-#include <sys/endian.h>
 | 
			
		||||
-
 | 
			
		||||
-#define le16toh(x) letoh16(x)
 | 
			
		||||
-#define le32toh(x) letoh32(x)
 | 
			
		||||
-#define le64toh(x) letoh64(x)
 | 
			
		||||
 #elif defined(_WIN32) || defined(__WINDOWS__)
 | 
			
		||||
 #define htole16(x) (x)
 | 
			
		||||
 #define htole32(x) (x)
 | 
			
		||||
@@ -89,7 +87,6 @@
 | 
			
		||||
 #else
 | 
			
		||||
 #include <sys/types.h>
 | 
			
		||||
 #include <sys/stat.h>
 | 
			
		||||
-#include <sys/sysmacros.h>
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
 #endif /* COMPAT_H */
 | 
			
		||||
diff --git a/lib/common/dirstack.c b/lib/common/dirstack.c
 | 
			
		||||
index 8f73898..f8d1278 100644
 | 
			
		||||
--- a/lib/common/dirstack.c
 | 
			
		||||
+++ b/lib/common/dirstack.c
 | 
			
		||||
@@ -5,6 +5,7 @@
 | 
			
		||||
  * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at>
 | 
			
		||||
  */
 | 
			
		||||
 #include "common.h"
 | 
			
		||||
+#include "util/compat.h"
 | 
			
		||||
 
 | 
			
		||||
 #include <string.h>
 | 
			
		||||
 #include <stdlib.h>
 | 
			
		||||
diff --git a/lib/common/mkdir_p.c b/lib/common/mkdir_p.c
 | 
			
		||||
index cb433b3..95187ba 100644
 | 
			
		||||
--- a/lib/common/mkdir_p.c
 | 
			
		||||
+++ b/lib/common/mkdir_p.c
 | 
			
		||||
@@ -7,7 +7,7 @@
 | 
			
		||||
 #include "common.h"
 | 
			
		||||
 
 | 
			
		||||
 #include <string.h>
 | 
			
		||||
-#include <alloca.h>
 | 
			
		||||
+#include <stdlib.h>
 | 
			
		||||
 #include <stdio.h>
 | 
			
		||||
 #include <errno.h>
 | 
			
		||||
 
 | 
			
		||||
-- 
 | 
			
		||||
2.23.0
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										26
									
								
								pkgs/tools/filesystems/squashfs-tools-ng/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								pkgs/tools/filesystems/squashfs-tools-ng/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,26 @@
 | 
			
		||||
{ stdenv, lib, fetchurl, fetchpatch, autoreconfHook, doxygen, graphviz, perl
 | 
			
		||||
, pkgconfig, lz4, xz, zlib, zstd
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "squashfs-tools-ng";
 | 
			
		||||
  version = "0.7";
 | 
			
		||||
 | 
			
		||||
  src = fetchurl {
 | 
			
		||||
    url = "https://infraroot.at/pub/squashfs/squashfs-tools-ng-${version}.tar.xz";
 | 
			
		||||
    sha256 = "01yn621dnsfhrah3qj1xh6ynag7r3nvihc510sa5frapkyg9nw8n";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  patches = lib.optional (!stdenv.isLinux) ./0001-Fix-build-on-BSD-systems.patch;
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ doxygen graphviz pkgconfig perl ]
 | 
			
		||||
                      ++ lib.optional (!stdenv.isLinux) autoreconfHook;
 | 
			
		||||
  buildInputs = [ zlib xz lz4 zstd ];
 | 
			
		||||
 | 
			
		||||
  meta = with lib; {
 | 
			
		||||
    homepage = https://github.com/AgentD/squashfs-tools-ng;
 | 
			
		||||
    license = licenses.gpl3Plus;
 | 
			
		||||
    maintainers = with maintainers; [ qyliss ];
 | 
			
		||||
    platforms = platforms.unix;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -4,13 +4,13 @@
 | 
			
		||||
 | 
			
		||||
buildGoPackage rec {
 | 
			
		||||
  pname = "wallutils";
 | 
			
		||||
  version = "5.8.2";
 | 
			
		||||
  version = "5.8.3";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "xyproto";
 | 
			
		||||
    repo = "wallutils";
 | 
			
		||||
    rev = version;
 | 
			
		||||
    sha256 = "1ghvcxsy5prj8l38r4lg39imsqbwmvn1zmiv7004j6skmgpaaawh";
 | 
			
		||||
    sha256 = "1cc0bb6bdh3pm9mf6rcgk9myr62xhqc6l84xgw44lhm6hkkp16gb";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  goPackagePath = "github.com/xyproto/wallutils";
 | 
			
		||||
 | 
			
		||||
@ -1,25 +1,26 @@
 | 
			
		||||
From 9d064428cec970ced9be6753d6250b20a45a9fe2 Mon Sep 17 00:00:00 2001
 | 
			
		||||
From 2643b06889605e6096174fb48dcb64a49b252217 Mon Sep 17 00:00:00 2001
 | 
			
		||||
From: Michael Weiss <dev.primeos@gmail.com>
 | 
			
		||||
Date: Fri, 19 Apr 2019 11:56:50 +0200
 | 
			
		||||
Date: Sun, 17 Nov 2019 20:30:08 +0100
 | 
			
		||||
Subject: [PATCH] lscollection: Add NixOS paths to DefaultWallpaperDirectories
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 collections.go | 2 +-
 | 
			
		||||
 1 file changed, 1 insertion(+), 1 deletion(-)
 | 
			
		||||
 collections.go | 3 +++
 | 
			
		||||
 1 file changed, 3 insertions(+)
 | 
			
		||||
 | 
			
		||||
diff --git a/collections.go b/collections.go
 | 
			
		||||
index ef74ea6..9f9a608 100644
 | 
			
		||||
index be04d41..cc79c56 100644
 | 
			
		||||
--- a/collections.go
 | 
			
		||||
+++ b/collections.go
 | 
			
		||||
@@ -21,7 +21,7 @@ const (
 | 
			
		||||
 )
 | 
			
		||||
@@ -22,6 +22,9 @@ const (
 | 
			
		||||
 
 | 
			
		||||
 var (
 | 
			
		||||
-	DefaultWallpaperDirectories = []string{"/usr/share/pixmaps", "/usr/share/wallpapers", "/usr/share/backgrounds", "/usr/local/share/pixmaps", "/usr/local/share/wallpapers", "/usr/local/share/backgrounds", "/usr/share/archlinux"}
 | 
			
		||||
+	DefaultWallpaperDirectories = []string{"/run/current-system/sw/share/pixmaps", "/run/current-system/sw/share/wallpapers", "/run/current-system/sw/share/backgrounds", "/usr/share/pixmaps", "/usr/share/wallpapers", "/usr/share/backgrounds", "/usr/local/share/pixmaps", "/usr/local/share/wallpapers", "/usr/local/share/backgrounds", "/usr/share/archlinux"}
 | 
			
		||||
 )
 | 
			
		||||
 
 | 
			
		||||
 type SearchResults struct {
 | 
			
		||||
 // DefaultWallpaperDirectories lists the default locations to look for wallpapers
 | 
			
		||||
 var DefaultWallpaperDirectories = []string{
 | 
			
		||||
+	"/run/current-system/sw/share/pixmaps",
 | 
			
		||||
+	"/run/current-system/sw/share/wallpapers",
 | 
			
		||||
+	"/run/current-system/sw/share/backgrounds",
 | 
			
		||||
 	"/usr/share/pixmaps",
 | 
			
		||||
 	"/usr/share/wallpapers",
 | 
			
		||||
 	"/usr/share/backgrounds",
 | 
			
		||||
-- 
 | 
			
		||||
2.19.2
 | 
			
		||||
2.23.0
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -5,8 +5,8 @@ GEM
 | 
			
		||||
      public_suffix (>= 2.0.2, < 5.0)
 | 
			
		||||
    ethon (0.12.0)
 | 
			
		||||
      ffi (>= 1.3.0)
 | 
			
		||||
    ffi (1.11.1)
 | 
			
		||||
    html-proofer (3.13.0)
 | 
			
		||||
    ffi (1.11.2)
 | 
			
		||||
    html-proofer (3.14.1)
 | 
			
		||||
      addressable (~> 2.3)
 | 
			
		||||
      mercenary (~> 0.3)
 | 
			
		||||
      nokogiri (~> 1.10)
 | 
			
		||||
@ -16,9 +16,9 @@ GEM
 | 
			
		||||
      yell (~> 2.0)
 | 
			
		||||
    mercenary (0.3.6)
 | 
			
		||||
    mini_portile2 (2.4.0)
 | 
			
		||||
    nokogiri (1.10.4)
 | 
			
		||||
    nokogiri (1.10.5)
 | 
			
		||||
      mini_portile2 (~> 2.4.0)
 | 
			
		||||
    parallel (1.17.0)
 | 
			
		||||
    parallel (1.19.0)
 | 
			
		||||
    public_suffix (4.0.1)
 | 
			
		||||
    rainbow (3.0.0)
 | 
			
		||||
    typhoeus (1.3.1)
 | 
			
		||||
@ -32,4 +32,4 @@ DEPENDENCIES
 | 
			
		||||
  html-proofer
 | 
			
		||||
 | 
			
		||||
BUNDLED WITH
 | 
			
		||||
   1.17.2
 | 
			
		||||
   1.17.3
 | 
			
		||||
 | 
			
		||||
@ -26,10 +26,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "06mvxpjply8qh4j3fj9wh08kdzwkbnvsiysh0vrhlk5cwxzjmblh";
 | 
			
		||||
      sha256 = "0cbads5da12lb3j0mg2hjrd57s5qkkairxh2y6r9bqyblb5b8xbw";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.11.1";
 | 
			
		||||
    version = "1.11.2";
 | 
			
		||||
  };
 | 
			
		||||
  html-proofer = {
 | 
			
		||||
    dependencies = ["addressable" "mercenary" "nokogiri" "parallel" "rainbow" "typhoeus" "yell"];
 | 
			
		||||
@ -37,10 +37,10 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1a620704y2h4g9ffpl6461ssdx87bn6hjd0y1m370r2p2xddkb9f";
 | 
			
		||||
      sha256 = "16i803vhrygcbln077czhv9ngipljsawr338lbvd0zr2473r8qja";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "3.13.0";
 | 
			
		||||
    version = "3.14.1";
 | 
			
		||||
  };
 | 
			
		||||
  mercenary = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
@ -68,20 +68,20 @@
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "0nmdrqqz1gs0fwkgzxjl4wr554gr8dc1fkrqjc2jpsvwgm41rygv";
 | 
			
		||||
      sha256 = "185g3dwba73jqxjr94bd2zk6fil6n9hmcfnfyzh3p1w47vm296r7";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.10.4";
 | 
			
		||||
    version = "1.10.5";
 | 
			
		||||
  };
 | 
			
		||||
  parallel = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
    platforms = [];
 | 
			
		||||
    source = {
 | 
			
		||||
      remotes = ["https://rubygems.org"];
 | 
			
		||||
      sha256 = "1x1gzgjrdlkm1aw0hfpyphsxcx90qgs3y4gmp9km3dvf4hc4qm8r";
 | 
			
		||||
      sha256 = "0bsg06zklvxv1qkpqhiric2m07108rqlmnl4axv5fzpxx9973pfz";
 | 
			
		||||
      type = "gem";
 | 
			
		||||
    };
 | 
			
		||||
    version = "1.17.0";
 | 
			
		||||
    version = "1.19.0";
 | 
			
		||||
  };
 | 
			
		||||
  public_suffix = {
 | 
			
		||||
    groups = ["default"];
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										23
									
								
								pkgs/tools/misc/wagyu/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								pkgs/tools/misc/wagyu/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
			
		||||
{ lib, rustPlatform, fetchFromGitHub }:
 | 
			
		||||
 | 
			
		||||
rustPlatform.buildRustPackage rec {
 | 
			
		||||
  pname = "wagyu";
 | 
			
		||||
  version = "0.6.1";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "ArgusHQ";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "1646j0lgg3hhznifvbkvr672p3yqlcavswijawaxq7n33ll8vmcn";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  cargoSha256 = "10b96l0b32zxq0xrnhivv3gihmi5y31rllbizv67hrg1axz095vn";
 | 
			
		||||
  verifyCargoDeps = true;
 | 
			
		||||
 | 
			
		||||
  meta = with lib; {
 | 
			
		||||
    description = "Rust library for generating cryptocurrency wallets";
 | 
			
		||||
    homepage = https://github.com/ArgusHQ/wagyu;
 | 
			
		||||
    license = with licenses; [ mit asl20 ];
 | 
			
		||||
    maintainers = [ maintainers.offline ];
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
@ -3,13 +3,13 @@
 | 
			
		||||
with python3Packages;
 | 
			
		||||
buildPythonApplication rec {
 | 
			
		||||
  pname = "wakatime";
 | 
			
		||||
  version = "10.8.0";
 | 
			
		||||
  version = "13.0.1";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "wakatime";
 | 
			
		||||
    repo = "wakatime";
 | 
			
		||||
    rev = version;
 | 
			
		||||
    sha256 = "057gq6j41x9z29az4s21crswm97pa9z4v58m34q8mi3chihc3pj6";
 | 
			
		||||
    sha256 = "1a188n763hg39s8wa20mb1bj6f3vs8h7knvm4ys7q8bhsib0pyrd";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  # needs more dependencies from https://github.com/wakatime/wakatime/blob/191b302bfb5f272ae928c6d3867d06f3dfcba4a8/dev-requirements.txt
 | 
			
		||||
 | 
			
		||||
@ -5,14 +5,14 @@
 | 
			
		||||
 | 
			
		||||
stdenv.mkDerivation rec {
 | 
			
		||||
  pname = "wob";
 | 
			
		||||
  version = "0.2";
 | 
			
		||||
  version = "0.4";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "francma";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = version;
 | 
			
		||||
    fetchSubmodules = true;
 | 
			
		||||
    sha256 = "1jyia4166lp4cc8gmjmgcyz6prshhfjriam8w8mz2c5h77990fr9";
 | 
			
		||||
    sha256 = "1z0vwss3ix5mf7mqpm4dzlv1bblddfi47ykblj0nmscxn1sinr7j";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  nativeBuildInputs = [ meson ninja pkg-config wayland ];
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
 | 
			
		||||
buildGoModule rec {
 | 
			
		||||
  pname = "croc";
 | 
			
		||||
  version = "6.2.0";
 | 
			
		||||
  version = "6.2.3";
 | 
			
		||||
 | 
			
		||||
  goPackagePath = "github.com/schollz/croc";
 | 
			
		||||
 | 
			
		||||
@ -10,10 +10,10 @@ buildGoModule rec {
 | 
			
		||||
    owner = "schollz";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "0pav0l7akzqgwj7yqkgbpl96kndlb41kg1vmb3g6xp7ykmbdsbbc";
 | 
			
		||||
    sha256 = "13z3k0s7piwxxh87f04ldvxsd664jncwgmin397v5152bxadbgxp";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  modSha256 = "02w4p877nvv7dril7l9nmj8xf3fnghxnj8kglxkv541vabvlpq03";
 | 
			
		||||
  modSha256 = "0d9xhlszgy839naj4v2l613sn3nckx87cwwz1sh1rjwxarp8gqa9";
 | 
			
		||||
  subPackages = [ "." ];
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										23
									
								
								pkgs/tools/networking/dnsproxy/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								pkgs/tools/networking/dnsproxy/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
			
		||||
{ stdenv, fetchFromGitHub, buildGoModule }:
 | 
			
		||||
 | 
			
		||||
buildGoModule rec {
 | 
			
		||||
  pname = "dnsproxy";
 | 
			
		||||
  version = "0.20.0";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "AdguardTeam";
 | 
			
		||||
    repo = pname;
 | 
			
		||||
    rev = "v${version}";
 | 
			
		||||
    sha256 = "0yd3d90ssdzpbsdq068dvsi0r1z2rlv3wpbmpkhfgpxmwrvdanrq";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  modSha256 = "0cqwkmhajp3py3b5aj3qz9480qy2ws0vy1gk21bxjm56wqxl2gf0";
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    description = "Simple DNS proxy with DoH, DoT, and DNSCrypt support";
 | 
			
		||||
    homepage = "https://github.com/AdguardTeam/dnsproxy";
 | 
			
		||||
    license = licenses.gpl3;
 | 
			
		||||
    maintainers = with maintainers; [ contrun ];
 | 
			
		||||
    platforms = platforms.all;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										40
									
								
								pkgs/tools/networking/wifite2/default.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								pkgs/tools/networking/wifite2/default.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,40 @@
 | 
			
		||||
{ stdenv, lib, fetchFromGitHub, python3, aircrack-ng, wireshark-cli, reaverwps-t6x, cowpatty, hashcat, hcxtools, which }:
 | 
			
		||||
 | 
			
		||||
python3.pkgs.buildPythonApplication rec {
 | 
			
		||||
  version = "2.2.5";
 | 
			
		||||
  pname = "wifite2";
 | 
			
		||||
 | 
			
		||||
  src = fetchFromGitHub {
 | 
			
		||||
    owner = "derv82";
 | 
			
		||||
    repo = "wifite2";
 | 
			
		||||
    rev = version;
 | 
			
		||||
    sha256 = "1hfy90wf2bjg0z8rbs8cfhhvz78pzg2c6nj0zksal42mb6b5cjdp";
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  propagatedBuildInputs = [
 | 
			
		||||
    aircrack-ng
 | 
			
		||||
    wireshark-cli
 | 
			
		||||
    reaverwps-t6x
 | 
			
		||||
    cowpatty
 | 
			
		||||
    hashcat
 | 
			
		||||
    hcxtools
 | 
			
		||||
    which
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  postFixup = let
 | 
			
		||||
    sitePackagesDir = "$out/lib/python3.${lib.versions.minor python3.version}/site-packages";
 | 
			
		||||
  in ''
 | 
			
		||||
    mv ${sitePackagesDir}/wifite/__main__.py ${sitePackagesDir}/wifite/wifite.py
 | 
			
		||||
  '';
 | 
			
		||||
 | 
			
		||||
  # which is not found
 | 
			
		||||
  doCheck = false;
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
    homepage = "https://github.com/derv82/wifite2";
 | 
			
		||||
    description = "Rewrite of the popular wireless network auditor, wifite";
 | 
			
		||||
    license = licenses.gpl2;
 | 
			
		||||
    platforms = platforms.linux;
 | 
			
		||||
    maintainers = with maintainers; [ lassulus ];
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user