Merge staging-next into staging
This commit is contained in:
commit
5f8b0d7d99
32
.github/stale.yml
vendored
Normal file
32
.github/stale.yml
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
# Number of days of inactivity before an issue becomes stale
|
||||
daysUntilStale: 180
|
||||
# Number of days of inactivity before a stale issue is closed
|
||||
daysUntilClose: false
|
||||
# Issues with these labels will never be considered stale
|
||||
exemptLabels:
|
||||
- 1.severity: security
|
||||
# Label to use when marking an issue as stale
|
||||
staleLabel: 2.status: stale
|
||||
# Comment to post when marking an issue as stale. Set to `false` to disable
|
||||
markComment: >
|
||||
Thank you for your contributions.
|
||||
|
||||
This has been automatically marked as stale because it has had no
|
||||
activity for 180 days.
|
||||
|
||||
If this is still important to you, we ask that you leave a
|
||||
comment below. Your comment can be as simple as "still important
|
||||
to me". This lets people see that at least one person still cares
|
||||
about this. Someone will have to do this at most twice a year if
|
||||
there is no other activity.
|
||||
|
||||
Here are suggestions that might help resolve this more quickly:
|
||||
|
||||
1. Search for maintainers and people that previously touched the
|
||||
related code and @ mention them in a comment.
|
||||
2. Ask on the [NixOS Discourse](https://discourse.nixos.org/).
|
||||
3. Ask on the [#nixos channel](irc://irc.freenode.net/#nixos) on
|
||||
[irc.freenode.net](https://freenode.net).
|
||||
|
||||
# Comment to post when closing a stale issue. Set to `false` to disable
|
||||
closeComment: false
|
@ -441,7 +441,7 @@ Additional information.
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
If you're cherry-picking a commit to a stable release branch, always use <command>git cherry-pick -xe</command> and ensure the message contains a clear description about why this needs to be included in the stable branch.
|
||||
If you're cherry-picking a commit to a stable release branch (“backporting”), always use <command>git cherry-pick -xe</command> and ensure the message contains a clear description about why this needs to be included in the stable branch.
|
||||
</para>
|
||||
<para>
|
||||
An example of a cherry-picked commit would look like this:
|
||||
|
@ -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";
|
||||
@ -2092,6 +2104,12 @@
|
||||
email = "mpcervin@uncg.edu";
|
||||
name = "Mabry Cervin";
|
||||
};
|
||||
equirosa = {
|
||||
email = "eduardo@eduardoquiros.com";
|
||||
github = "equirosa";
|
||||
githubId = 39096810;
|
||||
name = "Eduardo Quiros";
|
||||
};
|
||||
eqyiel = {
|
||||
email = "ruben@maher.fyi";
|
||||
github = "eqyiel";
|
||||
@ -2289,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";
|
||||
@ -2631,6 +2659,12 @@
|
||||
githubId = 9705357;
|
||||
name = "Guillaume Bouchard";
|
||||
};
|
||||
GuillaumeDesforges = {
|
||||
email = "aceus02@gmail.com";
|
||||
github = "GuillaumeDesforges";
|
||||
githubId = 1882000;
|
||||
name = "Guillaume Desforges";
|
||||
};
|
||||
guillaumekoenig = {
|
||||
email = "guillaume.edward.koenig@gmail.com";
|
||||
github = "guillaumekoenig";
|
||||
@ -3374,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";
|
||||
@ -3910,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";
|
||||
|
@ -39,7 +39,7 @@
|
||||
can select an alternative one by picking one of the following lines:
|
||||
<programlisting>
|
||||
<xref linkend="opt-services.xserver.displayManager.sddm.enable"/> = true;
|
||||
<xref linkend="opt-services.xserver.displayManager.slim.enable"/> = true;
|
||||
<xref linkend="opt-services.xserver.displayManager.gdm.enable"/> = true;
|
||||
</programlisting>
|
||||
</para>
|
||||
<para>
|
||||
|
@ -99,7 +99,7 @@ xlink:href="https://nixos.org/nixpkgs/manual/#sec-package-naming">
|
||||
<para>
|
||||
As an example, we will take the case of display managers. There is a central
|
||||
display manager module for generic display manager options and a module file
|
||||
per display manager backend (slim, sddm, gdm ...).
|
||||
per display manager backend (sddm, gdm ...).
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -146,7 +146,7 @@ xlink:href="https://nixos.org/nixpkgs/manual/#sec-package-naming">
|
||||
/>), and to extend
|
||||
it in each backend module
|
||||
(<xref
|
||||
linkend='ex-option-declaration-eot-backend-slim' />,
|
||||
linkend='ex-option-declaration-eot-backend-gdm' />,
|
||||
<xref
|
||||
linkend='ex-option-declaration-eot-backend-sddm' />).
|
||||
</para>
|
||||
@ -167,11 +167,11 @@ services.xserver.displayManager.enable = mkOption {
|
||||
};</screen>
|
||||
</example>
|
||||
|
||||
<example xml:id='ex-option-declaration-eot-backend-slim'>
|
||||
<title>Extending <literal>services.xserver.displayManager.enable</literal> in the <literal>slim</literal> module</title>
|
||||
<example xml:id='ex-option-declaration-eot-backend-gdm'>
|
||||
<title>Extending <literal>services.xserver.displayManager.enable</literal> in the <literal>gdm</literal> module</title>
|
||||
<screen>
|
||||
services.xserver.displayManager.enable = mkOption {
|
||||
type = with types; nullOr (enum [ "slim" ]);
|
||||
type = with types; nullOr (enum [ "gdm" ]);
|
||||
};</screen>
|
||||
</example>
|
||||
|
||||
|
@ -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>
|
||||
|
@ -543,7 +543,7 @@
|
||||
<listitem>
|
||||
<para>
|
||||
The <option>networking.useDHCP</option> option is unsupported in combination with
|
||||
<option>networking.useNetworkd</option> in anticipation of defaulting to it by default.
|
||||
<option>networking.useNetworkd</option> in anticipation of defaulting to it.
|
||||
It has to be set to <literal>false</literal> and enabled per
|
||||
interface with <option>networking.interfaces.<name>.useDHCP = true;</option>
|
||||
</para>
|
||||
|
@ -71,7 +71,11 @@
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para />
|
||||
<para>
|
||||
The kubernetes kube-proxy now supports a new hostname configuration
|
||||
<literal>services.kubernetes.proxy.hostname</literal> which has to
|
||||
be set if the hostname of the node should be non default.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
@ -138,6 +142,19 @@
|
||||
Now, all bash code is held to the same high standard, and the rather complex stateful manipulation of the options can be discarded.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The SLIM Display Manager has been removed, as it has been unmaintained since 2013.
|
||||
Consider migrating to a different display manager such as LightDM (current default in NixOS),
|
||||
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>
|
||||
|
||||
|
@ -261,7 +261,6 @@ in rec {
|
||||
inherit require;
|
||||
virtualisation.memorySize = 1024;
|
||||
services.xserver.enable = true;
|
||||
services.xserver.displayManager.slim.enable = false;
|
||||
services.xserver.displayManager.auto.enable = true;
|
||||
services.xserver.windowManager.default = "icewm";
|
||||
services.xserver.windowManager.icewm.enable = true;
|
||||
|
@ -248,7 +248,6 @@ in rec {
|
||||
inherit require;
|
||||
virtualisation.memorySize = 1024;
|
||||
services.xserver.enable = true;
|
||||
services.xserver.displayManager.slim.enable = false;
|
||||
services.xserver.displayManager.auto.enable = true;
|
||||
services.xserver.windowManager.default = "icewm";
|
||||
services.xserver.windowManager.icewm.enable = true;
|
||||
|
@ -75,7 +75,7 @@ in
|
||||
|
||||
Note that this configuration will only be successful when a display manager
|
||||
for which the <option>services.xserver.displayManager.setupCommands</option>
|
||||
option is supported is used; notably, SLiM is not supported.
|
||||
option is supported is used.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
with lib;
|
||||
|
||||
let
|
||||
version = "1.5.0";
|
||||
version = "1.6.4";
|
||||
cfg = config.services.kubernetes.addons.dns;
|
||||
ports = {
|
||||
dns = 10053;
|
||||
@ -55,9 +55,9 @@ in {
|
||||
type = types.attrs;
|
||||
default = {
|
||||
imageName = "coredns/coredns";
|
||||
imageDigest = "sha256:e83beb5e43f8513fa735e77ffc5859640baea30a882a11cc75c4c3244a737d3c";
|
||||
imageDigest = "sha256:493ee88e1a92abebac67cbd4b5658b4730e0f33512461442d8d9214ea6734a9b";
|
||||
finalImageTag = version;
|
||||
sha256 = "15sbmhrxjxidj0j0cccn1qxpg6al175w43m6ngspl0mc132zqc9q";
|
||||
sha256 = "0fm9zdjavpf5hni8g7fkdd3csjbhd7n7py7llxjc66sbii087028";
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -68,7 +68,7 @@ in {
|
||||
|
||||
services.kubernetes.addonManager.bootstrapAddons = {
|
||||
coredns-cr = {
|
||||
apiVersion = "rbac.authorization.k8s.io/v1beta1";
|
||||
apiVersion = "rbac.authorization.k8s.io/v1";
|
||||
kind = "ClusterRole";
|
||||
metadata = {
|
||||
labels = {
|
||||
@ -94,7 +94,7 @@ in {
|
||||
};
|
||||
|
||||
coredns-crb = {
|
||||
apiVersion = "rbac.authorization.k8s.io/v1beta1";
|
||||
apiVersion = "rbac.authorization.k8s.io/v1";
|
||||
kind = "ClusterRoleBinding";
|
||||
metadata = {
|
||||
annotations = {
|
||||
@ -170,7 +170,7 @@ in {
|
||||
};
|
||||
|
||||
coredns-deploy = {
|
||||
apiVersion = "extensions/v1beta1";
|
||||
apiVersion = "apps/v1";
|
||||
kind = "Deployment";
|
||||
metadata = {
|
||||
labels = {
|
||||
|
@ -40,6 +40,7 @@ in
|
||||
cni.config = mkDefault [{
|
||||
name = "mynet";
|
||||
type = "flannel";
|
||||
cniVersion = "0.3.1";
|
||||
delegate = {
|
||||
isDefaultGateway = true;
|
||||
bridge = "docker0";
|
||||
|
@ -92,7 +92,7 @@ in
|
||||
default = [];
|
||||
example = literalExample ''
|
||||
[{
|
||||
"cniVersion": "0.2.0",
|
||||
"cniVersion": "0.3.1",
|
||||
"name": "mynet",
|
||||
"type": "bridge",
|
||||
"bridge": "cni0",
|
||||
@ -106,7 +106,7 @@ in
|
||||
]
|
||||
}
|
||||
} {
|
||||
"cniVersion": "0.2.0",
|
||||
"cniVersion": "0.3.1",
|
||||
"type": "loopback"
|
||||
}]
|
||||
'';
|
||||
|
@ -31,6 +31,12 @@ in
|
||||
type = listOf str;
|
||||
};
|
||||
|
||||
hostname = mkOption {
|
||||
description = "Kubernetes proxy hostname override.";
|
||||
default = config.networking.hostName;
|
||||
type = str;
|
||||
};
|
||||
|
||||
kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes proxy";
|
||||
|
||||
verbosity = mkOption {
|
||||
@ -59,6 +65,7 @@ in
|
||||
"--cluster-cidr=${top.clusterCidr}"} \
|
||||
${optionalString (cfg.featureGates != [])
|
||||
"--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
|
||||
--hostname-override=${cfg.hostname} \
|
||||
--kubeconfig=${top.lib.mkKubeConfig "kube-proxy" cfg.kubeconfig} \
|
||||
${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
|
||||
${cfg.extraOpts}
|
||||
@ -69,6 +76,8 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
services.kubernetes.proxy.hostname = with config.networking; mkDefault hostName;
|
||||
|
||||
services.kubernetes.pki.certs = {
|
||||
kubeProxyClient = top.lib.mkCert {
|
||||
name = "kube-proxy-client";
|
||||
|
@ -41,5 +41,7 @@ in {
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkgs.lorri ];
|
||||
};
|
||||
}
|
||||
|
@ -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" ];
|
||||
|
||||
|
@ -128,12 +128,6 @@ in {
|
||||
}
|
||||
];
|
||||
|
||||
environment.etc."yggdrasil.conf" = {
|
||||
enable = true;
|
||||
mode = "symlink";
|
||||
source = "/run/yggdrasil/yggdrasil.conf";
|
||||
};
|
||||
|
||||
systemd.services.yggdrasil = {
|
||||
description = "Yggdrasil Network Service";
|
||||
path = [ cfg.package ] ++ optional (configProvided && configFileProvided) pkgs.jq;
|
||||
@ -146,7 +140,7 @@ in {
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${cfg.package}/bin/yggdrasil -useconffile /etc/yggdrasil.conf";
|
||||
ExecStart = "${cfg.package}/bin/yggdrasil -useconffile /run/yggdrasil/yggdrasil.conf";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
Restart = "always";
|
||||
|
||||
|
@ -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.
|
||||
|
@ -232,7 +232,6 @@ in
|
||||
security.pam.services.kdm.enableKwallet = true;
|
||||
security.pam.services.lightdm.enableKwallet = true;
|
||||
security.pam.services.sddm.enableKwallet = true;
|
||||
security.pam.services.slim.enableKwallet = true;
|
||||
|
||||
xdg.portal.enable = true;
|
||||
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-kde ];
|
||||
|
@ -1,9 +1,9 @@
|
||||
# This module declares the options to define a *display manager*, the
|
||||
# program responsible for handling X logins (such as xdm, gdb, or
|
||||
# SLiM). The display manager allows the user to select a *session
|
||||
# type*. When the user logs in, the display manager starts the
|
||||
# program responsible for handling X logins (such as LightDM, GDM, or SDDM).
|
||||
# The display manager allows the user to select a *session
|
||||
# type*. When the user logs in, the display manager starts the
|
||||
# *session script* ("xsession" below) to launch the selected session
|
||||
# type. The session type defines two things: the *desktop manager*
|
||||
# type. The session type defines two things: the *desktop manager*
|
||||
# (e.g., KDE, Gnome or a plain xterm), and optionally the *window
|
||||
# manager* (e.g. kwin or twm).
|
||||
|
||||
@ -196,7 +196,6 @@ let
|
||||
fi
|
||||
'') cfg.displayManager.extraSessionFilePackages}
|
||||
|
||||
|
||||
${concatMapStrings (pkg: ''
|
||||
if test -d ${pkg}/share/wayland-sessions; then
|
||||
mkdir -p "$out/share/wayland-sessions"
|
||||
@ -322,7 +321,7 @@ in
|
||||
execCmd = mkOption {
|
||||
type = types.str;
|
||||
example = literalExample ''
|
||||
"''${pkgs.slim}/bin/slim"
|
||||
"''${pkgs.lightdm}/bin/lightdm"
|
||||
'';
|
||||
description = "Command to start the display manager.";
|
||||
};
|
||||
@ -330,7 +329,6 @@ in
|
||||
environment = mkOption {
|
||||
type = types.attrsOf types.unspecified;
|
||||
default = {};
|
||||
example = { SLIM_CFGFILE = "/etc/slim.conf"; };
|
||||
description = "Additional environment variables needed by the display manager.";
|
||||
};
|
||||
|
||||
|
@ -2,155 +2,15 @@
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
dmcfg = config.services.xserver.displayManager;
|
||||
|
||||
cfg = dmcfg.slim;
|
||||
|
||||
slimConfig = pkgs.writeText "slim.cfg"
|
||||
''
|
||||
xauth_path ${dmcfg.xauthBin}
|
||||
default_xserver ${dmcfg.xserverBin}
|
||||
xserver_arguments ${toString dmcfg.xserverArgs}
|
||||
sessiondir ${dmcfg.session.desktops}/share/xsessions
|
||||
login_cmd exec ${pkgs.runtimeShell} ${dmcfg.session.wrapper} "%session"
|
||||
halt_cmd ${config.systemd.package}/sbin/shutdown -h now
|
||||
reboot_cmd ${config.systemd.package}/sbin/shutdown -r now
|
||||
logfile /dev/stderr
|
||||
${optionalString (cfg.defaultUser != null) ("default_user " + cfg.defaultUser)}
|
||||
${optionalString (cfg.defaultUser != null) ("focus_password yes")}
|
||||
${optionalString cfg.autoLogin "auto_login yes"}
|
||||
${optionalString (cfg.consoleCmd != null) "console_cmd ${cfg.consoleCmd}"}
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
|
||||
# Unpack the SLiM theme, or use the default.
|
||||
slimThemesDir =
|
||||
let
|
||||
unpackedTheme = pkgs.runCommand "slim-theme" { preferLocalBuild = true; }
|
||||
''
|
||||
mkdir -p $out
|
||||
cd $out
|
||||
unpackFile ${cfg.theme}
|
||||
ln -s * default
|
||||
'';
|
||||
in if cfg.theme == null then "${pkgs.slim}/share/slim/themes" else unpackedTheme;
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
services.xserver.displayManager.slim = {
|
||||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to enable SLiM as the display manager.
|
||||
'';
|
||||
};
|
||||
|
||||
theme = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = pkgs.fetchurl {
|
||||
url = "https://github.com/jagajaga/nixos-slim-theme/archive/2.0.tar.gz";
|
||||
sha256 = "0lldizhigx7bjhxkipii87y432hlf5wdvamnfxrryf9z7zkfypc8";
|
||||
};
|
||||
defaultText = ''pkgs.fetchurl {
|
||||
url = "https://github.com/jagajaga/nixos-slim-theme/archive/2.0.tar.gz";
|
||||
sha256 = "0lldizhigx7bjhxkipii87y432hlf5wdvamnfxrryf9z7zkfypc8";
|
||||
}'';
|
||||
example = literalExample ''
|
||||
pkgs.fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-wave.tar.gz";
|
||||
sha256 = "0ndr419i5myzcylvxb89m9grl2xyq6fbnyc3lkd711mzlmnnfxdy";
|
||||
}
|
||||
'';
|
||||
description = ''
|
||||
The theme for the SLiM login manager. If not specified, SLiM's
|
||||
default theme is used. See <link
|
||||
xlink:href='http://slim.berlios.de/themes01.php'/> for a
|
||||
collection of themes. TODO: berlios shut down.
|
||||
'';
|
||||
};
|
||||
|
||||
defaultUser = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "login";
|
||||
description = ''
|
||||
The default user to load. If you put a username here you
|
||||
get it automatically loaded into the username field, and
|
||||
the focus is placed on the password.
|
||||
'';
|
||||
};
|
||||
|
||||
autoLogin = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Automatically log in as the default user.
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
description = ''
|
||||
Extra configuration options for SLiM login manager. Do not
|
||||
add options that can be configured directly.
|
||||
'';
|
||||
};
|
||||
|
||||
consoleCmd = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = ''
|
||||
${pkgs.xterm}/bin/xterm -C -fg white -bg black +sb -T "Console login" -e ${pkgs.shadow}/bin/login
|
||||
'';
|
||||
defaultText = ''
|
||||
''${pkgs.xterm}/bin/xterm -C -fg white -bg black +sb -T "Console login" -e ''${pkgs.shadow}/bin/login
|
||||
'';
|
||||
description = ''
|
||||
The command to run when "console" is given as the username.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
services.xserver.displayManager.job =
|
||||
{ environment =
|
||||
{ SLIM_CFGFILE = slimConfig;
|
||||
SLIM_THEMESDIR = slimThemesDir;
|
||||
};
|
||||
execCmd = "exec ${pkgs.slim}/bin/slim";
|
||||
};
|
||||
|
||||
services.xserver.displayManager.sessionCommands =
|
||||
''
|
||||
# Export the config/themes for slimlock.
|
||||
export SLIM_THEMESDIR=${slimThemesDir}
|
||||
'';
|
||||
|
||||
# Allow null passwords so that the user can login as root on the
|
||||
# installation CD.
|
||||
security.pam.services.slim = { allowNullPassword = true; startSession = true; };
|
||||
|
||||
# Allow slimlock to work.
|
||||
security.pam.services.slimlock = {};
|
||||
|
||||
environment.systemPackages = [ pkgs.slim ];
|
||||
|
||||
};
|
||||
|
||||
# added 2019-11-11
|
||||
imports = [
|
||||
(mkRemovedOptionModule [ "services" "xserver" "displayManager" "slim" ] ''
|
||||
The SLIM project is abandoned and their last release was in 2013.
|
||||
Because of this it poses a security risk to your system.
|
||||
Other issues include it not fully supporting systemd and logind sessions.
|
||||
Please use a different display manager such as LightDM, SDDM, or GDM.
|
||||
You can also use the startx module which uses Xinitrc.
|
||||
'')
|
||||
];
|
||||
}
|
||||
|
@ -557,7 +557,6 @@ in
|
||||
default = !( dmconf.auto.enable
|
||||
|| dmconf.gdm.enable
|
||||
|| dmconf.sddm.enable
|
||||
|| dmconf.slim.enable
|
||||
|| dmconf.xpra.enable );
|
||||
in mkIf (default) true;
|
||||
|
||||
|
@ -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 = {
|
||||
|
||||
|
@ -133,7 +133,6 @@ in rec {
|
||||
(all nixos.tests.proxy)
|
||||
(all nixos.tests.sddm.default)
|
||||
(all nixos.tests.simple)
|
||||
(all nixos.tests.slim)
|
||||
(all nixos.tests.switchTest)
|
||||
(all nixos.tests.udisks2)
|
||||
(all nixos.tests.xfce)
|
||||
|
@ -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 {};
|
||||
@ -248,7 +249,6 @@ in
|
||||
shiori = handleTest ./shiori.nix {};
|
||||
signal-desktop = handleTest ./signal-desktop.nix {};
|
||||
simple = handleTest ./simple.nix {};
|
||||
slim = handleTest ./slim.nix {};
|
||||
slurm = handleTest ./slurm.nix {};
|
||||
smokeping = handleTest ./smokeping.nix {};
|
||||
snapper = handleTest ./snapper.nix {};
|
||||
|
@ -53,6 +53,7 @@ let
|
||||
services.flannel.iface = "eth1";
|
||||
services.kubernetes = {
|
||||
addons.dashboard.enable = true;
|
||||
proxy.hostname = "${masterName}.${domain}";
|
||||
|
||||
easyCerts = true;
|
||||
inherit (machine) roles;
|
||||
|
@ -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()
|
||||
'';
|
||||
})
|
||||
|
@ -25,6 +25,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
||||
roundcube.wait_for_unit("postgresql.service")
|
||||
roundcube.wait_for_unit("phpfpm-roundcube.service")
|
||||
roundcube.wait_for_unit("nginx.service")
|
||||
roundcube.succeed("curl -sSfL http://roundcube/ | grep 'Keep me logged in'")
|
||||
roundcube.succeed("curl -sSL http://roundcube/ | grep 'Keep me logged in'")
|
||||
'';
|
||||
})
|
||||
|
@ -1,66 +0,0 @@
|
||||
import ./make-test.nix ({ pkgs, ...} : {
|
||||
name = "slim";
|
||||
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ aszlig ];
|
||||
};
|
||||
|
||||
machine = { pkgs, ... }: {
|
||||
imports = [ ./common/user-account.nix ];
|
||||
services.xserver.enable = true;
|
||||
services.xserver.windowManager.default = "icewm";
|
||||
services.xserver.windowManager.icewm.enable = true;
|
||||
services.xserver.desktopManager.default = "none";
|
||||
services.xserver.displayManager.slim = {
|
||||
enable = true;
|
||||
|
||||
# Use a custom theme in order to get best OCR results
|
||||
theme = pkgs.runCommand "slim-theme-ocr" {
|
||||
nativeBuildInputs = [ pkgs.imagemagick ];
|
||||
} ''
|
||||
mkdir "$out"
|
||||
convert -size 1x1 xc:white "$out/background.jpg"
|
||||
convert -size 200x100 xc:white "$out/panel.jpg"
|
||||
cat > "$out/slim.theme" <<EOF
|
||||
background_color #ffffff
|
||||
background_style tile
|
||||
|
||||
input_fgcolor #000000
|
||||
msg_color #000000
|
||||
|
||||
session_color #000000
|
||||
session_font Verdana:size=16:bold
|
||||
|
||||
username_msg Username:
|
||||
username_font Verdana:size=16:bold
|
||||
username_color #000000
|
||||
username_x 50%
|
||||
username_y 40%
|
||||
|
||||
password_msg Password:
|
||||
password_x 50%
|
||||
password_y 40%
|
||||
EOF
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript = { nodes, ... }: let
|
||||
user = nodes.machine.config.users.users.alice;
|
||||
in ''
|
||||
startAll;
|
||||
$machine->waitForText(qr/Username:/);
|
||||
$machine->sendChars("${user.name}\n");
|
||||
$machine->waitForText(qr/Password:/);
|
||||
$machine->sendChars("${user.password}\n");
|
||||
|
||||
$machine->waitForFile('${user.home}/.Xauthority');
|
||||
$machine->succeed('xauth merge ${user.home}/.Xauthority');
|
||||
$machine->waitForWindow('^IceWM ');
|
||||
|
||||
# Make sure SLiM doesn't create a log file
|
||||
$machine->fail('test -e /var/log/slim.log');
|
||||
'';
|
||||
})
|
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"
|
||||
'';
|
||||
})
|
@ -81,7 +81,7 @@ in import ./make-test.nix ({ pkgs, ...} : {
|
||||
denyDhcpcdInterfaces = [ "ygg0" ];
|
||||
config = {
|
||||
IfTAPMode = true;
|
||||
IFName = "ygg0";
|
||||
IfName = "ygg0";
|
||||
MulticastInterfaces = [ "eth1" ];
|
||||
LinkLocalTCPPort = 43210;
|
||||
};
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "avldrums.lv2";
|
||||
version = "0.3.5";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "x42";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "00n2varc7iwp0xbfi45hpq4vlpxxb2kbrdzvrc20qp2265994bqf";
|
||||
sha256 = "1z70rcq6z3gkb4fm8dm9hs31bslwr97zdh2n012fzki9b9rdj5qv";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
, libjack2, gettext, intltool, guile_2_0, lilypond
|
||||
, glib, libxml2, librsvg, libsndfile, aubio
|
||||
, gtk3, gtksourceview, evince, fluidsynth, rubberband
|
||||
, portaudio, portmidi, fftw, makeWrapper }:
|
||||
, portaudio, portmidi, fftw, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "denemo";
|
||||
@ -14,17 +14,21 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
libjack2 gettext guile_2_0 lilypond pkgconfig glib libxml2 librsvg libsndfile
|
||||
libjack2 guile_2_0 lilypond glib libxml2 librsvg libsndfile
|
||||
aubio gtk3 gtksourceview evince fluidsynth rubberband portaudio fftw portmidi
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/denemo --prefix PATH : ${lilypond}/bin
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--prefix PATH : "${lilypond}/bin"
|
||||
)
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapGAppsHook
|
||||
intltool
|
||||
gettext
|
||||
pkgconfig
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
28
pkgs/applications/audio/ensemble-chorus/default.nix
Normal file
28
pkgs/applications/audio/ensemble-chorus/default.nix
Normal file
@ -0,0 +1,28 @@
|
||||
{ stdenv, fetchFromGitHub, fltk, alsaLib, freetype, libXrandr, libXinerama, libXcursor, lv2, libjack2, cmake, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ensemble-chorus";
|
||||
version = "unstable-15-02-2019";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jpcima";
|
||||
repo = pname;
|
||||
rev = "59baeb86b8851f521bc8162e22e3f15061662cc3";
|
||||
sha256 = "0c1y10vyhrihcjvxqpqf6b52yk5yhwh813cfp6nla5ax2w88dbhr";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig ];
|
||||
|
||||
buildInputs = [
|
||||
fltk alsaLib freetype libXrandr libXinerama libXcursor lv2 libjack2
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/jpcima/ensemble-chorus;
|
||||
description = "Digital model of electronic string ensemble chorus";
|
||||
maintainers = [ maintainers.magnetophon ];
|
||||
platforms = platforms.linux;
|
||||
license = licenses.boost;
|
||||
};
|
||||
}
|
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
|
||||
};
|
||||
}
|
30
pkgs/applications/audio/gxmatcheq-lv2/default.nix
Normal file
30
pkgs/applications/audio/gxmatcheq-lv2/default.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchFromGitHub, xorg, xorgproto, cairo, lv2, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "GxMatchEQ.lv2";
|
||||
version = "0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "brummer10";
|
||||
repo = pname;
|
||||
rev = "V${version}";
|
||||
sha256 = "0azdmgzqwjn26nx38iw13666a1i4y2bv39wk89pf6ihdi46klf72";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [
|
||||
xorg.libX11 xorgproto cairo lv2
|
||||
];
|
||||
|
||||
# error: format not a string literal and no format arguments [-Werror=format-security]
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
installFlags = [ "INSTALL_DIR=$(out)/lib/lv2" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/brummer10/GxMatchEQ.lv2;
|
||||
description = "Matching Equalizer to apply EQ curve from one source to another source";
|
||||
maintainers = [ maintainers.magnetophon ];
|
||||
license = licenses.gpl3;
|
||||
};
|
||||
}
|
@ -1,5 +1,12 @@
|
||||
{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, glib, ncurses
|
||||
, mpd_clientlib, gettext, boost }:
|
||||
, mpd_clientlib, gettext, boost
|
||||
, pcreSupport ? false
|
||||
, pcre ? null
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
assert pcreSupport -> pcre != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ncmpc";
|
||||
@ -12,14 +19,14 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1ssmk1p43gjhcqi86sh6b7csqpwwpf3hs32cmnylv6pmbcwbs69h";
|
||||
};
|
||||
|
||||
buildInputs = [ glib ncurses mpd_clientlib boost ];
|
||||
buildInputs = [ glib ncurses mpd_clientlib boost ]
|
||||
++ optional pcreSupport pcre;
|
||||
nativeBuildInputs = [ meson ninja pkgconfig gettext ];
|
||||
|
||||
mesonFlags = [
|
||||
"-Dlirc=disabled"
|
||||
"-Dregex=disabled"
|
||||
"-Ddocumentation=disabled"
|
||||
];
|
||||
] ++ optional (!pcreSupport) "-Dregex=disabled";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Curses-based interface for MPD (music player daemon)";
|
||||
|
@ -2,19 +2,17 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "spotify-tui";
|
||||
version = "0.8.0";
|
||||
version = "0.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Rigellute";
|
||||
repo = "spotify-tui";
|
||||
rev = "v${version}";
|
||||
sha256 = "0pgmcld48sd34jpsc4lr8dbqs8iwk0xp9aa3b15m61mv3lf04qc6";
|
||||
sha256 = "1bbh9df4gfgb5pqavgvmy8fqnr2j5rbqbanv0y31j4i0kv2wrh6a";
|
||||
};
|
||||
|
||||
cargoSha256 = "1rb4dl9zn3xx2yrapx5cfsli93ggmdq8w9fqi8cy8giyja1mnqfl";
|
||||
|
||||
cargoPatches = [ ./fix-cargo-lock-version.patch ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ openssl ]
|
||||
++ stdenv.lib.optional stdenv.isDarwin Security;
|
||||
|
@ -1,13 +0,0 @@
|
||||
diff --git i/Cargo.lock w/Cargo.lock
|
||||
index e1eae72..e004898 100644
|
||||
--- i/Cargo.lock
|
||||
+++ w/Cargo.lock
|
||||
@@ -1310,7 +1310,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "spotify-tui"
|
||||
-version = "0.7.5"
|
||||
+version = "0.8.0"
|
||||
dependencies = [
|
||||
"backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
34
pkgs/applications/audio/stone-phaser/default.nix
Normal file
34
pkgs/applications/audio/stone-phaser/default.nix
Normal file
@ -0,0 +1,34 @@
|
||||
{ stdenv, fetchFromGitHub, xorg, cairo, lv2, libjack2, mesa, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "stone-phaser";
|
||||
version = "0.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jpcima";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "180b32z8h9zi8p0q55r1dzxfckamnngm52zjypjjvvy7qdj3mfcd";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [
|
||||
xorg.libX11 cairo lv2 libjack2 mesa
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
patch -d dpf -p 1 -i "$src/resources/patch/DPF-bypass.patch"
|
||||
patchShebangs ./dpf/utils/generate-ttl.sh
|
||||
'';
|
||||
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/jpcima/stone-phaser;
|
||||
description = "A classic analog phaser effect, made with DPF and Faust";
|
||||
maintainers = [ maintainers.magnetophon ];
|
||||
platforms = platforms.linux;
|
||||
license = licenses.boost;
|
||||
};
|
||||
}
|
@ -2,12 +2,12 @@
|
||||
|
||||
let
|
||||
pname = "ledger-live-desktop";
|
||||
version = "1.15.0";
|
||||
version = "1.18.2";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
|
||||
sha256 = "0r7gm7q7gj39v36jd5xz20931za94nf2fpf3clbghkhlbrm0kbnq";
|
||||
sha256 = "1giy8xg1yfv7b7gh98dmfc05wh54xqpd53nanacwcc7lakzizqnn";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {
|
||||
|
@ -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,55 +0,0 @@
|
||||
{ stdenv, fetchurl, fetchpatch, cmake, pkgconfig, xorg, libjpeg, libpng
|
||||
, fontconfig, freetype, pam, dbus, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "slim-1.3.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/${name}.tar.gz";
|
||||
sha256 = "1pqhk22jb4aja4hkrm7rjgbgzjyh7i4zswdgf5nw862l2znzxpi1";
|
||||
};
|
||||
|
||||
patches =
|
||||
[ # Allow the paths of the configuration file and theme directory to
|
||||
# be set at runtime.
|
||||
./runtime-paths.patch
|
||||
|
||||
# Exit after the user's session has finished. This works around
|
||||
# slim's broken PAM session handling (see
|
||||
# http://developer.berlios.de/bugs/?func=detailbug&bug_id=19102&group_id=2663).
|
||||
./run-once.patch
|
||||
|
||||
# Ensure that sessions appear in sort order, rather than in
|
||||
# directory order.
|
||||
./sort-sessions.patch
|
||||
|
||||
# Allow to set logfile to a special "/dev/stderr" in order to continue
|
||||
# logging to stderr and thus to the journal.
|
||||
./no-logfile.patch
|
||||
] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl (fetchpatch {
|
||||
url = "https://raw.githubusercontent.com/gentoo/musl/8eddda8072add075ebf56cf6d288bc1450d6b5f8/x11-misc/slim/files/slim-1.3.6-add-missing-libgen_h.patch";
|
||||
sha256 = "0f82672s2r2cmdqfn2mbg3di76mbla9n0ik20p2gv4igi6p866xm";
|
||||
});
|
||||
|
||||
preConfigure = "substituteInPlace CMakeLists.txt --replace /lib $out/lib";
|
||||
|
||||
cmakeFlags = [ "-DUSE_PAM=1" ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${freetype.dev}/include/freetype -std=c++11";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs =
|
||||
[ cmake pkgconfig libjpeg libpng fontconfig freetype
|
||||
pam dbus
|
||||
xorg.libX11 xorg.libXext xorg.libXrandr xorg.libXrender xorg.libXmu xorg.libXft makeWrapper
|
||||
];
|
||||
|
||||
NIX_CFLAGS_LINK = "-lXmu";
|
||||
|
||||
meta = {
|
||||
homepage = https://sourceforge.net/projects/slim.berlios/; # berlios shut down; I found no replacement yet
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
};
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
diff --git a/log.cpp b/log.cpp
|
||||
index b44677a..7c89dda 100644
|
||||
--- a/log.cpp
|
||||
+++ b/log.cpp
|
||||
@@ -1,23 +1,31 @@
|
||||
#include "log.h"
|
||||
#include <iostream>
|
||||
+#include <cstring>
|
||||
|
||||
bool
|
||||
LogUnit::openLog(const char * filename)
|
||||
{
|
||||
- if (logFile.is_open()) {
|
||||
+ if (isFile && logFile.is_open()) {
|
||||
cerr << APPNAME
|
||||
<< ": opening a new Log file, while another is already open"
|
||||
<< endl;
|
||||
- logFile.close();
|
||||
+ closeLog();
|
||||
}
|
||||
- logFile.open(filename, ios_base::app);
|
||||
|
||||
- return !(logFile.fail());
|
||||
+ if (strcmp(filename, "/dev/stderr") == 0) {
|
||||
+ isFile = false;
|
||||
+ return true;
|
||||
+ } else {
|
||||
+ logFile.open(filename, ios_base::app);
|
||||
+ isFile = true;
|
||||
+ return !(logFile.fail());
|
||||
+ }
|
||||
}
|
||||
|
||||
void
|
||||
LogUnit::closeLog()
|
||||
{
|
||||
+ if (!isFile) return;
|
||||
if (logFile.is_open())
|
||||
logFile.close();
|
||||
}
|
||||
diff --git a/log.h b/log.h
|
||||
index b7810be..ad548a2 100644
|
||||
--- a/log.h
|
||||
+++ b/log.h
|
||||
@@ -9,11 +9,14 @@
|
||||
#endif
|
||||
#include "const.h"
|
||||
#include <fstream>
|
||||
+#include <iostream>
|
||||
|
||||
using namespace std;
|
||||
|
||||
static class LogUnit {
|
||||
ofstream logFile;
|
||||
+ bool isFile;
|
||||
+ inline ostream &getStream() { return isFile ? logFile : cerr; }
|
||||
public:
|
||||
bool openLog(const char * filename);
|
||||
void closeLog();
|
||||
@@ -22,17 +25,17 @@ public:
|
||||
|
||||
template<typename Type>
|
||||
LogUnit & operator<<(const Type & text) {
|
||||
- logFile << text; logFile.flush();
|
||||
+ getStream() << text; getStream().flush();
|
||||
return *this;
|
||||
}
|
||||
|
||||
LogUnit & operator<<(ostream & (*fp)(ostream&)) {
|
||||
- logFile << fp; logFile.flush();
|
||||
+ getStream() << fp; getStream().flush();
|
||||
return *this;
|
||||
}
|
||||
|
||||
LogUnit & operator<<(ios_base & (*fp)(ios_base&)) {
|
||||
- logFile << fp; logFile.flush();
|
||||
+ getStream() << fp; getStream().flush();
|
||||
return *this;
|
||||
}
|
||||
} logStream;
|
@ -1,12 +0,0 @@
|
||||
diff -ru -x '*~' slim-1.3.6-orig/app.cpp slim-1.3.6/app.cpp
|
||||
--- slim-1.3.6-orig/app.cpp 2013-10-15 11:02:55.629263422 +0200
|
||||
+++ slim-1.3.6/app.cpp 2013-10-15 13:00:10.141210784 +0200
|
||||
@@ -816,7 +822,7 @@
|
||||
StopServer();
|
||||
RemoveLock();
|
||||
while (waitpid(-1, NULL, WNOHANG) > 0); /* Collects all dead childrens */
|
||||
- Run();
|
||||
+ exit(OK_EXIT);
|
||||
}
|
||||
|
||||
void App::KillAllClients(Bool top) {
|
@ -1,70 +0,0 @@
|
||||
diff -ru slim-1.3.6-orig/app.cpp slim-1.3.6/app.cpp
|
||||
--- slim-1.3.6-orig/app.cpp 2013-10-02 00:38:05.000000000 +0200
|
||||
+++ slim-1.3.6/app.cpp 2014-03-30 19:01:04.115414201 +0200
|
||||
@@ -200,7 +200,9 @@
|
||||
|
||||
/* Read configuration and theme */
|
||||
cfg = new Cfg;
|
||||
- cfg->readConf(CFGFILE);
|
||||
+ char *cfgfile = getenv("SLIM_CFGFILE");
|
||||
+ if (!cfgfile) cfgfile = CFGFILE;
|
||||
+ cfg->readConf(cfgfile);
|
||||
string themebase = "";
|
||||
string themefile = "";
|
||||
string themedir = "";
|
||||
@@ -208,7 +210,9 @@
|
||||
if (testing) {
|
||||
themeName = testtheme;
|
||||
} else {
|
||||
- themebase = string(THEMESDIR) + "/";
|
||||
+ char *themesdir = getenv("SLIM_THEMESDIR");
|
||||
+ if (!themesdir) themesdir = THEMESDIR;
|
||||
+ themebase = string(themesdir) + "/";
|
||||
themeName = cfg->getOption("current_theme");
|
||||
string::size_type pos;
|
||||
if ((pos = themeName.find(",")) != string::npos) {
|
||||
diff -ru slim-1.3.6-orig/CMakeLists.txt slim-1.3.6/CMakeLists.txt
|
||||
--- slim-1.3.6-orig/CMakeLists.txt 2013-10-02 00:38:05.000000000 +0200
|
||||
+++ slim-1.3.6/CMakeLists.txt 2014-03-30 19:16:48.445069729 +0200
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
set(CMAKE_INSTALL_PREFIX "/usr/local" CACHE PATH "Installation Directory")
|
||||
set(PKGDATADIR "${CMAKE_INSTALL_PREFIX}/share/slim")
|
||||
-set(SYSCONFDIR "/etc")
|
||||
+set(SYSCONFDIR "$ENV{out}/etc")
|
||||
set(LIBDIR "/lib")
|
||||
set(MANDIR "${CMAKE_INSTALL_PREFIX}/share/man")
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DPACKAGE=\"slim\"")
|
||||
set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DVERSION=\"${SLIM_VERSION}\"")
|
||||
set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DPKGDATADIR=\"${PKGDATADIR}\"")
|
||||
-set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DSYSCONFDIR=\"${SYSCONFDIR}\"")
|
||||
+set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DSYSCONFDIR=\"/etc\"")
|
||||
|
||||
# Flags
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -g -O2")
|
||||
Only in slim-1.3.6: CMakeLists.txt~
|
||||
diff -ru slim-1.3.6-orig/slimlock.cpp slim-1.3.6/slimlock.cpp
|
||||
--- slim-1.3.6-orig/slimlock.cpp 2013-10-02 00:38:05.000000000 +0200
|
||||
+++ slim-1.3.6/slimlock.cpp 2014-03-30 19:01:04.115414201 +0200
|
||||
@@ -106,13 +106,17 @@
|
||||
unsigned int cfg_passwd_timeout;
|
||||
// Read user's current theme
|
||||
cfg = new Cfg;
|
||||
- cfg->readConf(CFGFILE);
|
||||
+ char *cfgfile = getenv("SLIM_CFGFILE");
|
||||
+ if (!cfgfile) cfgfile = CFGFILE;
|
||||
+ cfg->readConf(cfgfile);
|
||||
cfg->readConf(SLIMLOCKCFG);
|
||||
string themebase = "";
|
||||
string themefile = "";
|
||||
string themedir = "";
|
||||
themeName = "";
|
||||
- themebase = string(THEMESDIR) + "/";
|
||||
+ char *themesdir = getenv("SLIM_THEMESDIR");
|
||||
+ if (!themesdir) themesdir = THEMESDIR;
|
||||
+ themebase = string(themesdir) + "/";
|
||||
themeName = cfg->getOption("current_theme");
|
||||
string::size_type pos;
|
||||
if ((pos = themeName.find(",")) != string::npos) {
|
@ -1,40 +0,0 @@
|
||||
diff -ru -x '*~' slim-1.3.6-orig/cfg.cpp slim-1.3.6/cfg.cpp
|
||||
--- slim-1.3.6-orig/cfg.cpp 2013-10-02 00:38:05.000000000 +0200
|
||||
+++ slim-1.3.6/cfg.cpp 2016-01-30 10:35:51.108766802 +0100
|
||||
@@ -14,6 +14,7 @@
|
||||
#include <iostream>
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
+#include <algorithm>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
@@ -293,6 +294,8 @@
|
||||
|
||||
sessions.clear();
|
||||
|
||||
+ typedef pair<string,string> session_t;
|
||||
+
|
||||
if( !strSessionDir.empty() ) {
|
||||
DIR *pDir = opendir(strSessionDir.c_str());
|
||||
|
||||
@@ -325,7 +328,7 @@
|
||||
}
|
||||
}
|
||||
desktop_file.close();
|
||||
- pair<string,string> session(session_name,session_exec);
|
||||
+ session_t session(session_name,session_exec);
|
||||
sessions.push_back(session);
|
||||
cout << session_exec << " - " << session_name << endl;
|
||||
}
|
||||
@@ -341,6 +344,10 @@
|
||||
pair<string,string> session("","");
|
||||
sessions.push_back(session);
|
||||
}
|
||||
+
|
||||
+ std::sort(sessions.begin(), sessions.end(), [](session_t& a, session_t& b) -> bool{
|
||||
+ return a.first < b.first;
|
||||
+ });
|
||||
}
|
||||
|
||||
pair<string,string> Cfg::nextSession() {
|
@ -1,183 +0,0 @@
|
||||
{ stdenv, fetchurl, slim }:
|
||||
|
||||
# Inspired on aspell buildDict expression
|
||||
|
||||
let
|
||||
buildTheme =
|
||||
{fullName, src, version ? "testing"}:
|
||||
|
||||
stdenv. mkDerivation rec {
|
||||
name = "${fullName}-${version}";
|
||||
|
||||
inherit src;
|
||||
|
||||
buildInputs = [ slim ];
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
install -dm755 $out/share/slim/themes/${name}
|
||||
install -m644 * $out/share/slim/themes/${name}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Slim theme for ${fullName}";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
};
|
||||
|
||||
in {
|
||||
|
||||
archlinuxSimple = buildTheme {
|
||||
fullName = "archlinux-simple";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-archlinux-simple.tar.gz";
|
||||
sha256 = "7d60d6782fa86302646fe67253467c04692d247f89bdbe87178f690f32b270db";
|
||||
};
|
||||
};
|
||||
|
||||
capernoited = buildTheme {
|
||||
fullName = "capernoited";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-capernoited.tar.gz";
|
||||
sha256 = "fb9163c6a2656d60f088dc4f2173aa7556a6794495122acfa7d3be7182f16b41";
|
||||
};
|
||||
};
|
||||
|
||||
debianMoreblue = buildTheme {
|
||||
fullName = "debian-moreblue";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-debian-moreblue.tar.bz2";
|
||||
sha256 = "5b76929827d4a4d604ddca4f42668cca3309b6f7bd659901021c6f49d6d2c481";
|
||||
};
|
||||
};
|
||||
|
||||
fingerprint = buildTheme {
|
||||
fullName = "fingerprint";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-fingerprint.tar.gz";
|
||||
sha256 = "48b703f84ce7b814cda0824f65cafebf695cd71a14166b481bb44616097d3144";
|
||||
};
|
||||
};
|
||||
|
||||
flat = buildTheme {
|
||||
fullName = "flat";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-flat.tar.gz";
|
||||
sha256 = "0092d531540f9da8ef07ad173e527c4ef9c088d04962d142be3c11f0c5c0c5e9";
|
||||
};
|
||||
};
|
||||
|
||||
flower2 = buildTheme {
|
||||
fullName = "flower2";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-flower2.tar.gz";
|
||||
sha256 = "840faf6459ffd6c2c363160c85cb98000717f9a425102976336f5d8f68ed95ee";
|
||||
};
|
||||
};
|
||||
|
||||
gentooSimple = buildTheme {
|
||||
fullName = "gentoo-simple";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-gentoo-simple.tar.bz2";
|
||||
sha256 = "27c8614cc930ca200acf81f1192febc102501744939d5cbe997141e37c96d8c2";
|
||||
};
|
||||
};
|
||||
|
||||
lake = buildTheme {
|
||||
fullName = "lake";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-lake.tar.gz";
|
||||
sha256 = "f7d662e37068a6c64cbf910adf3c192f1b50724baa427a8c9487cb9f7ed95851";
|
||||
};
|
||||
};
|
||||
|
||||
lunar = buildTheme {
|
||||
fullName = "lunar-0.4";
|
||||
version = "";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-lunar-0.4.tar.bz2";
|
||||
sha256 = "1543eb45e4d664377e0dd4f7f954aba005823034ba9692624398b3d58be87d76";
|
||||
};
|
||||
};
|
||||
|
||||
mindlock = buildTheme {
|
||||
fullName = "mindlock";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-mindlock.tar.gz";
|
||||
sha256 = "99a6e6acd55bf55ece18a3f644299517b71c1adc49efd87ce2d7e654fb67033c";
|
||||
};
|
||||
};
|
||||
|
||||
parallelDimensions = buildTheme {
|
||||
fullName = "parallel-dimensions";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-parallel-dimensions.tar.gz";
|
||||
sha256 = "2b17c3e6d3967a6a0744e20e6e05c9d3938f4ef04c62d49ddbd416bc4743046f";
|
||||
};
|
||||
};
|
||||
|
||||
previous = buildTheme {
|
||||
fullName = "previous";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-previous.tar.gz";
|
||||
sha256 = "1f2a69f8fc0dc8ed8eb86a4c1d1087ba7be486973fb81efab52a63c661d726f8";
|
||||
};
|
||||
};
|
||||
|
||||
rainbow = buildTheme {
|
||||
fullName = "rainbow";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-rainbow.tar.gz";
|
||||
sha256 = "d83e3afdb05be50cff7da037bb31208b2c152539d1a009740b13857f5f910072";
|
||||
};
|
||||
};
|
||||
|
||||
rear-window = buildTheme {
|
||||
fullName = "rear-window";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-rear-window.tar.gz";
|
||||
sha256 = "0b123706ccb67e94f626c183530ec5732b209bab155bc661d6a3f5cd5ee39511";
|
||||
};
|
||||
};
|
||||
|
||||
scotlandRoad = buildTheme {
|
||||
fullName = "scotland-road";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-scotland-road.tar.gz";
|
||||
sha256 = "fd60a434496ed39b968ffa1e5457b36cd12f64a4e2ecedffc675f97ca3f3bba1";
|
||||
};
|
||||
};
|
||||
|
||||
subway = buildTheme {
|
||||
fullName = "subway";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-subway.tar.gz";
|
||||
sha256 = "0205568e3e157973b113a83b26d8829ce9962a85ef7eb8a33d3ae2f3f9292253";
|
||||
};
|
||||
};
|
||||
|
||||
wave = buildTheme {
|
||||
fullName = "wave";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-wave.tar.gz";
|
||||
sha256 = "be75676da5bf8670daa48379bb9cc1be0b9a5faa09adbea967dfd7125320b959";
|
||||
};
|
||||
};
|
||||
|
||||
zenwalk = buildTheme {
|
||||
fullName = "zenwalk";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/slim.berlios/slim-zenwalk.tar.gz";
|
||||
sha256 = "f0f41d17ea505b0aa96a036e978fabaf673a51d3f81a919cb0d43364d4bc7a57";
|
||||
};
|
||||
};
|
||||
|
||||
nixosSlim = buildTheme {
|
||||
fullName = "nixos-slim";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/jagajaga/nixos-slim-theme/archive/2.0.tar.gz";
|
||||
sha256 = "0lldizhigx7bjhxkipii87y432hlf5wdvamnfxrryf9z7zkfypc8";
|
||||
};
|
||||
};
|
||||
}
|
@ -13,14 +13,14 @@ let
|
||||
sha256Hash = "0kcd6kd5rn4b76damkfddin18d1r0dck05piv8mq1ns7x1n4hf7q";
|
||||
};
|
||||
betaVersion = {
|
||||
version = "3.6.0.15"; # "Android Studio 3.6 Beta 3"
|
||||
build = "192.5982640";
|
||||
sha256Hash = "0017g7nvjiadd64in9fl4wq5lf8b7pyrdasbnwzjcphpbzy1390x";
|
||||
version = "3.6.0.16"; # "Android Studio 3.6 Beta 4"
|
||||
build = "192.5994180";
|
||||
sha256Hash = "0wyyr6r0jzb1l4rn1mfgp0nnzvgk3x62imq629z6vrdbymy8psf1";
|
||||
};
|
||||
latestVersion = { # canary & dev
|
||||
version = "4.0.0.2"; # "Android Studio 4.0 Canary 2"
|
||||
build = "192.5984562";
|
||||
sha256Hash = "0p29a6np31396970lnb3di2yrcqi3z8nqcn27hcnb4c4g7kjm0qw";
|
||||
version = "4.0.0.3"; # "Android Studio 4.0 Canary 3"
|
||||
build = "192.5994236";
|
||||
sha256Hash = "14ig352anjs0df72f41v4r6jl7mlm2n4pn9syanmykaj87dm4kf4";
|
||||
};
|
||||
in {
|
||||
# Attributes are named by their corresponding release channels
|
||||
|
@ -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;
|
||||
};
|
||||
}
|
@ -15,6 +15,7 @@ stdenv.mkDerivation rec {
|
||||
postPatch = ''
|
||||
substituteInPlace Makefile --replace "-llua5.3" "-llua";
|
||||
substituteInPlace mle.h --replace "<lua5.3/" "<";
|
||||
patchShebangs tests/*
|
||||
'';
|
||||
|
||||
buildInputs = [ termbox pcre uthash lua5_3 ];
|
||||
|
@ -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 ]
|
||||
@ -9,7 +9,7 @@ let
|
||||
python = let
|
||||
packageOverrides = self: super: {
|
||||
markdown = super.markdown.overridePythonAttrs(old: {
|
||||
src = super.fetchPypi {
|
||||
src = super.fetchPypi {
|
||||
version = "3.0.1";
|
||||
pname = "Markdown";
|
||||
sha256 = "d02e0f9b04c500cde6637c11ad7c72671f359b87b9fe924b2383649d8841db7c";
|
||||
@ -17,11 +17,12 @@ let
|
||||
});
|
||||
|
||||
chardet = super.chardet.overridePythonAttrs(old: {
|
||||
src = super.fetchPypi {
|
||||
src = super.fetchPypi {
|
||||
version = "2.3.0";
|
||||
pname = "chardet";
|
||||
sha256 = "e53e38b3a4afe6d1132de62b7400a4ac363452dc5dfcf8d88e8e0cce663c68aa";
|
||||
};
|
||||
patches = [];
|
||||
});
|
||||
};
|
||||
in python3.override { inherit packageOverrides; };
|
||||
@ -41,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;
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ lib, mkDerivation, fetchFromGitHub, qmake, qtbase, qtscript, qtsvg,
|
||||
poppler, zlib, pkgconfig }:
|
||||
wrapQtAppsHook, poppler, zlib, pkgconfig }:
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "texstudio";
|
||||
@ -12,7 +12,7 @@ mkDerivation rec {
|
||||
sha256 = "0ck65fvz6mzfpqdb1ndgyvgxdnslrwhdr1swgck4gaghcrgbg3gq";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake pkgconfig ];
|
||||
nativeBuildInputs = [ qmake wrapQtAppsHook pkgconfig ];
|
||||
buildInputs = [ qtbase qtscript qtsvg poppler zlib ];
|
||||
|
||||
qmakeFlags = [ "NO_APPDATA=True" ];
|
||||
|
@ -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"'';
|
||||
|
@ -13,8 +13,8 @@ let
|
||||
else throw "ImageMagick is not supported on this platform.";
|
||||
|
||||
cfg = {
|
||||
version = "6.9.10-69";
|
||||
sha256 = "0l4lllis16gbwjpvvsyfz91i9nq11zb3lg2zlmyay7v5697jshh6";
|
||||
version = "6.9.10-71";
|
||||
sha256 = "0c69xmr8k8c4dplgzxydm30s2dr8biq71x07hc15bw196nsx3srr";
|
||||
patches = [];
|
||||
}
|
||||
# Freeze version on mingw so we don't need to port the patch too often.
|
||||
|
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Image viewing and manipulation programs";
|
||||
description = "Image viewing and manipulation programs including fbi, fbgs, ida, exiftran and thumbnail.cgi";
|
||||
homepage = https://www.kraxel.org/blog/linux/fbida/;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ pSub ];
|
||||
|
@ -1,24 +1,24 @@
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, cmake, pixman, libpthreadstubs, gtkmm3, libXau
|
||||
, libXdmcp, lcms2, libiptcdata, libcanberra-gtk3, fftw, expat, pcre, libsigcxx, wrapGAppsHook
|
||||
, lensfun
|
||||
, lensfun, librsvg
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "5.5";
|
||||
name = "rawtherapee-" + version;
|
||||
version = "5.7";
|
||||
pname = "rawtherapee";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Beep6581";
|
||||
repo = "RawTherapee";
|
||||
rev = version;
|
||||
sha256 = "13clnx7rwkfa7wxgsim1xdx2pd7gwmmdad1m8a3fvywr20ml8xzk";
|
||||
sha256 = "0j3887a3683fqpvp66kaw6x81ai3gf5nvrbmb4cc8rb0lgj2xv2g";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig wrapGAppsHook ];
|
||||
|
||||
buildInputs = [
|
||||
pixman libpthreadstubs gtkmm3 libXau libXdmcp
|
||||
lcms2 libiptcdata libcanberra-gtk3 fftw expat pcre libsigcxx lensfun
|
||||
lcms2 libiptcdata libcanberra-gtk3 fftw expat pcre libsigcxx lensfun librsvg
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
|
@ -5,7 +5,7 @@ callPackage ./generic.nix (args // rec {
|
||||
src = fetchurl {
|
||||
sha256 = "1j9nbqspaj0rlgalafb5z6r606k0i22kz0rcpd744p176yzlfdr9";
|
||||
urls = [
|
||||
"https://alioth.debian.org/frs/download.php/latestfile/176/sane-backends-${version}.tar.gz"
|
||||
"https://alioth-archive.debian.org/releases/sane/sane-backends/${version}/sane-backends-${version}.tar.gz"
|
||||
];
|
||||
};
|
||||
})
|
||||
|
@ -5,6 +5,6 @@ callPackage ./generic.nix (args // {
|
||||
src = fetchgit {
|
||||
sha256 = "0qf7d7268kdxnb723c03m6icxhbgx0vw8gqvck2q1w5b948dy9g8";
|
||||
rev = "e895ee55bec8a3320a0e972b32c05d35b47fe226";
|
||||
url = "git://alioth.debian.org/git/sane/sane-backends.git";
|
||||
url = "https://gitlab.com/sane-project/backends.git";
|
||||
};
|
||||
})
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
version = "1.0.14";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://alioth.debian.org/frs/download.php/latestfile/175/${pname}-${version}.tar.gz";
|
||||
url = "https://alioth-archive.debian.org/releases/sane/${pname}/${version}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1ad4zr7rcxpda8yzvfkq1rfjgx9nl6lan5a628wvpdbh3fn9v0z7";
|
||||
};
|
||||
|
||||
|
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 ];
|
||||
};
|
||||
}
|
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
CMatrix simulates the display from "The Matrix" and is based
|
||||
on the screensaver from the movie's website.
|
||||
'';
|
||||
homepage = http://www.asty.org/cmatrix/;
|
||||
homepage = https://github.com/abishekvashok/cmatrix;
|
||||
platforms = ncurses.meta.platforms;
|
||||
maintainers = [ maintainers.AndersonTorres ];
|
||||
};
|
||||
|
@ -42,5 +42,6 @@ python2Packages.buildPythonApplication rec {
|
||||
homepage = https://github.com/dashpay/electrum-dash;
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ np ];
|
||||
knownVulnerabilities = [ "CVE-2018-1000022" ];
|
||||
};
|
||||
}
|
||||
|
@ -17,7 +17,7 @@ stdenv.mkDerivation {
|
||||
configureFlags = [ "--with-ssl=${openssl.dev}" ];
|
||||
|
||||
meta = {
|
||||
homepage = http://www.fetchmail.info/;
|
||||
homepage = https://www.fetchmail.info/;
|
||||
description = "A full-featured remote-mail retrieval and forwarding utility";
|
||||
longDescription = ''
|
||||
A full-featured, robust, well-documented remote-mail retrieval and
|
||||
|
@ -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"];
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "gpxsee";
|
||||
version = "7.16";
|
||||
version = "7.17";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tumic0";
|
||||
repo = "GPXSee";
|
||||
rev = version;
|
||||
sha256 = "1mkfhb2c9qafjpva600nyn6yik49l4q1k6id1xvrci37wsn6ijav";
|
||||
sha256 = "10mch709m4ws73yzkrx9lm2hwzl179ggpk6xkbhkvnl7rsd2yz08";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake ];
|
||||
|
@ -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 ];
|
||||
|
@ -1,21 +1,33 @@
|
||||
{ stdenv, python36Packages, fetchFromGitHub, libxcb, mtools, p7zip, parted, procps, utillinux, qt5, runtimeShell }:
|
||||
{ fetchFromGitHub, libxcb, mtools, p7zip, parted, procps,
|
||||
python36Packages, qt5, runtimeShell, stdenv, utillinux, wrapQtAppsHook }:
|
||||
|
||||
# Note: Multibootusb is tricky to maintain. It relies on the
|
||||
# $PYTHONPATH variable containing some of their code, so that
|
||||
# something like:
|
||||
#
|
||||
# from scripts import config
|
||||
#
|
||||
# works. It also relies on the current directory to find some runtime
|
||||
# resources thanks to a use of __file__.
|
||||
#
|
||||
# https://github.com/mbusb/multibootusb/blob/0d34d70c3868f1d7695cfd141141b17c075de967/scripts/osdriver.py#L59
|
||||
|
||||
python36Packages.buildPythonApplication rec {
|
||||
pname = "multibootusb";
|
||||
name = "${pname}-${version}";
|
||||
version = "9.2.0";
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
python36Packages.dbus-python
|
||||
python36Packages.pyqt5
|
||||
python36Packages.pytest-shutil
|
||||
python36Packages.python
|
||||
python36Packages.pyudev
|
||||
python36Packages.six
|
||||
libxcb
|
||||
mtools
|
||||
p7zip
|
||||
parted
|
||||
procps
|
||||
python36Packages.python
|
||||
qt5.full
|
||||
utillinux
|
||||
];
|
||||
@ -28,32 +40,42 @@ python36Packages.buildPythonApplication rec {
|
||||
sha256 = "0wlan0cp6c2i0nahixgpmkm0h4n518gj8rc515d579pqqp91p2h3";
|
||||
};
|
||||
|
||||
# Skip the fixup stage where stuff is shrinked (can't shrink text files)
|
||||
phases = [ "unpackPhase" "installPhase" ];
|
||||
# Tests can't run inside the NixOS sandbox
|
||||
# "Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory"
|
||||
doCheck = false;
|
||||
|
||||
installPhase = ''
|
||||
share="$out/share/${pname}"
|
||||
mkdir -p "$share"
|
||||
cp -r data "$share/data"
|
||||
cp -r scripts "$share/scripts"
|
||||
cp "${pname}" "$share/${pname}"
|
||||
pythonPath = [
|
||||
python36Packages.dbus-python
|
||||
python36Packages.pyqt5
|
||||
python36Packages.pytest-shutil
|
||||
python36Packages.pyudev
|
||||
python36Packages.six
|
||||
];
|
||||
|
||||
mkdir "$out/bin"
|
||||
cat > "$out/bin/${pname}" <<EOF
|
||||
#!${runtimeShell}
|
||||
cd "$share"
|
||||
export PYTHONPATH="$PYTHONPATH:$share"
|
||||
export PATH="$PATH:${parted}/bin:${procps}/bin"
|
||||
makeWrapperArgs = [
|
||||
# Firstly, add all necessary QT variables
|
||||
"\${qtWrapperArgs[@]}"
|
||||
|
||||
"${python36Packages.python}/bin/python" "${pname}"
|
||||
EOF
|
||||
chmod +x "$out/bin/${pname}"
|
||||
# Then, add the installed scripts/ directory to the python path
|
||||
"--prefix" "PYTHONPATH" ":" "$out/lib/${python36Packages.python.libPrefix}/site-packages"
|
||||
|
||||
# Finally, move to directory that contains data
|
||||
"--run" "\"cd $out/share/${pname}\""
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
# This script doesn't work and it doesn't add much anyway
|
||||
rm $out/bin/multibootusb-pkexec
|
||||
|
||||
# The installed data isn't sufficient for whatever reason, missing gdisk/gdisk.exe
|
||||
mkdir -p "$out/share/${pname}"
|
||||
cp -r data "$out/share/${pname}/data"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Multiboot USB creator for Linux live disks";
|
||||
homepage = http://multibootusb.org/;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ jD91mZM2 ];
|
||||
maintainers = []; # Looking for a maintainer!
|
||||
};
|
||||
}
|
||||
|
@ -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; {
|
||||
|
@ -19,7 +19,7 @@ in mkDerivation rec {
|
||||
|
||||
buildInputs = [ perlPackages.perl ];
|
||||
|
||||
preBuild = ''
|
||||
postPatch = ''
|
||||
substituteInPlace scripts/scripts.pro \
|
||||
--replace /bin/true ${coreutils}/bin/true
|
||||
|
||||
@ -37,9 +37,8 @@ in mkDerivation rec {
|
||||
substituteInPlace src/StdCleanup.cpp \
|
||||
--replace /bin/bash ${bash}/bin/bash
|
||||
'';
|
||||
postPatch = ''
|
||||
export qmakeFlags="$qmakeFlags INSTALL_PREFIX=$out"
|
||||
'';
|
||||
|
||||
qmakeFlags = [ "INSTALL_PREFIX=${placeholder "out"}" ];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/qdirstat-cache-writer \
|
||||
|
@ -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 ];
|
||||
|
@ -4,13 +4,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "xmrig";
|
||||
version = "3.2.0";
|
||||
version = "5.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xmrig";
|
||||
repo = "xmrig";
|
||||
rev = "v${version}";
|
||||
sha256 = "1qb20v3wvd6scx0dnlcqvj947ng4h0lxlvl9kpz0a2a3l5425rjf";
|
||||
sha256 = "17bgz1rpix1zgzzn4zz84jp7hl6b2k968h918y3av5asxn0mji49";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -4,13 +4,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "xmrig-proxy";
|
||||
version = "3.2.0";
|
||||
version = "5.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xmrig";
|
||||
repo = "xmrig-proxy";
|
||||
rev = "v${version}";
|
||||
sha256 = "0scz78cc5zcdd6z4gm0zqsb36jf0z8fyn2ki52814ndxrk7nr4xg";
|
||||
sha256 = "0h0yxzpar952ix94j10qyf31c20g45w0nxr02vfybjip48dvlf76";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -45,11 +45,11 @@ let
|
||||
|
||||
flash = stdenv.mkDerivation rec {
|
||||
pname = "flashplayer-ppapi";
|
||||
version = "32.0.0.270";
|
||||
version = "32.0.0.293";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz";
|
||||
sha256 = "1z8nfw7b3dsy79gb50bmmdjz66j5gx6m0hkw1abp35xdgh2sz2ak";
|
||||
sha256 = "0rgriqdbyrzpm1bcph35bhzd5dz21yim56z93hkmbpdqg7767dwm";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
|
@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Fast, small, webkit based browser framework extensible in Lua";
|
||||
homepage = http://luakit.org;
|
||||
homepage = https://luakit.github.io/;
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux; # Only tested linux
|
||||
};
|
||||
|
@ -74,7 +74,7 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "flashplayer";
|
||||
version = "32.0.0.270";
|
||||
version = "32.0.0.293";
|
||||
|
||||
src = fetchurl {
|
||||
url =
|
||||
@ -85,14 +85,14 @@ stdenv.mkDerivation rec {
|
||||
sha256 =
|
||||
if debug then
|
||||
if arch == "x86_64" then
|
||||
"1c3dn4gkl40i5sjkvpbkn9fl82vjhy1v7dhrayk3ncfsxcyvbcm0"
|
||||
"0lz1na68gdi9n23hfj5c731dbskm9684cwar7ji8yjfhfryfg5yn"
|
||||
else
|
||||
"1g7i9mihn5g9i71xyf805k19yk41vsr85gzk87gm426m0hcgg89i"
|
||||
"10gm2ynndlyk66fndfbh7ah5ssqpyw8415i10n3lpw940x201dk0"
|
||||
else
|
||||
if arch == "x86_64" then
|
||||
"16lxgkbr2hg49vhc7414zkh1kblhysf779854faay308ml3i5kdw"
|
||||
"0hmlv0v9lbgxrmz0n7czfnrbrwjwxhy99gsr5g1m0aqgw0y61clc"
|
||||
else
|
||||
"0jrdzm8pw7aq32w7m4rvkhj7mmqyddh5yxpj7q3d9hxrwshkikvj";
|
||||
"0qdw4f48xhnkzdly3jz63v14nmzd0gg49az5wxb08ghs8laaqlik";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
|
@ -50,7 +50,7 @@
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "flashplayer-standalone";
|
||||
version = "32.0.0.270";
|
||||
version = "32.0.0.293";
|
||||
|
||||
src = fetchurl {
|
||||
url =
|
||||
@ -60,9 +60,9 @@ stdenv.mkDerivation {
|
||||
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/32/flash_player_sa_linux.x86_64.tar.gz";
|
||||
sha256 =
|
||||
if debug then
|
||||
"0k5azrl92hkbn7adjz7s2lv8h59n7gsjrcprqdc485i4f7sjmkwj"
|
||||
"13mrknvl3yd8vrcs7mp6szz6f9ssfs72apzvc60f9qfwkhiwlg87"
|
||||
else
|
||||
"1la5s4wxchfpl8in576xj675yrg84pify22pwf063h0jg3rdgi68";
|
||||
"0isvmzyi4isxvxxc5ksplcqc5cafpvbrln3dddpms8zps2dxpyzi";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
|
@ -15,13 +15,13 @@ with lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "kubernetes";
|
||||
version = "1.15.4";
|
||||
version = "1.16.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubernetes";
|
||||
repo = "kubernetes";
|
||||
rev = "v${version}";
|
||||
sha256 = "18wpqrgb1ils4g8ggg217xq4jq30i4m7par2mdjk59pmz7ssm25p";
|
||||
sha256 = "0s2k7ik2aa7knh25r0qki7ldr3g9h87dgi8nm64j8n0yy4xvg2h3";
|
||||
};
|
||||
|
||||
buildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
|
||||
@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
|
||||
description = "Production-Grade Container Scheduling and Management";
|
||||
license = licenses.asl20;
|
||||
homepage = https://kubernetes.io;
|
||||
maintainers = with maintainers; [johanot offline];
|
||||
maintainers = with maintainers; [johanot offline saschagrunert];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
24
pkgs/applications/networking/cluster/kubeseal/default.nix
Normal file
24
pkgs/applications/networking/cluster/kubeseal/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ lib, buildGoModule, fetchFromGitHub }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubeseal";
|
||||
version = "0.9.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bitnami-labs";
|
||||
repo = "sealed-secrets";
|
||||
rev = "v${version}";
|
||||
sha256 = "0k59n40rmxjdn0xi8gr08zlxk0irfc7crra9x8qdljvivqshma3z";
|
||||
};
|
||||
|
||||
modSha256 = "04dmjyz3vi2l0dfpyy42lkp2fv1vlfkvblrxh1dvb37phrkd5lbd";
|
||||
|
||||
subPackages = [ "cmd/kubeseal" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A Kubernetes controller and tool for one-way encrypted Secrets";
|
||||
homepage = "https://github.com/bitnami-labs/sealed-secrets";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ groodt ];
|
||||
};
|
||||
}
|
@ -112,8 +112,8 @@ in rec {
|
||||
terraform_0_11-full = terraform_0_11.full;
|
||||
|
||||
terraform_0_12 = pluggable (generic {
|
||||
version = "0.12.14";
|
||||
sha256 = "0pq4sfnnlj91gxyxvyzzrgglnvh8xpan90gnc9jvnnb23iv4q96l";
|
||||
version = "0.12.15";
|
||||
sha256 = "18kvgb2sjldis7bykb11zqzx6avr7a4ry91xsfq4v0iwbi5k383b";
|
||||
patches = [ ./provider-path.patch ];
|
||||
passthru = { inherit plugins; };
|
||||
});
|
||||
|
@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
|
||||
castget is a simple, command-line based RSS enclosure downloader. It is
|
||||
primarily intended for automatic, unattended downloading of podcasts.
|
||||
'';
|
||||
homepage = "http://castget.johndal.com/";
|
||||
homepage = "https://castget.johndal.com/";
|
||||
maintainers = with maintainers; [ doronbehar ];
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
|
@ -1,16 +1,16 @@
|
||||
{ callPackage }:
|
||||
|
||||
let
|
||||
stableVersion = "2.2.2";
|
||||
previewVersion = "2.2.2";
|
||||
stableVersion = "2.2.3";
|
||||
previewVersion = stableVersion;
|
||||
addVersion = args:
|
||||
let version = if args.stable then stableVersion else previewVersion;
|
||||
branch = if args.stable then "stable" else "preview";
|
||||
in args // { inherit version branch; };
|
||||
mkGui = args: callPackage (import ./gui.nix (addVersion args)) { };
|
||||
mkServer = args: callPackage (import ./server.nix (addVersion args)) { };
|
||||
guiSrcHash = "0i335fjbadixp39l75w0fl5iwz2cb8rcdj2xvx1my3vzhg8lijfl";
|
||||
serverSrcHash = "1g6km8jc53y8ph14ifjxscbimdxma6bw5ir9gqzvkjn39k9fy1w6";
|
||||
guiSrcHash = "1l40q3d3hsmhgwb4d8hj73vhgckm0dvsc6l6qzacypd202iq1v8a";
|
||||
serverSrcHash = "1qcypb1rmfdl8fl3ykqf5phcapmjid6jrxd6xpncd5dhyl2hr94n";
|
||||
in {
|
||||
guiStable = mkGui {
|
||||
stable = true;
|
||||
|
@ -27,10 +27,10 @@ in {
|
||||
pname = "discord-canary";
|
||||
binaryName = "DiscordCanary";
|
||||
desktopName = "Discord Canary";
|
||||
version = "0.0.97";
|
||||
version = "0.0.98";
|
||||
src = fetchurl {
|
||||
url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
|
||||
sha256 = "17kwgk2kwrfqgjqmfv055gvlqq144gz7bywwrs6i2x7mimz4345x";
|
||||
sha256 = "0raqsfakjbcsh7g280yi7sg2jsrmy2q4jldg73wb868z35radld4";
|
||||
};
|
||||
};
|
||||
}.${branch}
|
||||
|
@ -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;
|
||||
|
@ -1,26 +1,26 @@
|
||||
{ stdenv, fetchgit, pkgconfig, pidgin, json-glib, glib, http-parser, sqlite, olm, libgcrypt } :
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, pidgin, json-glib, glib, http-parser, sqlite, olm, libgcrypt } :
|
||||
|
||||
let
|
||||
version = "2018-08-03";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "purple-matrix-unstable";
|
||||
inherit version;
|
||||
version = "2019-06-06";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/matrix-org/purple-matrix";
|
||||
rev = "5a7166a3f54f85793c6b60662f8d12196aeaaeb0";
|
||||
sha256 = "0ph0s24b37d1c50p8zbzgf4q2xns43a8v6vk85iz633wdd72zsa0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "matrix-org";
|
||||
repo = "purple-matrix";
|
||||
rev = "4494ba22b479917f0b1f96a3019792d3d75bcff1";
|
||||
sha256 = "1gjm0z4wa5vi9x1xk43rany5pffrwg958n180ahdj9a7sa8a4hpm";
|
||||
};
|
||||
|
||||
# glib-2.62 deprecations
|
||||
NIX_CFLAGS_COMPILE = [ "-DGLIB_DISABLE_DEPRECATION_WARNINGS" ];
|
||||
NIX_CFLAGS_COMPILE = [
|
||||
# glib-2.62 deprecations
|
||||
"-DGLIB_DISABLE_DEPRECATION_WARNINGS"
|
||||
# override "-O0 -Werror" set by build system
|
||||
"-O3" "-Wno-error"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ pidgin json-glib glib http-parser sqlite olm libgcrypt ];
|
||||
|
||||
hardeningDisable = [ "fortify" ]; # upstream compiles with -O0
|
||||
|
||||
makeFlags = [
|
||||
"PLUGIN_DIR_PURPLE=${placeholder "out"}/lib/purple-2"
|
||||
"DATA_ROOT_DIR_PURPLE=${placeholder "out"}/share"
|
||||
|
@ -31,6 +31,7 @@ in yarn2nix-moretea.mkYarnPackage rec {
|
||||
ln -s '${riot-web}' "$out/share/riot/webapp"
|
||||
cp -r '${riot-web-src}/origin_migrator' "$out/share/riot/origin_migrator"
|
||||
cp -r './deps/riot-web' "$out/share/riot/electron"
|
||||
cp -r './deps/riot-web/img' "$out/share/riot"
|
||||
rm "$out/share/riot/electron/node_modules"
|
||||
cp -r './node_modules' "$out/share/riot/electron"
|
||||
|
||||
|
@ -114,7 +114,7 @@ in stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = https://signal.org/;
|
||||
license = lib.licenses.gpl3;
|
||||
maintainers = with lib.maintainers; [ ixmatus primeos ];
|
||||
maintainers = with lib.maintainers; [ ixmatus primeos equirosa ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
@ -1,16 +1,17 @@
|
||||
{ theme ? null, stdenv, fetchurl, dpkg, makeWrapper , alsaLib, atk, cairo,
|
||||
cups, curl, dbus, expat, fontconfig, freetype, glib , gnome2, gtk3, gdk-pixbuf,
|
||||
libappindicator-gtk3, libnotify, libxcb, nspr, nss, pango , systemd, xorg,
|
||||
at-spi2-atk, libuuid, nodePackages
|
||||
at-spi2-atk, at-spi2-core, libuuid, nodePackages, libpulseaudio
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
version = "4.0.2";
|
||||
version = "4.1.2";
|
||||
|
||||
rpath = stdenv.lib.makeLibraryPath [
|
||||
alsaLib
|
||||
at-spi2-atk
|
||||
at-spi2-core
|
||||
atk
|
||||
cairo
|
||||
cups
|
||||
@ -32,6 +33,7 @@ let
|
||||
stdenv.cc.cc
|
||||
systemd
|
||||
libuuid
|
||||
libpulseaudio
|
||||
|
||||
xorg.libxkbfile
|
||||
xorg.libX11
|
||||
@ -51,7 +53,7 @@ let
|
||||
if stdenv.hostPlatform.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "https://downloads.slack-edge.com/linux_releases/slack-desktop-${version}-amd64.deb";
|
||||
sha256 = "053j5py16ilpwy868rhh5l2g93xj1fq4fwxrsi2bkfsnmq261hkm";
|
||||
sha256 = "0a1b2k81hm1lfrdb47gmd07jqb7hva9sxsiph7b3iwzpzw8pjrkh";
|
||||
}
|
||||
else
|
||||
throw "Slack is not supported on ${stdenv.hostPlatform.system}";
|
||||
@ -63,18 +65,22 @@ in stdenv.mkDerivation {
|
||||
inherit src;
|
||||
|
||||
buildInputs = [
|
||||
dpkg
|
||||
gtk3 # needed for GSETTINGS_SCHEMAS_PATH
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper nodePackages.asar ];
|
||||
nativeBuildInputs = [ dpkg makeWrapper nodePackages.asar ];
|
||||
|
||||
dontUnpack = true;
|
||||
buildCommand = ''
|
||||
dontBuild = true;
|
||||
dontPatchELF = true;
|
||||
|
||||
installPhase = ''
|
||||
# The deb file contains a setuid binary, so 'dpkg -x' doesn't work here
|
||||
dpkg --fsys-tarfile $src | tar --extract
|
||||
rm -rf usr/share/lintian
|
||||
|
||||
mkdir -p $out
|
||||
dpkg -x $src $out
|
||||
cp -av $out/usr/* $out
|
||||
rm -rf $out/etc $out/usr $out/share/lintian
|
||||
mv usr/* $out
|
||||
|
||||
# Otherwise it looks "suspicious"
|
||||
chmod -R g-w $out
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user