Merge staging-next into staging
This commit is contained in:
commit
bae32a9f5c
|
@ -2754,9 +2754,9 @@ addEnvHooks "$hostOffset" myBashFunction
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Overrides the configure, build, and install phases. This will run the
|
Overrides the configure, build, and install phases. This will run the
|
||||||
"waf" script used by many projects. If waf doesn’t exist, it will copy
|
"waf" script used by many projects. If wafPath (default ./waf) doesn’t
|
||||||
the version of waf available in Nixpkgs wafFlags can be used to pass
|
exist, it will copy the version of waf available in Nixpkgs. wafFlags can
|
||||||
flags to the waf script.
|
be used to pass flags to the waf script.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
|
@ -633,8 +633,7 @@ rec {
|
||||||
else
|
else
|
||||||
let
|
let
|
||||||
x = head list;
|
x = head list;
|
||||||
xs = unique (drop 1 list);
|
in [x] ++ unique (remove x list);
|
||||||
in [x] ++ remove x xs;
|
|
||||||
|
|
||||||
/* Intersects list 'e' and another list. O(nm) complexity.
|
/* Intersects list 'e' and another list. O(nm) complexity.
|
||||||
|
|
||||||
|
|
|
@ -12,8 +12,8 @@ rec {
|
||||||
# Bring in a path as a source, filtering out all Subversion and CVS
|
# Bring in a path as a source, filtering out all Subversion and CVS
|
||||||
# directories, as well as backup files (*~).
|
# directories, as well as backup files (*~).
|
||||||
cleanSourceFilter = name: type: let baseName = baseNameOf (toString name); in ! (
|
cleanSourceFilter = name: type: let baseName = baseNameOf (toString name); in ! (
|
||||||
# Filter out Subversion and CVS directories.
|
# Filter out version control software files/directories
|
||||||
(type == "directory" && (baseName == ".git" || baseName == ".svn" || baseName == "CVS" || baseName == ".hg")) ||
|
(baseName == ".git" || type == "directory" && (baseName == ".svn" || baseName == "CVS" || baseName == ".hg")) ||
|
||||||
# Filter out editor backup / swap files.
|
# Filter out editor backup / swap files.
|
||||||
lib.hasSuffix "~" baseName ||
|
lib.hasSuffix "~" baseName ||
|
||||||
builtins.match "^\\.sw[a-z]$" baseName != null ||
|
builtins.match "^\\.sw[a-z]$" baseName != null ||
|
||||||
|
|
|
@ -2905,6 +2905,11 @@
|
||||||
email = "markus@wotringer.de";
|
email = "markus@wotringer.de";
|
||||||
name = "Markus Wotringer";
|
name = "Markus Wotringer";
|
||||||
};
|
};
|
||||||
|
marius851000 = {
|
||||||
|
email = "mariusdavid@laposte.net";
|
||||||
|
name = "Marius David";
|
||||||
|
github = "marius851000";
|
||||||
|
};
|
||||||
marsam = {
|
marsam = {
|
||||||
email = "marsam@users.noreply.github.com";
|
email = "marsam@users.noreply.github.com";
|
||||||
github = "marsam";
|
github = "marsam";
|
||||||
|
|
|
@ -175,6 +175,12 @@
|
||||||
<literal>git tag -s -a -m "Release 15.09" 15.09</literal>
|
<literal>git tag -s -a -m "Release 15.09" 15.09</literal>
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update "Chapter 4. Upgrading NixOS" section of the manual to match
|
||||||
|
new stable release version.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Update http://nixos.org/nixos/download.html and
|
Update http://nixos.org/nixos/download.html and
|
||||||
|
|
|
@ -14,11 +14,11 @@
|
||||||
<para>
|
<para>
|
||||||
<emphasis>Stable channels</emphasis>, such as
|
<emphasis>Stable channels</emphasis>, such as
|
||||||
<literal
|
<literal
|
||||||
xlink:href="https://nixos.org/channels/nixos-17.03">nixos-17.03</literal>.
|
xlink:href="https://nixos.org/channels/nixos-19.03">nixos-19.03</literal>.
|
||||||
These only get conservative bug fixes and package upgrades. For instance,
|
These only get conservative bug fixes and package upgrades. For instance,
|
||||||
a channel update may cause the Linux kernel on your system to be upgraded
|
a channel update may cause the Linux kernel on your system to be upgraded
|
||||||
from 4.9.16 to 4.9.17 (a minor bug fix), but not from
|
from 4.19.34 to 4.19.38 (a minor bug fix), but not from
|
||||||
4.9.<replaceable>x</replaceable> to 4.11.<replaceable>x</replaceable> (a
|
4.19.<replaceable>x</replaceable> to 4.20.<replaceable>x</replaceable> (a
|
||||||
major change that has the potential to break things). Stable channels are
|
major change that has the potential to break things). Stable channels are
|
||||||
generally maintained until the next stable branch is created.
|
generally maintained until the next stable branch is created.
|
||||||
</para>
|
</para>
|
||||||
|
@ -38,7 +38,7 @@
|
||||||
<para>
|
<para>
|
||||||
<emphasis>Small channels</emphasis>, such as
|
<emphasis>Small channels</emphasis>, such as
|
||||||
<literal
|
<literal
|
||||||
xlink:href="https://nixos.org/channels/nixos-17.03-small">nixos-17.03-small</literal>
|
xlink:href="https://nixos.org/channels/nixos-19.03-small">nixos-19.03-small</literal>
|
||||||
or
|
or
|
||||||
<literal
|
<literal
|
||||||
xlink:href="https://nixos.org/channels/nixos-unstable-small">nixos-unstable-small</literal>.
|
xlink:href="https://nixos.org/channels/nixos-unstable-small">nixos-unstable-small</literal>.
|
||||||
|
@ -63,8 +63,8 @@
|
||||||
<para>
|
<para>
|
||||||
When you first install NixOS, you’re automatically subscribed to the NixOS
|
When you first install NixOS, you’re automatically subscribed to the NixOS
|
||||||
channel that corresponds to your installation source. For instance, if you
|
channel that corresponds to your installation source. For instance, if you
|
||||||
installed from a 17.03 ISO, you will be subscribed to the
|
installed from a 19.03 ISO, you will be subscribed to the
|
||||||
<literal>nixos-17.03</literal> channel. To see which NixOS channel you’re
|
<literal>nixos-19.03</literal> channel. To see which NixOS channel you’re
|
||||||
subscribed to, run the following as root:
|
subscribed to, run the following as root:
|
||||||
<screen>
|
<screen>
|
||||||
# nix-channel --list | grep nixos
|
# nix-channel --list | grep nixos
|
||||||
|
@ -75,13 +75,13 @@ nixos https://nixos.org/channels/nixos-unstable
|
||||||
# nix-channel --add https://nixos.org/channels/<replaceable>channel-name</replaceable> nixos
|
# nix-channel --add https://nixos.org/channels/<replaceable>channel-name</replaceable> nixos
|
||||||
</screen>
|
</screen>
|
||||||
(Be sure to include the <literal>nixos</literal> parameter at the end.) For
|
(Be sure to include the <literal>nixos</literal> parameter at the end.) For
|
||||||
instance, to use the NixOS 17.03 stable channel:
|
instance, to use the NixOS 19.03 stable channel:
|
||||||
<screen>
|
<screen>
|
||||||
# nix-channel --add https://nixos.org/channels/nixos-17.03 nixos
|
# nix-channel --add https://nixos.org/channels/nixos-19.03 nixos
|
||||||
</screen>
|
</screen>
|
||||||
If you have a server, you may want to use the “small” channel instead:
|
If you have a server, you may want to use the “small” channel instead:
|
||||||
<screen>
|
<screen>
|
||||||
# nix-channel --add https://nixos.org/channels/nixos-17.03-small nixos
|
# nix-channel --add https://nixos.org/channels/nixos-19.03-small nixos
|
||||||
</screen>
|
</screen>
|
||||||
And if you want to live on the bleeding edge:
|
And if you want to live on the bleeding edge:
|
||||||
<screen>
|
<screen>
|
||||||
|
@ -127,7 +127,7 @@ nixos https://nixos.org/channels/nixos-unstable
|
||||||
current channel. (To see when the service runs, see <command>systemctl
|
current channel. (To see when the service runs, see <command>systemctl
|
||||||
list-timers</command>.) You can also specify a channel explicitly, e.g.
|
list-timers</command>.) You can also specify a channel explicitly, e.g.
|
||||||
<programlisting>
|
<programlisting>
|
||||||
<xref linkend="opt-system.autoUpgrade.channel"/> = https://nixos.org/channels/nixos-17.03;
|
<xref linkend="opt-system.autoUpgrade.channel"/> = https://nixos.org/channels/nixos-19.03;
|
||||||
</programlisting>
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
|
|
|
@ -24,8 +24,14 @@
|
||||||
|
|
||||||
<arg>
|
<arg>
|
||||||
<option>--help</option>
|
<option>--help</option>
|
||||||
</arg>
|
</arg>
|
||||||
|
|
||||||
|
<arg>
|
||||||
|
<option>--option</option>
|
||||||
|
<replaceable>name</replaceable>
|
||||||
|
<replaceable>value</replaceable>
|
||||||
|
</arg>
|
||||||
|
|
||||||
<arg choice="plain">
|
<arg choice="plain">
|
||||||
<replaceable>network.nix</replaceable>
|
<replaceable>network.nix</replaceable>
|
||||||
</arg>
|
</arg>
|
||||||
|
@ -115,6 +121,18 @@
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
<option>--option</option> <replaceable>name</replaceable> <replaceable>value</replaceable>
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
<para>Set the Nix configuration option
|
||||||
|
<replaceable>name</replaceable> to <replaceable>value</replaceable>.
|
||||||
|
This overrides settings in the Nix configuration file (see
|
||||||
|
<citerefentry><refentrytitle>nix.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>).
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
</variablelist>
|
</variablelist>
|
||||||
</refsection>
|
</refsection>
|
||||||
</refentry>
|
</refentry>
|
||||||
|
|
|
@ -35,21 +35,6 @@
|
||||||
The following new services were added since the last release:
|
The following new services were added since the last release:
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<itemizedlist>
|
|
||||||
<listitem>
|
|
||||||
<para>
|
|
||||||
Besides the existing <option>services.prometheus</option> module which
|
|
||||||
targets Prometheus-1 a new <option>services.prometheus2</option> module
|
|
||||||
has been added which targets Prometheus-2.
|
|
||||||
</para>
|
|
||||||
<para>
|
|
||||||
Both modules can be enabled at the same time. In fact
|
|
||||||
<link xlink:href="https://prometheus.io/docs/prometheus/latest/migration/#storage">
|
|
||||||
this is needed for upgrading existing Prometheus-1 data to Prometheus-2
|
|
||||||
</link>.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
</itemizedlist>
|
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section xmlns="http://docbook.org/ns/docbook"
|
<section xmlns="http://docbook.org/ns/docbook"
|
||||||
|
@ -82,25 +67,6 @@
|
||||||
accordingly.
|
accordingly.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
|
||||||
<para>
|
|
||||||
The directory where Prometheus will store its metric data is now
|
|
||||||
managed by systemd's StateDirectory mechanism. It still defaults
|
|
||||||
to <literal>/var/lib/prometheus</literal>.
|
|
||||||
</para>
|
|
||||||
<para>
|
|
||||||
Its location can be specified by the new
|
|
||||||
<option>services.prometheus.stateDir</option> option which
|
|
||||||
defaults to <literal>prometheus</literal>. Note that this should
|
|
||||||
be a directory relative to <literal>/var/lib/</literal>.
|
|
||||||
</para>
|
|
||||||
<para>
|
|
||||||
The option <option>services.prometheus.dataDir</option> has been
|
|
||||||
deprecated. You can still set it but it's now required to have
|
|
||||||
<literal>/var/lib/</literal> as a prefix and you can't set
|
|
||||||
<option>services.prometheus.stateDir</option> at the same time.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
The options <option>services.prometheus.alertmanager.user</option> and
|
The options <option>services.prometheus.alertmanager.user</option> and
|
||||||
|
@ -154,6 +120,21 @@
|
||||||
Accelerated Video Playback</link> for better transcoding performance.
|
Accelerated Video Playback</link> for better transcoding performance.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
The following changes apply if the <literal>stateVersion</literal> is
|
||||||
|
changed to 19.09 or higher. For <literal>stateVersion = "19.03"</literal>
|
||||||
|
or lower the old behavior is preserved.
|
||||||
|
</para>
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<literal>solr.package</literal> defaults to
|
||||||
|
<literal>pkgs.solr_8</literal>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
</section>
|
</section>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
x86_64-linux = "/nix/store/pid1yakjasch4pwl63nzbj22z9zf0q26-nix-2.2";
|
x86_64-linux = "/nix/store/hbhdjn5ik3byg642d1m11k3k3s0kn3py-nix-2.2.2";
|
||||||
i686-linux = "/nix/store/qpkl0cxy0xh4h432lv2qsjrmhvx5x2vy-nix-2.2";
|
i686-linux = "/nix/store/fz5cikwvj3n0a6zl44h6l2z3cin64mda-nix-2.2.2";
|
||||||
aarch64-linux = "/nix/store/0jg7h94x986d8cskg6gcfza9x67spdbp-nix-2.2";
|
aarch64-linux = "/nix/store/2gba4cyl4wvxzfbhmli90jy4n5aj0kjj-nix-2.2.2";
|
||||||
x86_64-darwin = "/nix/store/a48whqkmxnsfhwbk6nay74iyc1cf0lr2-nix-2.2";
|
x86_64-darwin = "/nix/store/87i4fp46jfw9yl8c7i9gx75m5yph7irl-nix-2.2.2";
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,49 +9,44 @@ showUsage() {
|
||||||
|
|
||||||
# Parse valid argument options
|
# Parse valid argument options
|
||||||
|
|
||||||
PARAMS=`getopt -n $0 -o h -l no-out-link,show-trace,help -- "$@"`
|
nixBuildArgs=()
|
||||||
|
networkExpr=
|
||||||
|
|
||||||
if [ $? != 0 ]
|
while [ $# -gt 0 ]; do
|
||||||
then
|
|
||||||
showUsage
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
eval set -- "$PARAMS"
|
|
||||||
|
|
||||||
# Evaluate valid options
|
|
||||||
|
|
||||||
while [ "$1" != "--" ]
|
|
||||||
do
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
--no-out-link)
|
--no-out-link)
|
||||||
noOutLinkArg="--no-out-link"
|
nixBuildArgs+=("--no-out-link")
|
||||||
;;
|
;;
|
||||||
--show-trace)
|
--show-trace)
|
||||||
showTraceArg="--show-trace"
|
nixBuildArgs+=("--show-trace")
|
||||||
;;
|
;;
|
||||||
-h|--help)
|
-h|--help)
|
||||||
showUsage
|
showUsage
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
|
--option)
|
||||||
|
shift
|
||||||
|
nixBuildArgs+=("--option" "$1" "$2"); shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if [ ! -z "$networkExpr" ]; then
|
||||||
|
echo "Network expression already set!"
|
||||||
|
showUsage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
networkExpr="$(readlink -f $1)"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
shift
|
if [ -z "$networkExpr" ]
|
||||||
|
|
||||||
# Validate the given options
|
|
||||||
|
|
||||||
if [ "$1" = "" ]
|
|
||||||
then
|
then
|
||||||
echo "ERROR: A network expression must be specified!" >&2
|
echo "ERROR: A network expression must be specified!" >&2
|
||||||
exit 1
|
exit 1
|
||||||
else
|
|
||||||
networkExpr=$(readlink -f $1)
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Build a network of VMs
|
# Build a network of VMs
|
||||||
|
|
||||||
nix-build '<nixpkgs/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix>' \
|
nix-build '<nixpkgs/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix>' \
|
||||||
--argstr networkExpr $networkExpr $noOutLinkArg $showTraceArg
|
--argstr networkExpr $networkExpr "${nixBuildArgs[@]}"
|
||||||
|
|
|
@ -255,6 +255,8 @@
|
||||||
./services/databases/virtuoso.nix
|
./services/databases/virtuoso.nix
|
||||||
./services/desktops/accountsservice.nix
|
./services/desktops/accountsservice.nix
|
||||||
./services/desktops/bamf.nix
|
./services/desktops/bamf.nix
|
||||||
|
./services/desktops/deepin/dde-daemon.nix
|
||||||
|
./services/desktops/deepin/deepin-menu.nix
|
||||||
./services/desktops/dleyna-renderer.nix
|
./services/desktops/dleyna-renderer.nix
|
||||||
./services/desktops/dleyna-server.nix
|
./services/desktops/dleyna-server.nix
|
||||||
./services/desktops/pantheon/contractor.nix
|
./services/desktops/pantheon/contractor.nix
|
||||||
|
@ -268,6 +270,7 @@
|
||||||
./services/desktops/gnome3/evince.nix
|
./services/desktops/gnome3/evince.nix
|
||||||
./services/desktops/gnome3/evolution-data-server.nix
|
./services/desktops/gnome3/evolution-data-server.nix
|
||||||
./services/desktops/gnome3/file-roller.nix
|
./services/desktops/gnome3/file-roller.nix
|
||||||
|
./services/desktops/gnome3/glib-networking.nix
|
||||||
./services/desktops/gnome3/gnome-disks.nix
|
./services/desktops/gnome3/gnome-disks.nix
|
||||||
./services/desktops/gnome3/gnome-documents.nix
|
./services/desktops/gnome3/gnome-documents.nix
|
||||||
./services/desktops/gnome3/gnome-keyring.nix
|
./services/desktops/gnome3/gnome-keyring.nix
|
||||||
|
@ -488,6 +491,7 @@
|
||||||
./services/monitoring/prometheus/default.nix
|
./services/monitoring/prometheus/default.nix
|
||||||
./services/monitoring/prometheus/alertmanager.nix
|
./services/monitoring/prometheus/alertmanager.nix
|
||||||
./services/monitoring/prometheus/exporters.nix
|
./services/monitoring/prometheus/exporters.nix
|
||||||
|
./services/monitoring/prometheus/pushgateway.nix
|
||||||
./services/monitoring/riemann.nix
|
./services/monitoring/riemann.nix
|
||||||
./services/monitoring/riemann-dash.nix
|
./services/monitoring/riemann-dash.nix
|
||||||
./services/monitoring/riemann-tools.nix
|
./services/monitoring/riemann-tools.nix
|
||||||
|
@ -672,6 +676,7 @@
|
||||||
./services/networking/tinydns.nix
|
./services/networking/tinydns.nix
|
||||||
./services/networking/tftpd.nix
|
./services/networking/tftpd.nix
|
||||||
./services/networking/tox-bootstrapd.nix
|
./services/networking/tox-bootstrapd.nix
|
||||||
|
./services/networking/tox-node.nix
|
||||||
./services/networking/toxvpn.nix
|
./services/networking/toxvpn.nix
|
||||||
./services/networking/tvheadend.nix
|
./services/networking/tvheadend.nix
|
||||||
./services/networking/unbound.nix
|
./services/networking/unbound.nix
|
||||||
|
@ -749,6 +754,7 @@
|
||||||
./services/web-apps/icingaweb2/icingaweb2.nix
|
./services/web-apps/icingaweb2/icingaweb2.nix
|
||||||
./services/web-apps/icingaweb2/module-monitoring.nix
|
./services/web-apps/icingaweb2/module-monitoring.nix
|
||||||
./services/web-apps/mattermost.nix
|
./services/web-apps/mattermost.nix
|
||||||
|
./services/web-apps/miniflux.nix
|
||||||
./services/web-apps/nextcloud.nix
|
./services/web-apps/nextcloud.nix
|
||||||
./services/web-apps/nexus.nix
|
./services/web-apps/nexus.nix
|
||||||
./services/web-apps/pgpkeyserver-lite.nix
|
./services/web-apps/pgpkeyserver-lite.nix
|
||||||
|
|
|
@ -410,6 +410,8 @@ let
|
||||||
"password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass"}
|
"password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass"}
|
||||||
${optionalString config.services.samba.syncPasswordsByPam
|
${optionalString config.services.samba.syncPasswordsByPam
|
||||||
"password optional ${pkgs.samba}/lib/security/pam_smbpass.so nullok use_authtok try_first_pass"}
|
"password optional ${pkgs.samba}/lib/security/pam_smbpass.so nullok use_authtok try_first_pass"}
|
||||||
|
${optionalString cfg.enableGnomeKeyring
|
||||||
|
"password optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so use_authtok"}
|
||||||
|
|
||||||
# Session management.
|
# Session management.
|
||||||
${optionalString cfg.setEnvironment ''
|
${optionalString cfg.setEnvironment ''
|
||||||
|
|
|
@ -15,7 +15,7 @@ in {
|
||||||
enable = mkEnableOption "ympd, the MPD Web GUI";
|
enable = mkEnableOption "ympd, the MPD Web GUI";
|
||||||
|
|
||||||
webPort = mkOption {
|
webPort = mkOption {
|
||||||
type = types.string;
|
type = types.either types.str types.port; # string for backwards compat
|
||||||
default = "8080";
|
default = "8080";
|
||||||
description = "The port where ympd's web interface will be available.";
|
description = "The port where ympd's web interface will be available.";
|
||||||
example = "ssl://8080:/path/to/ssl-private-key.pem";
|
example = "ssl://8080:/path/to/ssl-private-key.pem";
|
||||||
|
@ -49,7 +49,7 @@ in {
|
||||||
systemd.services.ympd = {
|
systemd.services.ympd = {
|
||||||
description = "Standalone MPD Web GUI written in C";
|
description = "Standalone MPD Web GUI written in C";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig.ExecStart = "${pkgs.ympd}/bin/ympd --host ${cfg.mpd.host} --port ${toString cfg.mpd.port} --webport ${cfg.webPort} --user nobody";
|
serviceConfig.ExecStart = "${pkgs.ympd}/bin/ympd --host ${cfg.mpd.host} --port ${toString cfg.mpd.port} --webport ${toString cfg.webPort} --user nobody";
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
# dde-daemon
|
||||||
|
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
###### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
services.deepin.dde-daemon = {
|
||||||
|
|
||||||
|
enable = lib.mkEnableOption
|
||||||
|
"A daemon for handling Deepin Desktop Environment session settings";
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
###### implementation
|
||||||
|
|
||||||
|
config = lib.mkIf config.services.deepin.dde-daemon.enable {
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.deepin.dde-daemon ];
|
||||||
|
|
||||||
|
services.dbus.packages = [ pkgs.deepin.dde-daemon ];
|
||||||
|
|
||||||
|
systemd.packages = [ pkgs.deepin.dde-daemon ];
|
||||||
|
|
||||||
|
users.groups.dde-daemon = { };
|
||||||
|
|
||||||
|
users.users.dde-daemon = {
|
||||||
|
description = "Deepin daemon user";
|
||||||
|
group = "dde-daemon";
|
||||||
|
isSystemUser = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
# deepin-menu
|
||||||
|
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
###### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
services.deepin.deepin-menu = {
|
||||||
|
|
||||||
|
enable = lib.mkEnableOption
|
||||||
|
"DBus service for unified menus in Deepin Desktop Environment";
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
###### implementation
|
||||||
|
|
||||||
|
config = lib.mkIf config.services.deepin.deepin-menu.enable {
|
||||||
|
|
||||||
|
services.dbus.packages = [ pkgs.deepin.deepin-menu ];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,33 @@
|
||||||
|
# GLib Networking
|
||||||
|
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
###### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
services.gnome3.glib-networking = {
|
||||||
|
|
||||||
|
enable = mkEnableOption "network extensions for GLib";
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
###### implementation
|
||||||
|
|
||||||
|
config = mkIf config.services.gnome3.glib-networking.enable {
|
||||||
|
|
||||||
|
services.dbus.packages = [ pkgs.gnome3.glib-networking ];
|
||||||
|
|
||||||
|
systemd.packages = [ pkgs.gnome3.glib-networking ];
|
||||||
|
|
||||||
|
environment.variables.GIO_EXTRA_MODULES = [ "${pkgs.gnome3.glib-networking.out}/lib/gio/modules" ];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -35,6 +35,8 @@ with lib;
|
||||||
|
|
||||||
services.dbus.packages = [ pkgs.gnome3.gnome-keyring pkgs.gcr ];
|
services.dbus.packages = [ pkgs.gnome3.gnome-keyring pkgs.gcr ];
|
||||||
|
|
||||||
|
security.pam.services.login.enableGnomeKeyring = true;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,7 +54,7 @@ let
|
||||||
rule_files = map (promtoolCheck "check-rules" "rules") (cfg.ruleFiles ++ [
|
rule_files = map (promtoolCheck "check-rules" "rules") (cfg.ruleFiles ++ [
|
||||||
(pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg.rules))
|
(pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg.rules))
|
||||||
]);
|
]);
|
||||||
scrape_configs = cfg.scrapeConfigs;
|
scrape_configs = filterEmpty cfg.scrapeConfigs;
|
||||||
};
|
};
|
||||||
|
|
||||||
generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig;
|
generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig;
|
||||||
|
@ -81,7 +81,7 @@ let
|
||||||
rule_files = map (prom2toolCheck "check rules" "rules") (cfg2.ruleFiles ++ [
|
rule_files = map (prom2toolCheck "check rules" "rules") (cfg2.ruleFiles ++ [
|
||||||
(pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg2.rules))
|
(pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg2.rules))
|
||||||
]);
|
]);
|
||||||
scrape_configs = cfg2.scrapeConfigs;
|
scrape_configs = filterEmpty cfg2.scrapeConfigs;
|
||||||
alerting = optionalAttrs (cfg2.alertmanagerURL != []) {
|
alerting = optionalAttrs (cfg2.alertmanagerURL != []) {
|
||||||
alertmanagers = [{
|
alertmanagers = [{
|
||||||
static_configs = [{
|
static_configs = [{
|
||||||
|
@ -108,6 +108,21 @@ let
|
||||||
] ++
|
] ++
|
||||||
optional (cfg2.webExternalUrl != null) "--web.external-url=${cfg2.webExternalUrl}";
|
optional (cfg2.webExternalUrl != null) "--web.external-url=${cfg2.webExternalUrl}";
|
||||||
|
|
||||||
|
filterEmpty = filterAttrsListRecursive (_n: v: !(v == null || v == [] || v == {}));
|
||||||
|
filterAttrsListRecursive = pred: x:
|
||||||
|
if isAttrs x then
|
||||||
|
listToAttrs (
|
||||||
|
concatMap (name:
|
||||||
|
let v = x.${name}; in
|
||||||
|
if pred name v then [
|
||||||
|
(nameValuePair name (filterAttrsListRecursive pred v))
|
||||||
|
] else []
|
||||||
|
) (attrNames x)
|
||||||
|
)
|
||||||
|
else if isList x then
|
||||||
|
map (filterAttrsListRecursive pred) x
|
||||||
|
else x;
|
||||||
|
|
||||||
promTypes.globalConfig = types.submodule {
|
promTypes.globalConfig = types.submodule {
|
||||||
options = {
|
options = {
|
||||||
scrape_interval = mkOption {
|
scrape_interval = mkOption {
|
||||||
|
@ -237,6 +252,14 @@ let
|
||||||
Optional http login credentials for metrics scraping.
|
Optional http login credentials for metrics scraping.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
tls_config = mkOption {
|
||||||
|
type = types.nullOr promTypes.tls_config;
|
||||||
|
default = null;
|
||||||
|
apply = x: mapNullable _filter x;
|
||||||
|
description = ''
|
||||||
|
Configures the scrape request's TLS settings.
|
||||||
|
'';
|
||||||
|
};
|
||||||
dns_sd_configs = mkOption {
|
dns_sd_configs = mkOption {
|
||||||
type = types.listOf promTypes.dns_sd_config;
|
type = types.listOf promTypes.dns_sd_config;
|
||||||
default = [];
|
default = [];
|
||||||
|
@ -269,6 +292,14 @@ let
|
||||||
List of labeled target groups for this job.
|
List of labeled target groups for this job.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
ec2_sd_configs = mkOption {
|
||||||
|
type = types.listOf promTypes.ec2_sd_config;
|
||||||
|
default = [];
|
||||||
|
apply = x: map _filter x;
|
||||||
|
description = ''
|
||||||
|
List of EC2 service discovery configurations.
|
||||||
|
'';
|
||||||
|
};
|
||||||
relabel_configs = mkOption {
|
relabel_configs = mkOption {
|
||||||
type = types.listOf promTypes.relabel_config;
|
type = types.listOf promTypes.relabel_config;
|
||||||
default = [];
|
default = [];
|
||||||
|
@ -298,6 +329,96 @@ let
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
promTypes.ec2_sd_config = types.submodule {
|
||||||
|
options = {
|
||||||
|
region = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = ''
|
||||||
|
The AWS Region.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
endpoint = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Custom endpoint to be used.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
access_key = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
The AWS API key id. If blank, the environment variable
|
||||||
|
<literal>AWS_ACCESS_KEY_ID</literal> is used.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
secret_key = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
The AWS API key secret. If blank, the environment variable
|
||||||
|
<literal>AWS_SECRET_ACCESS_KEY</literal> is used.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
profile = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Named AWS profile used to connect to the API.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
role_arn = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
AWS Role ARN, an alternative to using AWS API keys.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
refresh_interval = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Refresh interval to re-read the instance list.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
port = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 80;
|
||||||
|
description = ''
|
||||||
|
The port to scrape metrics from. If using the public IP
|
||||||
|
address, this must instead be specified in the relabeling
|
||||||
|
rule.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
filters = mkOption {
|
||||||
|
type = types.nullOr (types.listOf promTypes.filter);
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Filters can be used optionally to filter the instance list by other criteria.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
promTypes.filter = types.submodule {
|
||||||
|
options = {
|
||||||
|
name = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = ''
|
||||||
|
See <link xlink:href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html">this list</link>
|
||||||
|
for the available filters.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
value = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
description = ''
|
||||||
|
Value of the filter.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
promTypes.dns_sd_config = types.submodule {
|
promTypes.dns_sd_config = types.submodule {
|
||||||
options = {
|
options = {
|
||||||
names = mkOption {
|
names = mkOption {
|
||||||
|
@ -431,6 +552,47 @@ let
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
promTypes.tls_config = types.submodule {
|
||||||
|
options = {
|
||||||
|
ca_file = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
CA certificate to validate API server certificate with.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
cert_file = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Certificate file for client cert authentication to the server.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
key_file = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Key file for client cert authentication to the server.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
server_name = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
ServerName extension to indicate the name of the server.
|
||||||
|
http://tools.ietf.org/html/rfc4366#section-3.1
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
insecure_skip_verify = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Disable validation of the server certificate.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
in {
|
in {
|
||||||
options = {
|
options = {
|
||||||
services.prometheus = {
|
services.prometheus = {
|
||||||
|
|
|
@ -0,0 +1,166 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.prometheus.pushgateway;
|
||||||
|
|
||||||
|
cmdlineArgs =
|
||||||
|
opt "web.listen-address" cfg.web.listen-address
|
||||||
|
++ opt "web.telemetry-path" cfg.web.telemetry-path
|
||||||
|
++ opt "web.external-url" cfg.web.external-url
|
||||||
|
++ opt "web.route-prefix" cfg.web.route-prefix
|
||||||
|
++ optional cfg.persistMetrics ''--persistence.file="/var/lib/${cfg.stateDir}/metrics"''
|
||||||
|
++ opt "persistence.interval" cfg.persistence.interval
|
||||||
|
++ opt "log.level" cfg.log.level
|
||||||
|
++ opt "log.format" cfg.log.format
|
||||||
|
++ cfg.extraFlags;
|
||||||
|
|
||||||
|
opt = k : v : optional (v != null) ''--${k}="${v}"'';
|
||||||
|
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
services.prometheus.pushgateway = {
|
||||||
|
enable = mkEnableOption "Prometheus Pushgateway";
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.prometheus-pushgateway;
|
||||||
|
defaultText = "pkgs.prometheus-pushgateway";
|
||||||
|
description = ''
|
||||||
|
Package that should be used for the prometheus pushgateway.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
web.listen-address = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Address to listen on for the web interface, API and telemetry.
|
||||||
|
|
||||||
|
<literal>null</literal> will default to <literal>:9091</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
web.telemetry-path = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Path under which to expose metrics.
|
||||||
|
|
||||||
|
<literal>null</literal> will default to <literal>/metrics</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
web.external-url = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
The URL under which Pushgateway is externally reachable.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
web.route-prefix = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Prefix for the internal routes of web endpoints.
|
||||||
|
|
||||||
|
Defaults to the path of
|
||||||
|
<option>services.prometheus.pushgateway.web.external-url</option>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
persistence.interval = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
example = "10m";
|
||||||
|
description = ''
|
||||||
|
The minimum interval at which to write out the persistence file.
|
||||||
|
|
||||||
|
<literal>null</literal> will default to <literal>5m</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
log.level = mkOption {
|
||||||
|
type = types.nullOr (types.enum ["debug" "info" "warn" "error" "fatal"]);
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
Only log messages with the given severity or above.
|
||||||
|
|
||||||
|
<literal>null</literal> will default to <literal>info</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
log.format = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
example = "logger:syslog?appname=bob&local=7";
|
||||||
|
description = ''
|
||||||
|
Set the log target and format.
|
||||||
|
|
||||||
|
<literal>null</literal> will default to <literal>logger:stderr</literal>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
extraFlags = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
description = ''
|
||||||
|
Extra commandline options when launching the Pushgateway.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
persistMetrics = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Whether to persist metrics to a file.
|
||||||
|
|
||||||
|
When enabled metrics will be saved to a file called
|
||||||
|
<literal>metrics</literal> in the directory
|
||||||
|
<literal>/var/lib/pushgateway</literal>. The directory below
|
||||||
|
<literal>/var/lib</literal> can be set using
|
||||||
|
<option>services.prometheus.pushgateway.stateDir</option>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
stateDir = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "pushgateway";
|
||||||
|
description = ''
|
||||||
|
Directory below <literal>/var/lib</literal> to store metrics.
|
||||||
|
|
||||||
|
This directory will be created automatically using systemd's
|
||||||
|
StateDirectory mechanism when
|
||||||
|
<option>services.prometheus.pushgateway.persistMetrics</option>
|
||||||
|
is enabled.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
assertions = [
|
||||||
|
{
|
||||||
|
assertion = !hasPrefix "/" cfg.stateDir;
|
||||||
|
message =
|
||||||
|
"The option services.prometheus.pushgateway.stateDir" +
|
||||||
|
" shouldn't be an absolute directory." +
|
||||||
|
" It should be a directory relative to /var/lib.";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
systemd.services.pushgateway = {
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
after = [ "network.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
Restart = "always";
|
||||||
|
DynamicUser = true;
|
||||||
|
ExecStart = "${cfg.package}/bin/pushgateway" +
|
||||||
|
optionalString (length cmdlineArgs != 0) (" \\\n " +
|
||||||
|
concatStringsSep " \\\n " cmdlineArgs);
|
||||||
|
StateDirectory = if cfg.persistMetrics then cfg.stateDir else null;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -26,4 +26,6 @@
|
||||||
}];
|
}];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
meta.maintainers = [ lib.maintainers.yarny ];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
ModemGroup = [ ''"any:.*"'' ];
|
ModemGroup = [ ''"any:0:.*"'' ];
|
||||||
ServerTracing = "0x78701";
|
ServerTracing = "0x78701";
|
||||||
SessionTracing = "0x78701";
|
SessionTracing = "0x78701";
|
||||||
UUCPLockDir = "/var/lock";
|
UUCPLockDir = "/var/lock";
|
||||||
|
|
|
@ -54,7 +54,7 @@ in
|
||||||
enable = mkEnableOption "strongSwan";
|
enable = mkEnableOption "strongSwan";
|
||||||
|
|
||||||
secrets = mkOption {
|
secrets = mkOption {
|
||||||
type = types.listOf types.path;
|
type = types.listOf types.str;
|
||||||
default = [];
|
default = [];
|
||||||
example = [ "/run/keys/ipsec-foo.secret" ];
|
example = [ "/run/keys/ipsec-foo.secret" ];
|
||||||
description = ''
|
description = ''
|
||||||
|
|
|
@ -0,0 +1,95 @@
|
||||||
|
{ lib, pkgs, config, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
pkg = pkgs.tox-node;
|
||||||
|
cfg = config.services.tox-node;
|
||||||
|
homeDir = "/var/lib/tox-node";
|
||||||
|
|
||||||
|
configFile = let
|
||||||
|
# fetchurl should be switched to getting this file from tox-node.src once
|
||||||
|
# the dpkg directory is in a release
|
||||||
|
src = pkgs.fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/tox-rs/tox-node/master/dpkg/config.yml";
|
||||||
|
sha256 = "1431wzpzm786mcvyzk1rp7ar418n45dr75hdggxvlm7pkpam31xa";
|
||||||
|
};
|
||||||
|
confJSON = pkgs.writeText "config.json" (
|
||||||
|
builtins.toJSON {
|
||||||
|
log-type = cfg.logType;
|
||||||
|
keys-file = cfg.keysFile;
|
||||||
|
udp-address = cfg.udpAddress;
|
||||||
|
tcp-addresses = cfg.tcpAddresses;
|
||||||
|
tcp-connections-limit = cfg.tcpConnectionLimit;
|
||||||
|
lan-discovery = cfg.lanDiscovery;
|
||||||
|
threads = cfg.threads;
|
||||||
|
motd = cfg.motd;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
in with pkgs; runCommand "config.yml" {} ''
|
||||||
|
${remarshal}/bin/remarshal -if yaml -of json ${src} -o src.json
|
||||||
|
${jq}/bin/jq -s '(.[0] | with_entries( select(.key == "bootstrap-nodes"))) * .[1]' src.json ${confJSON} > $out
|
||||||
|
'';
|
||||||
|
|
||||||
|
in {
|
||||||
|
options.services.tox-node = {
|
||||||
|
enable = mkEnableOption "Tox Node service";
|
||||||
|
|
||||||
|
logType = mkOption {
|
||||||
|
type = types.enum [ "Stderr" "Stdout" "Syslog" "None" ];
|
||||||
|
default = "Stderr";
|
||||||
|
description = "Logging implementation.";
|
||||||
|
};
|
||||||
|
keysFile = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "${homeDir}/keys";
|
||||||
|
description = "Path to the file where DHT keys are stored.";
|
||||||
|
};
|
||||||
|
udpAddress = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "0.0.0.0:33445";
|
||||||
|
description = "UDP address to run DHT node.";
|
||||||
|
};
|
||||||
|
tcpAddresses = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [ "0.0.0.0:33445" ];
|
||||||
|
description = "TCP addresses to run TCP relay.";
|
||||||
|
};
|
||||||
|
tcpConnectionLimit = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 8192;
|
||||||
|
description = "Maximum number of active TCP connections relay can hold";
|
||||||
|
};
|
||||||
|
lanDiscovery = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = true;
|
||||||
|
description = "Enable local network discovery.";
|
||||||
|
};
|
||||||
|
threads = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 1;
|
||||||
|
description = "Number of threads for execution";
|
||||||
|
};
|
||||||
|
motd = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "Hi from tox-rs! I'm up {{uptime}}. TCP: incoming {{tcp_packets_in}}, outgoing {{tcp_packets_out}}, UDP: incoming {{udp_packets_in}}, outgoing {{udp_packets_out}}";
|
||||||
|
description = "Message of the day";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
systemd.services.tox-node = {
|
||||||
|
description = "Tox Node";
|
||||||
|
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${pkg}/bin/tox-node config ${configFile}";
|
||||||
|
StateDirectory = "tox-node";
|
||||||
|
DynamicUser = true;
|
||||||
|
Restart = "always";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -151,7 +151,7 @@ in
|
||||||
'';
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
Configuration for ZNC, see
|
Configuration for ZNC, see
|
||||||
<literal>https://wiki.znc.in/Configuration</literal> for details. The
|
<link xlink:href="https://wiki.znc.in/Configuration"/> for details. The
|
||||||
Nix value declared here will be translated directly to the xml-like
|
Nix value declared here will be translated directly to the xml-like
|
||||||
format ZNC expects. This is much more flexible than the legacy options
|
format ZNC expects. This is much more flexible than the legacy options
|
||||||
under <option>services.znc.confOptions.*</option>, but also can't do
|
under <option>services.znc.confOptions.*</option>, but also can't do
|
||||||
|
|
|
@ -5,6 +5,9 @@ with lib;
|
||||||
let
|
let
|
||||||
cfg = config.services.kibana;
|
cfg = config.services.kibana;
|
||||||
|
|
||||||
|
ge7 = builtins.compareVersions cfg.package.version "7" >= 0;
|
||||||
|
lt6_6 = builtins.compareVersions cfg.package.version "6.6" < 0;
|
||||||
|
|
||||||
cfgFile = pkgs.writeText "kibana.json" (builtins.toJSON (
|
cfgFile = pkgs.writeText "kibana.json" (builtins.toJSON (
|
||||||
(filterAttrsRecursive (n: v: v != null) ({
|
(filterAttrsRecursive (n: v: v != null) ({
|
||||||
server.host = cfg.listenAddress;
|
server.host = cfg.listenAddress;
|
||||||
|
@ -16,6 +19,7 @@ let
|
||||||
kibana.defaultAppId = cfg.defaultAppId;
|
kibana.defaultAppId = cfg.defaultAppId;
|
||||||
|
|
||||||
elasticsearch.url = cfg.elasticsearch.url;
|
elasticsearch.url = cfg.elasticsearch.url;
|
||||||
|
elasticsearch.hosts = cfg.elasticsearch.hosts;
|
||||||
elasticsearch.username = cfg.elasticsearch.username;
|
elasticsearch.username = cfg.elasticsearch.username;
|
||||||
elasticsearch.password = cfg.elasticsearch.password;
|
elasticsearch.password = cfg.elasticsearch.password;
|
||||||
|
|
||||||
|
@ -67,9 +71,30 @@ in {
|
||||||
|
|
||||||
elasticsearch = {
|
elasticsearch = {
|
||||||
url = mkOption {
|
url = mkOption {
|
||||||
description = "Elasticsearch url";
|
description = ''
|
||||||
default = "http://localhost:9200";
|
Elasticsearch url.
|
||||||
type = types.str;
|
|
||||||
|
Defaults to <literal>"http://localhost:9200"</literal>.
|
||||||
|
|
||||||
|
Don't set this when using Kibana >= 7.0.0 because it will result in a
|
||||||
|
configuration error. Use <option>services.kibana.elasticsearch.hosts</option>
|
||||||
|
instead.
|
||||||
|
'';
|
||||||
|
default = null;
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
};
|
||||||
|
|
||||||
|
hosts = mkOption {
|
||||||
|
description = ''
|
||||||
|
The URLs of the Elasticsearch instances to use for all your queries.
|
||||||
|
All nodes listed here must be on the same cluster.
|
||||||
|
|
||||||
|
Defaults to <literal>[ "http://localhost:9200" ]</literal>.
|
||||||
|
|
||||||
|
This option is only valid when using kibana >= 6.6.
|
||||||
|
'';
|
||||||
|
default = null;
|
||||||
|
type = types.nullOr (types.listOf types.str);
|
||||||
};
|
};
|
||||||
|
|
||||||
username = mkOption {
|
username = mkOption {
|
||||||
|
@ -143,6 +168,19 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf (cfg.enable) {
|
config = mkIf (cfg.enable) {
|
||||||
|
assertions = [
|
||||||
|
{
|
||||||
|
assertion = ge7 -> cfg.elasticsearch.url == null;
|
||||||
|
message =
|
||||||
|
"The option services.kibana.elasticsearch.url has been removed when using kibana >= 7.0.0. " +
|
||||||
|
"Please use option services.kibana.elasticsearch.hosts instead.";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
assertion = lt6_6 -> cfg.elasticsearch.hosts == null;
|
||||||
|
message =
|
||||||
|
"The option services.kibana.elasticsearch.hosts is only valid for kibana >= 6.6.";
|
||||||
|
}
|
||||||
|
];
|
||||||
systemd.services.kibana = {
|
systemd.services.kibana = {
|
||||||
description = "Kibana Service";
|
description = "Kibana Service";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
|
@ -13,11 +13,19 @@ in
|
||||||
services.solr = {
|
services.solr = {
|
||||||
enable = mkEnableOption "Enables the solr service.";
|
enable = mkEnableOption "Enables the solr service.";
|
||||||
|
|
||||||
|
# default to the 8.x series not forcing major version upgrade of those on the 7.x series
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = types.package;
|
type = types.package;
|
||||||
default = pkgs.solr;
|
default = if versionAtLeast config.system.stateVersion "19.09"
|
||||||
|
then pkgs.solr_8
|
||||||
|
else pkgs.solr_7
|
||||||
|
;
|
||||||
defaultText = "pkgs.solr";
|
defaultText = "pkgs.solr";
|
||||||
description = "Which Solr package to use.";
|
description = ''
|
||||||
|
Which Solr package to use. This defaults to version 7.x if
|
||||||
|
<literal>system.stateVersion < 19.09</literal> and version 8.x
|
||||||
|
otherwise.
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
port = mkOption {
|
port = mkOption {
|
||||||
|
|
|
@ -0,0 +1,97 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.services.miniflux;
|
||||||
|
|
||||||
|
dbUser = "miniflux";
|
||||||
|
dbPassword = "miniflux";
|
||||||
|
dbHost = "localhost";
|
||||||
|
dbName = "miniflux";
|
||||||
|
|
||||||
|
defaultCredentials = pkgs.writeText "miniflux-admin-credentials" ''
|
||||||
|
ADMIN_USERNAME=admin
|
||||||
|
ADMIN_PASSWORD=password
|
||||||
|
'';
|
||||||
|
|
||||||
|
pgsu = "${pkgs.sudo}/bin/sudo -u ${config.services.postgresql.superUser}";
|
||||||
|
pgbin = "${config.services.postgresql.package}/bin";
|
||||||
|
preStart = pkgs.writeScript "miniflux-pre-start" ''
|
||||||
|
#!${pkgs.runtimeShell}
|
||||||
|
db_exists() {
|
||||||
|
[ "$(${pgsu} ${pgbin}/psql -Atc "select 1 from pg_database where datname='$1'")" == "1" ]
|
||||||
|
}
|
||||||
|
if ! db_exists "${dbName}"; then
|
||||||
|
${pgsu} ${pgbin}/psql postgres -c "CREATE ROLE ${dbUser} WITH LOGIN NOCREATEDB NOCREATEROLE ENCRYPTED PASSWORD '${dbPassword}'"
|
||||||
|
${pgsu} ${pgbin}/createdb --owner "${dbUser}" "${dbName}"
|
||||||
|
${pgsu} ${pgbin}/psql "${dbName}" -c "CREATE EXTENSION IF NOT EXISTS hstore"
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
in
|
||||||
|
|
||||||
|
{
|
||||||
|
options = {
|
||||||
|
services.miniflux = {
|
||||||
|
enable = mkEnableOption "miniflux";
|
||||||
|
|
||||||
|
config = mkOption {
|
||||||
|
type = types.attrsOf types.str;
|
||||||
|
example = literalExample ''
|
||||||
|
{
|
||||||
|
CLEANUP_FREQUENCY = "48";
|
||||||
|
LISTEN_ADDR = "localhost:8080";
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
description = ''
|
||||||
|
Configuration for Miniflux, refer to
|
||||||
|
<link xlink:href="http://docs.miniflux.app/en/latest/configuration.html"/>
|
||||||
|
for documentation on the supported values.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
adminCredentialsFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
default = null;
|
||||||
|
description = ''
|
||||||
|
File containing the ADMIN_USERNAME, default is "admin", and
|
||||||
|
ADMIN_PASSWORD (length >= 6), default is "password"; in the format of
|
||||||
|
an EnvironmentFile=, as described by systemd.exec(5).
|
||||||
|
'';
|
||||||
|
example = "/etc/nixos/miniflux-admin-credentials";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
|
||||||
|
services.miniflux.config = {
|
||||||
|
LISTEN_ADDR = mkDefault "localhost:8080";
|
||||||
|
DATABASE_URL = "postgresql://${dbUser}:${dbPassword}@${dbHost}/${dbName}?sslmode=disable";
|
||||||
|
RUN_MIGRATIONS = "1";
|
||||||
|
CREATE_ADMIN = "1";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.postgresql.enable = true;
|
||||||
|
|
||||||
|
systemd.services.miniflux = {
|
||||||
|
description = "Miniflux service";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
requires = [ "postgresql.service" ];
|
||||||
|
after = [ "network.target" "postgresql.service" ];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${pkgs.miniflux}/bin/miniflux";
|
||||||
|
ExecStartPre = "+${preStart}";
|
||||||
|
DynamicUser = true;
|
||||||
|
RuntimeDirectory = "miniflux";
|
||||||
|
RuntimeDirectoryMode = "0700";
|
||||||
|
EnvironmentFile = if isNull cfg.adminCredentialsFile
|
||||||
|
then defaultCredentials
|
||||||
|
else cfg.adminCredentialsFile;
|
||||||
|
};
|
||||||
|
|
||||||
|
environment = cfg.config;
|
||||||
|
};
|
||||||
|
environment.systemPackages = [ pkgs.miniflux ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -129,6 +129,7 @@ in {
|
||||||
services.gnome3.evince.enable = mkDefault true;
|
services.gnome3.evince.enable = mkDefault true;
|
||||||
services.gnome3.evolution-data-server.enable = true;
|
services.gnome3.evolution-data-server.enable = true;
|
||||||
services.gnome3.file-roller.enable = mkDefault true;
|
services.gnome3.file-roller.enable = mkDefault true;
|
||||||
|
services.gnome3.glib-networking.enable = true;
|
||||||
services.gnome3.gnome-disks.enable = mkDefault true;
|
services.gnome3.gnome-disks.enable = mkDefault true;
|
||||||
services.gnome3.gnome-documents.enable = mkDefault true;
|
services.gnome3.gnome-documents.enable = mkDefault true;
|
||||||
services.gnome3.gnome-keyring.enable = true;
|
services.gnome3.gnome-keyring.enable = true;
|
||||||
|
@ -205,7 +206,6 @@ in {
|
||||||
services.xserver.updateDbusEnvironment = true;
|
services.xserver.updateDbusEnvironment = true;
|
||||||
|
|
||||||
environment.variables.GIO_EXTRA_MODULES = [ "${lib.getLib pkgs.gnome3.dconf}/lib/gio/modules"
|
environment.variables.GIO_EXTRA_MODULES = [ "${lib.getLib pkgs.gnome3.dconf}/lib/gio/modules"
|
||||||
"${pkgs.gnome3.glib-networking.out}/lib/gio/modules"
|
|
||||||
"${pkgs.gnome3.gvfs}/lib/gio/modules" ];
|
"${pkgs.gnome3.gvfs}/lib/gio/modules" ];
|
||||||
environment.systemPackages = pkgs.gnome3.corePackages ++ cfg.sessionPath
|
environment.systemPackages = pkgs.gnome3.corePackages ++ cfg.sessionPath
|
||||||
++ (pkgs.gnome3.removePackagesByName pkgs.gnome3.optionalPackages config.environment.gnome3.excludePackages) ++ [
|
++ (pkgs.gnome3.removePackagesByName pkgs.gnome3.optionalPackages config.environment.gnome3.excludePackages) ++ [
|
||||||
|
|
|
@ -126,6 +126,7 @@ in
|
||||||
services.gnome3.evolution-data-server.enable = true;
|
services.gnome3.evolution-data-server.enable = true;
|
||||||
services.gnome3.file-roller.enable = mkDefault true;
|
services.gnome3.file-roller.enable = mkDefault true;
|
||||||
# TODO: gnome-keyring's xdg autostarts will still be in the environment (from elementary-session-settings) if disabled forcefully
|
# TODO: gnome-keyring's xdg autostarts will still be in the environment (from elementary-session-settings) if disabled forcefully
|
||||||
|
services.gnome3.glib-networking.enable = true;
|
||||||
services.gnome3.gnome-keyring.enable = true;
|
services.gnome3.gnome-keyring.enable = true;
|
||||||
services.gnome3.gnome-settings-daemon.enable = true;
|
services.gnome3.gnome-settings-daemon.enable = true;
|
||||||
services.gnome3.gnome-settings-daemon.package = pkgs.pantheon.elementary-settings-daemon;
|
services.gnome3.gnome-settings-daemon.package = pkgs.pantheon.elementary-settings-daemon;
|
||||||
|
@ -153,7 +154,6 @@ in
|
||||||
|
|
||||||
environment.variables.GIO_EXTRA_MODULES = [
|
environment.variables.GIO_EXTRA_MODULES = [
|
||||||
"${lib.getLib pkgs.gnome3.dconf}/lib/gio/modules"
|
"${lib.getLib pkgs.gnome3.dconf}/lib/gio/modules"
|
||||||
"${pkgs.gnome3.glib-networking.out}/lib/gio/modules"
|
|
||||||
"${pkgs.gnome3.gvfs}/lib/gio/modules"
|
"${pkgs.gnome3.gvfs}/lib/gio/modules"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -208,76 +208,25 @@ in
|
||||||
session optional pam_permit.so
|
session optional pam_permit.so
|
||||||
'';
|
'';
|
||||||
|
|
||||||
gdm.text = ''
|
|
||||||
auth requisite pam_nologin.so
|
|
||||||
auth required pam_env.so envfile=${config.system.build.pamEnvironment}
|
|
||||||
|
|
||||||
auth required pam_succeed_if.so uid >= 1000 quiet
|
|
||||||
auth optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so
|
|
||||||
auth ${if config.security.pam.enableEcryptfs then "required" else "sufficient"} pam_unix.so nullok likeauth
|
|
||||||
${optionalString config.security.pam.enableEcryptfs
|
|
||||||
"auth required ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap"}
|
|
||||||
|
|
||||||
${optionalString (! config.security.pam.enableEcryptfs)
|
|
||||||
"auth required pam_deny.so"}
|
|
||||||
|
|
||||||
account sufficient pam_unix.so
|
|
||||||
|
|
||||||
password requisite pam_unix.so nullok sha512
|
|
||||||
${optionalString config.security.pam.enableEcryptfs
|
|
||||||
"password optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
|
|
||||||
|
|
||||||
session required pam_env.so envfile=${config.system.build.pamEnvironment}
|
|
||||||
session required pam_unix.so
|
|
||||||
${optionalString config.security.pam.enableEcryptfs
|
|
||||||
"session optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
|
|
||||||
session required pam_loginuid.so
|
|
||||||
session optional ${pkgs.systemd}/lib/security/pam_systemd.so
|
|
||||||
session optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start
|
|
||||||
'';
|
|
||||||
|
|
||||||
gdm-password.text = ''
|
gdm-password.text = ''
|
||||||
auth requisite pam_nologin.so
|
auth substack login
|
||||||
auth required pam_env.so envfile=${config.system.build.pamEnvironment}
|
account include login
|
||||||
|
password substack login
|
||||||
auth required pam_succeed_if.so uid >= 1000 quiet
|
session include login
|
||||||
auth optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so
|
|
||||||
auth ${if config.security.pam.enableEcryptfs then "required" else "sufficient"} pam_unix.so nullok likeauth
|
|
||||||
${optionalString config.security.pam.enableEcryptfs
|
|
||||||
"auth required ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap"}
|
|
||||||
${optionalString (! config.security.pam.enableEcryptfs)
|
|
||||||
"auth required pam_deny.so"}
|
|
||||||
|
|
||||||
account sufficient pam_unix.so
|
|
||||||
|
|
||||||
password requisite pam_unix.so nullok sha512
|
|
||||||
${optionalString config.security.pam.enableEcryptfs
|
|
||||||
"password optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
|
|
||||||
|
|
||||||
session required pam_env.so envfile=${config.system.build.pamEnvironment}
|
|
||||||
session required pam_unix.so
|
|
||||||
${optionalString config.security.pam.enableEcryptfs
|
|
||||||
"session optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
|
|
||||||
session required pam_loginuid.so
|
|
||||||
session optional ${pkgs.systemd}/lib/security/pam_systemd.so
|
|
||||||
session optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
gdm-autologin.text = ''
|
gdm-autologin.text = ''
|
||||||
auth requisite pam_nologin.so
|
auth requisite pam_nologin.so
|
||||||
|
|
||||||
auth required pam_succeed_if.so uid >= 1000 quiet
|
auth required pam_succeed_if.so uid >= 1000 quiet
|
||||||
auth required pam_permit.so
|
auth required pam_permit.so
|
||||||
|
|
||||||
account sufficient pam_unix.so
|
account sufficient pam_unix.so
|
||||||
|
|
||||||
password requisite pam_unix.so nullok sha512
|
password requisite pam_unix.so nullok sha512
|
||||||
|
|
||||||
session optional pam_keyinit.so revoke
|
session optional pam_keyinit.so revoke
|
||||||
session required pam_env.so envfile=${config.system.build.pamEnvironment}
|
session include login
|
||||||
session required pam_unix.so
|
|
||||||
session required pam_loginuid.so
|
|
||||||
session optional ${pkgs.systemd}/lib/security/pam_systemd.so
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -11,7 +11,9 @@ let
|
||||||
|
|
||||||
udev = config.systemd.package;
|
udev = config.systemd.package;
|
||||||
|
|
||||||
modulesTree = config.system.modulesTree;
|
kernel-name = config.boot.kernelPackages.kernel.name or "kernel";
|
||||||
|
|
||||||
|
modulesTree = config.system.modulesTree.override { name = kernel-name + "-modules"; };
|
||||||
firmware = config.hardware.firmware;
|
firmware = config.hardware.firmware;
|
||||||
|
|
||||||
|
|
||||||
|
@ -290,6 +292,7 @@ let
|
||||||
# The closure of the init script of boot stage 1 is what we put in
|
# The closure of the init script of boot stage 1 is what we put in
|
||||||
# the initial RAM disk.
|
# the initial RAM disk.
|
||||||
initialRamdisk = pkgs.makeInitrd {
|
initialRamdisk = pkgs.makeInitrd {
|
||||||
|
name = "initrd-${kernel-name}";
|
||||||
inherit (config.boot.initrd) compressor prepend;
|
inherit (config.boot.initrd) compressor prepend;
|
||||||
|
|
||||||
contents =
|
contents =
|
||||||
|
|
|
@ -138,6 +138,7 @@ in
|
||||||
matrix-synapse = handleTest ./matrix-synapse.nix {};
|
matrix-synapse = handleTest ./matrix-synapse.nix {};
|
||||||
memcached = handleTest ./memcached.nix {};
|
memcached = handleTest ./memcached.nix {};
|
||||||
mesos = handleTest ./mesos.nix {};
|
mesos = handleTest ./mesos.nix {};
|
||||||
|
miniflux = handleTest ./miniflux.nix {};
|
||||||
minio = handleTest ./minio.nix {};
|
minio = handleTest ./minio.nix {};
|
||||||
misc = handleTest ./misc.nix {};
|
misc = handleTest ./misc.nix {};
|
||||||
mongodb = handleTest ./mongodb.nix {};
|
mongodb = handleTest ./mongodb.nix {};
|
||||||
|
|
|
@ -12,7 +12,9 @@ with pkgs.lib;
|
||||||
let
|
let
|
||||||
esUrl = "http://localhost:9200";
|
esUrl = "http://localhost:9200";
|
||||||
|
|
||||||
mkElkTest = name : elk : makeTest {
|
mkElkTest = name : elk :
|
||||||
|
let elasticsearchGe7 = builtins.compareVersions elk.elasticsearch.version "7" >= 0;
|
||||||
|
in makeTest {
|
||||||
inherit name;
|
inherit name;
|
||||||
meta = with pkgs.stdenv.lib.maintainers; {
|
meta = with pkgs.stdenv.lib.maintainers; {
|
||||||
maintainers = [ eelco offline basvandijk ];
|
maintainers = [ eelco offline basvandijk ];
|
||||||
|
@ -69,11 +71,11 @@ let
|
||||||
kibana = {
|
kibana = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = elk.kibana;
|
package = elk.kibana;
|
||||||
elasticsearch.url = esUrl;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
elasticsearch-curator = {
|
elasticsearch-curator = {
|
||||||
enable = true;
|
# The current version of curator (5.6) doesn't support elasticsearch >= 7.0.0.
|
||||||
|
enable = !elasticsearchGe7;
|
||||||
actionYAML = ''
|
actionYAML = ''
|
||||||
---
|
---
|
||||||
actions:
|
actions:
|
||||||
|
@ -126,7 +128,7 @@ let
|
||||||
# See if logstash messages arive in elasticsearch.
|
# See if logstash messages arive in elasticsearch.
|
||||||
$one->waitUntilSucceeds("curl --silent --show-error '${esUrl}/_search' -H 'Content-Type: application/json' -d '{\"query\" : { \"match\" : { \"message\" : \"flowers\"}}}' | jq .hits.total | grep -v 0");
|
$one->waitUntilSucceeds("curl --silent --show-error '${esUrl}/_search' -H 'Content-Type: application/json' -d '{\"query\" : { \"match\" : { \"message\" : \"flowers\"}}}' | jq .hits.total | grep -v 0");
|
||||||
$one->waitUntilSucceeds("curl --silent --show-error '${esUrl}/_search' -H 'Content-Type: application/json' -d '{\"query\" : { \"match\" : { \"message\" : \"dragons\"}}}' | jq .hits.total | grep 0");
|
$one->waitUntilSucceeds("curl --silent --show-error '${esUrl}/_search' -H 'Content-Type: application/json' -d '{\"query\" : { \"match\" : { \"message\" : \"dragons\"}}}' | jq .hits.total | grep 0");
|
||||||
|
'' + optionalString (!elasticsearchGe7) ''
|
||||||
# Test elasticsearch-curator.
|
# Test elasticsearch-curator.
|
||||||
$one->systemctl("stop logstash");
|
$one->systemctl("stop logstash");
|
||||||
$one->systemctl("start elasticsearch-curator");
|
$one->systemctl("start elasticsearch-curator");
|
||||||
|
@ -151,4 +153,16 @@ in mapAttrs mkElkTest {
|
||||||
logstash = pkgs.logstash6-oss;
|
logstash = pkgs.logstash6-oss;
|
||||||
kibana = pkgs.kibana6-oss;
|
kibana = pkgs.kibana6-oss;
|
||||||
};
|
};
|
||||||
|
"ELK-7" =
|
||||||
|
if enableUnfree
|
||||||
|
then {
|
||||||
|
elasticsearch = pkgs.elasticsearch7;
|
||||||
|
logstash = pkgs.logstash7;
|
||||||
|
kibana = pkgs.kibana7;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
elasticsearch = pkgs.elasticsearch7-oss;
|
||||||
|
logstash = pkgs.logstash7-oss;
|
||||||
|
kibana = pkgs.kibana7-oss;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
import ./make-test.nix ({ pkgs, lib, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
port = 3142;
|
||||||
|
username = "alice";
|
||||||
|
password = "correcthorsebatterystaple";
|
||||||
|
defaultPort = 8080;
|
||||||
|
defaultUsername = "admin";
|
||||||
|
defaultPassword = "password";
|
||||||
|
in
|
||||||
|
with lib;
|
||||||
|
{
|
||||||
|
name = "miniflux";
|
||||||
|
meta.maintainers = with pkgs.stdenv.lib.maintainers; [ bricewge ];
|
||||||
|
|
||||||
|
nodes = {
|
||||||
|
default =
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
services.miniflux.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
customized =
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
services.miniflux = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
CLEANUP_FREQUENCY = "48";
|
||||||
|
LISTEN_ADDR = "localhost:${toString port}";
|
||||||
|
};
|
||||||
|
adminCredentialsFile = pkgs.writeText "admin-credentials" ''
|
||||||
|
ADMIN_USERNAME=${username}
|
||||||
|
ADMIN_PASSWORD=${password}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
testScript = ''
|
||||||
|
startAll;
|
||||||
|
|
||||||
|
$default->waitForUnit('miniflux.service');
|
||||||
|
$default->waitForOpenPort(${toString defaultPort});
|
||||||
|
$default->succeed("curl --fail 'http://localhost:${toString defaultPort}/healthcheck' | grep -q OK");
|
||||||
|
$default->succeed("curl 'http://localhost:${toString defaultPort}/v1/me' -u '${defaultUsername}:${defaultPassword}' -H Content-Type:application/json | grep -q '\"is_admin\":true'");
|
||||||
|
|
||||||
|
$customized->waitForUnit('miniflux.service');
|
||||||
|
$customized->waitForOpenPort(${toString port});
|
||||||
|
$customized->succeed("curl --fail 'http://localhost:${toString port}/healthcheck' | grep -q OK");
|
||||||
|
$customized->succeed("curl 'http://localhost:${toString port}/v1/me' -u '${username}:${password}' -H Content-Type:application/json | grep -q '\"is_admin\":true'");
|
||||||
|
'';
|
||||||
|
})
|
|
@ -3,15 +3,29 @@ import ./make-test.nix {
|
||||||
|
|
||||||
nodes = {
|
nodes = {
|
||||||
one = { pkgs, ... }: {
|
one = { pkgs, ... }: {
|
||||||
|
environment.systemPackages = [ pkgs.jq ];
|
||||||
services.prometheus2 = {
|
services.prometheus2 = {
|
||||||
enable = true;
|
enable = true;
|
||||||
scrapeConfigs = [{
|
scrapeConfigs = [
|
||||||
job_name = "prometheus";
|
{
|
||||||
static_configs = [{
|
job_name = "prometheus";
|
||||||
targets = [ "127.0.0.1:9090" ];
|
static_configs = [
|
||||||
labels = { instance = "localhost"; };
|
{
|
||||||
}];
|
targets = [ "127.0.0.1:9090" ];
|
||||||
}];
|
labels = { instance = "localhost"; };
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
job_name = "pushgateway";
|
||||||
|
scrape_interval = "1s";
|
||||||
|
static_configs = [
|
||||||
|
{
|
||||||
|
targets = [ "127.0.0.1:9091" ];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
rules = [
|
rules = [
|
||||||
''
|
''
|
||||||
groups:
|
groups:
|
||||||
|
@ -22,6 +36,12 @@ import ./make-test.nix {
|
||||||
''
|
''
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
services.prometheus.pushgateway = {
|
||||||
|
enable = true;
|
||||||
|
persistMetrics = true;
|
||||||
|
persistence.interval = "1s";
|
||||||
|
stateDir = "prometheus-pushgateway";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -30,5 +50,18 @@ import ./make-test.nix {
|
||||||
$one->waitForUnit("prometheus2.service");
|
$one->waitForUnit("prometheus2.service");
|
||||||
$one->waitForOpenPort(9090);
|
$one->waitForOpenPort(9090);
|
||||||
$one->succeed("curl -s http://127.0.0.1:9090/metrics");
|
$one->succeed("curl -s http://127.0.0.1:9090/metrics");
|
||||||
|
|
||||||
|
# Let's test if pushing a metric to the pushgateway succeeds
|
||||||
|
# and whether that metric gets ingested by prometheus.
|
||||||
|
$one->waitForUnit("pushgateway.service");
|
||||||
|
$one->succeed(
|
||||||
|
"echo 'some_metric 3.14' | " .
|
||||||
|
"curl --data-binary \@- http://127.0.0.1:9091/metrics/job/some_job");
|
||||||
|
$one->waitUntilSucceeds(
|
||||||
|
"curl -sf 'http://127.0.0.1:9090/api/v1/query?query=some_metric' " .
|
||||||
|
"| jq '.data.result[0].value[1]' | grep '\"3.14\"'");
|
||||||
|
|
||||||
|
# Let's test if the pushgateway persists metrics to the configured location.
|
||||||
|
$one->waitUntilSucceeds("test -e /var/lib/prometheus-pushgateway/metrics");
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,47 +1,65 @@
|
||||||
import ./make-test.nix ({ pkgs, lib, ... }:
|
{ system ? builtins.currentSystem,
|
||||||
|
config ? {},
|
||||||
|
pkgs ? import ../.. { inherit system config; }
|
||||||
|
}:
|
||||||
|
|
||||||
|
with import ../lib/testing.nix { inherit system pkgs; };
|
||||||
|
with pkgs.lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
solrTest = package: makeTest {
|
||||||
|
machine =
|
||||||
|
{ config, pkgs, ... }:
|
||||||
|
{
|
||||||
|
# Ensure the virtual machine has enough memory for Solr to avoid the following error:
|
||||||
|
#
|
||||||
|
# OpenJDK 64-Bit Server VM warning:
|
||||||
|
# INFO: os::commit_memory(0x00000000e8000000, 402653184, 0)
|
||||||
|
# failed; error='Cannot allocate memory' (errno=12)
|
||||||
|
#
|
||||||
|
# There is insufficient memory for the Java Runtime Environment to continue.
|
||||||
|
# Native memory allocation (mmap) failed to map 402653184 bytes for committing reserved memory.
|
||||||
|
virtualisation.memorySize = 2000;
|
||||||
|
|
||||||
|
services.solr.enable = true;
|
||||||
|
services.solr.package = package;
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
startAll;
|
||||||
|
|
||||||
|
$machine->waitForUnit('solr.service');
|
||||||
|
$machine->waitForOpenPort('8983');
|
||||||
|
$machine->succeed('curl --fail http://localhost:8983/solr/');
|
||||||
|
|
||||||
|
# adapted from pkgs.solr/examples/films/README.txt
|
||||||
|
$machine->succeed('sudo -u solr solr create -c films');
|
||||||
|
$machine->succeed(q(curl http://localhost:8983/solr/films/schema -X POST -H 'Content-type:application/json' --data-binary '{
|
||||||
|
"add-field" : {
|
||||||
|
"name":"name",
|
||||||
|
"type":"text_general",
|
||||||
|
"multiValued":false,
|
||||||
|
"stored":true
|
||||||
|
},
|
||||||
|
"add-field" : {
|
||||||
|
"name":"initial_release_date",
|
||||||
|
"type":"pdate",
|
||||||
|
"stored":true
|
||||||
|
}
|
||||||
|
}')) =~ /"status":0/ or die;
|
||||||
|
$machine->succeed('sudo -u solr post -c films ${pkgs.solr}/example/films/films.json');
|
||||||
|
$machine->succeed('curl http://localhost:8983/solr/films/query?q=name:batman') =~ /"name":"Batman Begins"/ or die;
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in
|
||||||
{
|
{
|
||||||
name = "solr";
|
solr_7 = solrTest pkgs.solr_7 // {
|
||||||
meta.maintainers = [ lib.maintainers.aanderse ];
|
name = "solr_7";
|
||||||
|
meta.maintainers = [ lib.maintainers.aanderse ];
|
||||||
|
};
|
||||||
|
|
||||||
machine =
|
solr_8 = solrTest pkgs.solr_8 // {
|
||||||
{ config, pkgs, ... }:
|
name = "solr_8";
|
||||||
{
|
meta.maintainers = [ lib.maintainers.aanderse ];
|
||||||
# Ensure the virtual machine has enough memory for Solr to avoid the following error:
|
};
|
||||||
#
|
}
|
||||||
# OpenJDK 64-Bit Server VM warning:
|
|
||||||
# INFO: os::commit_memory(0x00000000e8000000, 402653184, 0)
|
|
||||||
# failed; error='Cannot allocate memory' (errno=12)
|
|
||||||
#
|
|
||||||
# There is insufficient memory for the Java Runtime Environment to continue.
|
|
||||||
# Native memory allocation (mmap) failed to map 402653184 bytes for committing reserved memory.
|
|
||||||
virtualisation.memorySize = 2000;
|
|
||||||
|
|
||||||
services.solr.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
testScript = ''
|
|
||||||
startAll;
|
|
||||||
|
|
||||||
$machine->waitForUnit('solr.service');
|
|
||||||
$machine->waitForOpenPort('8983');
|
|
||||||
$machine->succeed('curl --fail http://localhost:8983/solr/');
|
|
||||||
|
|
||||||
# adapted from pkgs.solr/examples/films/README.txt
|
|
||||||
$machine->succeed('sudo -u solr solr create -c films');
|
|
||||||
$machine->succeed(q(curl http://localhost:8983/solr/films/schema -X POST -H 'Content-type:application/json' --data-binary '{
|
|
||||||
"add-field" : {
|
|
||||||
"name":"name",
|
|
||||||
"type":"text_general",
|
|
||||||
"multiValued":false,
|
|
||||||
"stored":true
|
|
||||||
},
|
|
||||||
"add-field" : {
|
|
||||||
"name":"initial_release_date",
|
|
||||||
"type":"pdate",
|
|
||||||
"stored":true
|
|
||||||
}
|
|
||||||
}')) =~ /"status":0/ or die;
|
|
||||||
$machine->succeed('sudo -u solr post -c films ${pkgs.solr}/example/films/films.json');
|
|
||||||
$machine->succeed('curl http://localhost:8983/solr/films/query?q=name:batman') =~ /"name":"Batman Begins"/ or die;
|
|
||||||
'';
|
|
||||||
})
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "0.12.8.0";
|
version = "0.12.9.0";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "aeon-${version}";
|
name = "aeon-${version}";
|
||||||
|
@ -14,7 +14,7 @@ stdenv.mkDerivation {
|
||||||
repo = "aeon";
|
repo = "aeon";
|
||||||
rev = "v${version}-aeon";
|
rev = "v${version}-aeon";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
sha256 = "1qmlz820mjs0b60d7i90lxcwwxmsdy6swq67v6n8mbb79zmcx8ii";
|
sha256 = "194nxf8c8ihkmdsxyhkhrxc2xiinipifk0ng1rmxiiyr2gjgxzga";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkgconfig git doxygen graphviz ];
|
nativeBuildInputs = [ cmake pkgconfig git doxygen graphviz ];
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ callPackage, boost155, boost165, openssl_1_1, haskellPackages, darwin, libsForQt5, miniupnpc_2, python3, buildGo110Package }:
|
{ callPackage, boost155, boost165, openssl_1_1, haskellPackages, darwin, libsForQt5, libsForQt59, miniupnpc_2, python3, buildGo110Package }:
|
||||||
|
|
||||||
rec {
|
rec {
|
||||||
|
|
||||||
|
@ -75,6 +75,9 @@ rec {
|
||||||
namecoin = callPackage ./namecoin.nix { withGui = true; };
|
namecoin = callPackage ./namecoin.nix { withGui = true; };
|
||||||
namecoind = callPackage ./namecoin.nix { withGui = false; };
|
namecoind = callPackage ./namecoin.nix { withGui = false; };
|
||||||
|
|
||||||
|
pivx = libsForQt59.callPackage ./pivx.nix { withGui = true; };
|
||||||
|
pivxd = callPackage ./pivx.nix { withGui = false; };
|
||||||
|
|
||||||
ethabi = callPackage ./ethabi.nix { };
|
ethabi = callPackage ./ethabi.nix { };
|
||||||
|
|
||||||
stellar-core = callPackage ./stellar-core.nix { };
|
stellar-core = callPackage ./stellar-core.nix { };
|
||||||
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
{ fetchFromGitHub, stdenv, pkgconfig, autoreconfHook
|
||||||
|
, openssl, db48, boost, zlib, miniupnpc, gmp
|
||||||
|
, qrencode, glib, protobuf, yasm, libevent
|
||||||
|
, utillinux, qtbase ? null, qttools ? null
|
||||||
|
, enableUpnp ? false
|
||||||
|
, disableWallet ? false
|
||||||
|
, disableDaemon ? false
|
||||||
|
, withGui ? false }:
|
||||||
|
|
||||||
|
with stdenv.lib;
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "pivx-${version}";
|
||||||
|
version = "3.2.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "PIVX-Project";
|
||||||
|
repo= "PIVX";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "1sym6254vhq8qqpxq9qhy10m5167v7x93kqaj1gixc1vwwbxyazy";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkgconfig autoreconfHook ];
|
||||||
|
buildInputs = [ glib gmp openssl db48 yasm boost zlib libevent miniupnpc protobuf utillinux ]
|
||||||
|
++ optionals withGui [ qtbase qttools qrencode ];
|
||||||
|
|
||||||
|
configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
|
||||||
|
++ optional enableUpnp "--enable-upnp-default"
|
||||||
|
++ optional disableWallet "--disable-wallet"
|
||||||
|
++ optional disableDaemon "--disable-daemon"
|
||||||
|
++ optionals withGui [ "--with-gui=yes"
|
||||||
|
"--with-qt-bindir=${qtbase.dev}/bin:${qttools.dev}/bin"
|
||||||
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
doChecks = true;
|
||||||
|
postBuild = ''
|
||||||
|
mkdir -p $out/share/applications $out/share/icons
|
||||||
|
cp contrib/debian/pivx-qt.desktop $out/share/applications/
|
||||||
|
cp share/pixmaps/*128.png $out/share/icons/
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "An open source crypto-currency focused on fast private transactions";
|
||||||
|
longDescription = ''
|
||||||
|
PIVX is an MIT licensed, open source, blockchain-based cryptocurrency with
|
||||||
|
ultra fast transactions, low fees, high network decentralization, and
|
||||||
|
Zero Knowledge cryptography proofs for industry-leading transaction anonymity.
|
||||||
|
'';
|
||||||
|
license = licenses.mit;
|
||||||
|
homepage = https://www.dash.org;
|
||||||
|
maintainers = with maintainers; [ wucke13 ];
|
||||||
|
platforms = platforms.unix;
|
||||||
|
};
|
||||||
|
}
|
|
@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
|
||||||
patchShebangs ./tools/
|
patchShebangs ./tools/
|
||||||
'';
|
'';
|
||||||
|
|
||||||
configureFlags = [
|
wafConfigureFlags = [
|
||||||
"--optimize"
|
"--optimize"
|
||||||
"--docs"
|
"--docs"
|
||||||
"--with-backends=jack,alsa,dummy"
|
"--with-backends=jack,alsa,dummy"
|
||||||
|
|
|
@ -90,7 +90,7 @@ stdenv.mkDerivation rec {
|
||||||
production, performance and DJing, with a focus on flexible
|
production, performance and DJing, with a focus on flexible
|
||||||
editing tools and a super-fast workflow.
|
editing tools and a super-fast workflow.
|
||||||
'';
|
'';
|
||||||
homepage = http://www.bitwig.com/;
|
homepage = https://www.bitwig.com/;
|
||||||
license = licenses.unfree;
|
license = licenses.unfree;
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
maintainers = with maintainers; [ michalrus mrVanDalo ];
|
maintainers = with maintainers; [ michalrus mrVanDalo ];
|
||||||
|
|
|
@ -1,4 +1,10 @@
|
||||||
{ config, stdenv, fetchurl, intltool, pkgconfig, jansson
|
{ config, stdenv, fetchFromGitHub
|
||||||
|
, autoconf
|
||||||
|
, automake
|
||||||
|
, libtool
|
||||||
|
, intltool
|
||||||
|
, pkgconfig
|
||||||
|
, jansson
|
||||||
# deadbeef can use either gtk2 or gtk3
|
# deadbeef can use either gtk2 or gtk3
|
||||||
, gtk2Support ? false, gtk2 ? null
|
, gtk2Support ? false, gtk2 ? null
|
||||||
, gtk3Support ? true, gtk3 ? null, gsettings-desktop-schemas ? null, wrapGAppsHook ? null
|
, gtk3Support ? true, gtk3 ? null, gsettings-desktop-schemas ? null, wrapGAppsHook ? null
|
||||||
|
@ -9,7 +15,7 @@
|
||||||
, wavSupport ? true, libsndfile ? null
|
, wavSupport ? true, libsndfile ? null
|
||||||
, cdaSupport ? true, libcdio ? null, libcddb ? null
|
, cdaSupport ? true, libcdio ? null, libcddb ? null
|
||||||
, aacSupport ? true, faad2 ? null
|
, aacSupport ? true, faad2 ? null
|
||||||
, midiSupport ? false, wildmidi ? null
|
, opusSupport ? true, opusfile ? null
|
||||||
, wavpackSupport ? false, wavpack ? null
|
, wavpackSupport ? false, wavpack ? null
|
||||||
, ffmpegSupport ? false, ffmpeg ? null
|
, ffmpegSupport ? false, ffmpeg ? null
|
||||||
, apeSupport ? true, yasm ? null
|
, apeSupport ? true, yasm ? null
|
||||||
|
@ -37,6 +43,7 @@ assert flacSupport -> flac != null;
|
||||||
assert wavSupport -> libsndfile != null;
|
assert wavSupport -> libsndfile != null;
|
||||||
assert cdaSupport -> (libcdio != null && libcddb != null);
|
assert cdaSupport -> (libcdio != null && libcddb != null);
|
||||||
assert aacSupport -> faad2 != null;
|
assert aacSupport -> faad2 != null;
|
||||||
|
assert opusSupport -> opusfile != null;
|
||||||
assert zipSupport -> libzip != null;
|
assert zipSupport -> libzip != null;
|
||||||
assert ffmpegSupport -> ffmpeg != null;
|
assert ffmpegSupport -> ffmpeg != null;
|
||||||
assert apeSupport -> yasm != null;
|
assert apeSupport -> yasm != null;
|
||||||
|
@ -47,19 +54,27 @@ assert alsaSupport -> alsaLib != null;
|
||||||
assert pulseSupport -> libpulseaudio != null;
|
assert pulseSupport -> libpulseaudio != null;
|
||||||
assert resamplerSupport -> libsamplerate != null;
|
assert resamplerSupport -> libsamplerate != null;
|
||||||
assert overloadSupport -> zlib != null;
|
assert overloadSupport -> zlib != null;
|
||||||
assert midiSupport -> wildmidi != null;
|
|
||||||
assert wavpackSupport -> wavpack != null;
|
assert wavpackSupport -> wavpack != null;
|
||||||
assert remoteSupport -> curl != null;
|
assert remoteSupport -> curl != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "deadbeef-${version}";
|
pname = "deadbeef";
|
||||||
version = "0.7.2";
|
version = "1.8.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "mirror://sourceforge/project/deadbeef/${name}.tar.bz2";
|
owner = "DeaDBeeF-Player";
|
||||||
sha256 = "1168hgr1nf27pf24n1rlfh1kx1wiscwhpbhqw0rprwy203gsnqwa";
|
repo = "deadbeef";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "126i5qlkpv7pvi1mmc9y0jhqs6jjspsj7j615n2ddvsb2jsps81c";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix broken symbol name
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/59187#issuecomment-480977993
|
||||||
|
# will be fixed in deadbeef 1.8.1
|
||||||
|
./fix-wildmidi.patch
|
||||||
|
];
|
||||||
|
|
||||||
buildInputs = with stdenv.lib; [ jansson ]
|
buildInputs = with stdenv.lib; [ jansson ]
|
||||||
++ optional gtk2Support gtk2
|
++ optional gtk2Support gtk2
|
||||||
++ optionals gtk3Support [ gtk3 gsettings-desktop-schemas ]
|
++ optionals gtk3Support [ gtk3 gsettings-desktop-schemas ]
|
||||||
|
@ -69,6 +84,7 @@ stdenv.mkDerivation rec {
|
||||||
++ optional wavSupport libsndfile
|
++ optional wavSupport libsndfile
|
||||||
++ optionals cdaSupport [ libcdio libcddb ]
|
++ optionals cdaSupport [ libcdio libcddb ]
|
||||||
++ optional aacSupport faad2
|
++ optional aacSupport faad2
|
||||||
|
++ optional opusSupport opusfile
|
||||||
++ optional zipSupport libzip
|
++ optional zipSupport libzip
|
||||||
++ optional ffmpegSupport ffmpeg
|
++ optional ffmpegSupport ffmpeg
|
||||||
++ optional apeSupport yasm
|
++ optional apeSupport yasm
|
||||||
|
@ -79,16 +95,24 @@ stdenv.mkDerivation rec {
|
||||||
++ optional pulseSupport libpulseaudio
|
++ optional pulseSupport libpulseaudio
|
||||||
++ optional resamplerSupport libsamplerate
|
++ optional resamplerSupport libsamplerate
|
||||||
++ optional overloadSupport zlib
|
++ optional overloadSupport zlib
|
||||||
++ optional midiSupport wildmidi
|
|
||||||
++ optional wavpackSupport wavpack
|
++ optional wavpackSupport wavpack
|
||||||
++ optional remoteSupport curl
|
++ optional remoteSupport curl
|
||||||
;
|
;
|
||||||
|
|
||||||
nativeBuildInputs = with stdenv.lib; [ intltool pkgconfig ]
|
nativeBuildInputs = [
|
||||||
++ optional gtk3Support wrapGAppsHook;
|
autoconf
|
||||||
|
automake
|
||||||
|
intltool
|
||||||
|
libtool
|
||||||
|
pkgconfig
|
||||||
|
] ++ stdenv.lib.optional gtk3Support wrapGAppsHook;
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
./autogen.sh
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Ultimate Music Player for GNU/Linux";
|
description = "Ultimate Music Player for GNU/Linux";
|
||||||
homepage = http://deadbeef.sourceforge.net/;
|
homepage = http://deadbeef.sourceforge.net/;
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
--- a/plugins/wildmidi/src/wildmidi_lib.c
|
||||||
|
+++ b/plugins/wildmidi/src/wildmidi_lib.c
|
||||||
|
@@ -394,11 +394,11 @@ free_gauss (void) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
-unsigned long int delay_size[4][2];
|
||||||
|
-signed long int a[5][2];
|
||||||
|
-signed long int b[5][2];
|
||||||
|
-signed long int gain_in[4];
|
||||||
|
-signed long int gain_out[4];
|
||||||
|
+static unsigned long int delay_size[4][2];
|
||||||
|
+static signed long int a[5][2];
|
||||||
|
+static signed long int b[5][2];
|
||||||
|
+static signed long int gain_in[4];
|
||||||
|
+static signed long int gain_out[4];
|
||||||
|
|
||||||
|
void init_lowpass (void) {
|
||||||
|
float c = 0;
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "deadbeef-mpris2-plugin-${version}";
|
name = "deadbeef-mpris2-plugin-${version}";
|
||||||
version = "1.11";
|
version = "1.12";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/Serranya/deadbeef-mpris2-plugin/releases/download/v${version}/${name}.tar.xz";
|
url = "https://github.com/Serranya/deadbeef-mpris2-plugin/releases/download/v${version}/${name}.tar.xz";
|
||||||
sha256 = "1j631z34rwxf6wdjpsf8c2f1saq6qas1qmkgsg63m6zzpwqyizw0";
|
sha256 = "0s3y4ka4qf38cypc0xspy79q0g5y1kqx6ldad7yr6a45nw6j95jh";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
{ stdenv, fetchFromBitbucket, opusfile, libopus, libogg, openssl, deadbeef }:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "deadbeef-opus-plugin-${version}";
|
|
||||||
version = "0.8";
|
|
||||||
|
|
||||||
src = fetchFromBitbucket {
|
|
||||||
owner = "Lithopsian";
|
|
||||||
repo = "deadbeef-opus";
|
|
||||||
rev = "v${version}";
|
|
||||||
sha256 = "057rgsw4563gs63k05s7zsdc0n4djxwlbyqabf7c88f23z35ryyi";
|
|
||||||
};
|
|
||||||
|
|
||||||
makeFlags = [
|
|
||||||
"PREFIX=$(out)"
|
|
||||||
];
|
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = [
|
|
||||||
"-I${opusfile}/include/opus"
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [ deadbeef opusfile libopus libogg openssl ];
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
|
||||||
description = "Ogg Opus decoder plugin for the DeaDBeeF music player";
|
|
||||||
homepage = https://bitbucket.org/Lithopsian/deadbeef-opus;
|
|
||||||
license = licenses.gpl2; # There are three files, each licensed under different license: zlib, gpl2Plus and lgpl2
|
|
||||||
maintainers = [ maintainers.jtojnar ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -5,16 +5,20 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "gpodder";
|
pname = "gpodder";
|
||||||
version = "3.10.7";
|
version = "3.10.8";
|
||||||
format = "other";
|
format = "other";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = pname;
|
owner = pname;
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0sx9rj6dpvd2xz7lak2yi0zlgr3lp2ng1fw23s39la9ly4g1835j";
|
sha256 = "0sx5z9qjl76fi0m8vmars0yasfaq6znq434d8zjwla22k5wflmwm";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
./disable-autoupdate.patch
|
||||||
|
];
|
||||||
|
|
||||||
postPatch = with stdenv.lib; ''
|
postPatch = with stdenv.lib; ''
|
||||||
sed -i -re 's,^( *gpodder_dir *= *).*,\1"'"$out"'",' bin/gpodder
|
sed -i -re 's,^( *gpodder_dir *= *).*,\1"'"$out"'",' bin/gpodder
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
--- a/share/gpodder/ui/gtk/menus.ui
|
||||||
|
+++ b/share/gpodder/ui/gtk/menus.ui
|
||||||
|
@@ -13,10 +13,6 @@
|
||||||
|
<attribute name="action">app.gotoMygpo</attribute>
|
||||||
|
<attribute name="label" translatable="yes">Go to gpodder.net</attribute>
|
||||||
|
</item>
|
||||||
|
- <item>
|
||||||
|
- <attribute name="action">app.checkForUpdates</attribute>
|
||||||
|
- <attribute name="label" translatable="yes">Software updates</attribute>
|
||||||
|
- </item>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
|
<item>
|
||||||
|
@@ -201,4 +197,4 @@
|
||||||
|
</submenu>
|
||||||
|
</menu>
|
||||||
|
</interface>
|
||||||
|
-<!-- :noTabs=true:tabSize=2:indentSize=2: -->
|
||||||
|
\ No newline at end of file
|
||||||
|
+<!-- :noTabs=true:tabSize=2:indentSize=2: -->
|
||||||
|
--- a/src/gpodder/config.py
|
||||||
|
+++ b/src/gpodder/config.py
|
||||||
|
@@ -91,13 +91,6 @@
|
||||||
|
'retries': 3, # number of retries when downloads time out
|
||||||
|
},
|
||||||
|
|
||||||
|
- # Software updates from gpodder.org
|
||||||
|
- 'software_update': {
|
||||||
|
- 'check_on_startup': True, # check for updates on start
|
||||||
|
- 'last_check': 0, # unix timestamp of last update check
|
||||||
|
- 'interval': 5, # interval (in days) to check for updates
|
||||||
|
- },
|
||||||
|
-
|
||||||
|
'ui': {
|
||||||
|
# Settings for the Command-Line Interface
|
||||||
|
'cli': {
|
||||||
|
--- a/src/gpodder/gtkui/main.py
|
||||||
|
+++ b/src/gpodder/gtkui/main.py
|
||||||
|
@@ -224,7 +224,7 @@
|
||||||
|
util.idle_add(self.subscribe_to_url, self.options.subscribe)
|
||||||
|
elif not self.channels:
|
||||||
|
self.on_itemUpdate_activate()
|
||||||
|
- elif self.config.software_update.check_on_startup:
|
||||||
|
+ elif False and self.config.software_update.check_on_startup:
|
||||||
|
# Check for software updates from gpodder.org
|
||||||
|
diff = time.time() - self.config.software_update.last_check
|
||||||
|
if diff > (60 * 60 * 24) * self.config.software_update.interval:
|
||||||
|
@@ -3288,6 +3288,7 @@
|
||||||
|
If silent=False, a message will be shown even if no updates are
|
||||||
|
available (set silent=False when the check is manually triggered).
|
||||||
|
"""
|
||||||
|
+ return
|
||||||
|
try:
|
||||||
|
up_to_date, version, released, days = util.get_update_info()
|
||||||
|
except Exception as e:
|
|
@ -12,11 +12,11 @@ in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "guitarix-${version}";
|
name = "guitarix-${version}";
|
||||||
version = "0.37.3";
|
version = "0.38.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.xz";
|
url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.xz";
|
||||||
sha256 = "1wfm8wrwrnqpb4ihy75n7l9i6vml536jlq9pdx2pblbc4ba3paac";
|
sha256 = "0bw7xnrx062nwb1bfj9x660h7069ncmz77szcs8icpqxrvhs7z80";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ gettext intltool wrapGAppsHook pkgconfig python2 wafHook ];
|
nativeBuildInputs = [ gettext intltool wrapGAppsHook pkgconfig python2 wafHook ];
|
||||||
|
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
||||||
zita-resampler curl
|
zita-resampler curl
|
||||||
];
|
];
|
||||||
|
|
||||||
configureFlags = [
|
wafConfigureFlags = [
|
||||||
"--shared-lib"
|
"--shared-lib"
|
||||||
"--no-desktop-update"
|
"--no-desktop-update"
|
||||||
"--enable-nls"
|
"--enable-nls"
|
||||||
|
|
|
@ -152,7 +152,7 @@ stdenv.mkDerivation rec {
|
||||||
- Delay Compensator Stereo - Verzögerungsausgleicher Stereo
|
- Delay Compensator Stereo - Verzögerungsausgleicher Stereo
|
||||||
- Delay Compensator x2 Stereo - Verzögerungsausgleicher x2 Stereo
|
- Delay Compensator x2 Stereo - Verzögerungsausgleicher x2 Stereo
|
||||||
'';
|
'';
|
||||||
homepage = http://lsp-plug.in;
|
homepage = https://lsp-plug.in;
|
||||||
maintainers = with maintainers; [ magnetophon ];
|
maintainers = with maintainers; [ magnetophon ];
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "ncmpc-${version}";
|
name = "ncmpc-${version}";
|
||||||
version = "0.33";
|
version = "0.34";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "MusicPlayerDaemon";
|
owner = "MusicPlayerDaemon";
|
||||||
repo = "ncmpc";
|
repo = "ncmpc";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1ymnxb85v2pc0qpk0yz5gdxayc0ialk82ba521lgdw66li7fr4as";
|
sha256 = "0ffby37qdg251c1w0vl6rmd13akbydnf12468z4vrl0ybwfd7fc4";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ glib ncurses mpd_clientlib boost ];
|
buildInputs = [ glib ncurses mpd_clientlib boost ];
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
, patchelf
|
, patchelf
|
||||||
, fdk_aac
|
, fdk_aac
|
||||||
, libtool
|
, libtool
|
||||||
|
, ldacbt
|
||||||
, cmake
|
, cmake
|
||||||
, bluez
|
, bluez
|
||||||
, dbus
|
, dbus
|
||||||
|
@ -23,14 +24,13 @@ let
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "pulseaudio-modules-bt-${version}";
|
name = "pulseaudio-modules-bt-${version}";
|
||||||
version = "unstable-2019-03-15";
|
version = "1.1.99";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "EHfive";
|
owner = "EHfive";
|
||||||
repo = "pulseaudio-modules-bt";
|
repo = "pulseaudio-modules-bt";
|
||||||
rev = "0b397c26eb4fd5dc611bd3e2baa79776de646856";
|
rev = "v${version}";
|
||||||
sha256 = "09q0xh9iz0crik6xpln9lijirf62aljxa1jrds1i1zgflyfidd0z";
|
sha256 = "0x670xbd62r3fs9a8pa5p4ppvxn6m64hvlrqa702gvikcvyrmwcg";
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -48,6 +48,7 @@ in stdenv.mkDerivation rec {
|
||||||
ffmpeg_4
|
ffmpeg_4
|
||||||
fdk_aac
|
fdk_aac
|
||||||
libtool
|
libtool
|
||||||
|
ldacbt
|
||||||
bluez
|
bluez
|
||||||
dbus
|
dbus
|
||||||
sbc
|
sbc
|
||||||
|
@ -67,7 +68,7 @@ in stdenv.mkDerivation rec {
|
||||||
for so in $out/lib/pulse-${pulseaudio.version}/modules/*.so; do
|
for so in $out/lib/pulse-${pulseaudio.version}/modules/*.so; do
|
||||||
orig_rpath=$(patchelf --print-rpath "$so")
|
orig_rpath=$(patchelf --print-rpath "$so")
|
||||||
patchelf \
|
patchelf \
|
||||||
--set-rpath "${lib.getLib ffmpeg_4}/lib:$out/lib/pulse-${pulseaudio.version}/modules:$orig_rpath" \
|
--set-rpath "${ldacbt}/lib:${lib.getLib ffmpeg_4}/lib:$out/lib/pulse-${pulseaudio.version}/modules:$orig_rpath" \
|
||||||
"$so"
|
"$so"
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -47,13 +47,13 @@ let
|
||||||
];
|
];
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "pulseeffects";
|
pname = "pulseeffects";
|
||||||
version = "4.5.5";
|
version = "4.5.9";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "wwmm";
|
owner = "wwmm";
|
||||||
repo = "pulseeffects";
|
repo = "pulseeffects";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0ll85c9xll2i42r1bdgbnxi5mc5jq2vxgp179jj2iq7wczq5psj1";
|
sha256 = "19pqi9wix359hdrslzmi9sz0dzz03pdwqvdyzw3i5rdny01skdfw";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "qsynth-${version}";
|
name = "qsynth-${version}";
|
||||||
version = "0.5.5";
|
version = "0.5.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/qsynth/${name}.tar.gz";
|
url = "mirror://sourceforge/qsynth/${name}.tar.gz";
|
||||||
sha256 = "08x7znvbwi9miavcarymi7dsv8njmxzwzma20dbmz8j2aswm53w5";
|
sha256 = "0h4hhja8qbyzd6v24flw9wr4mwl03nplryx1gyrppn7sg13l1sx6";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoconf pkgconfig ];
|
nativeBuildInputs = [ autoconf pkgconfig ];
|
||||||
|
|
|
@ -5,11 +5,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "qtractor";
|
pname = "qtractor";
|
||||||
version = "0.9.5";
|
version = "0.9.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
|
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
|
||||||
sha256 = "1zsikhqj5xzhw2x3b6pqlmcwz3hxx07lbbif8v3m3j41snzjic22";
|
sha256 = "06sa4wl8zr0k8dnjiil0gjwnhrkq95h50xv56ih1y8jgyzxchaxp";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "samplv1-${version}";
|
name = "samplv1-${version}";
|
||||||
version = "0.9.5";
|
version = "0.9.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/samplv1/${name}.tar.gz";
|
url = "mirror://sourceforge/samplv1/${name}.tar.gz";
|
||||||
sha256 = "0402rdr46za21w34m7ajzbwiiqcd1h0da3b0ldsr2z5g2mrkzxv8";
|
sha256 = "16a5xix9pn0gl3fr6bv6zl1l9vrzgvy1q7xd8yxzfr3vi5s8x4z9";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ libjack2 alsaLib liblo libsndfile lv2 qt5.qtbase qt5.qttools];
|
buildInputs = [ libjack2 alsaLib liblo libsndfile lv2 qt5.qtbase qt5.qttools];
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "synthv1-${version}";
|
name = "synthv1-${version}";
|
||||||
version = "0.9.5";
|
version = "0.9.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/synthv1/${name}.tar.gz";
|
url = "mirror://sourceforge/synthv1/${name}.tar.gz";
|
||||||
sha256 = "1b9w4cml3cmcg09kh852cahas6l9ks8wl3gzp1az8rzxz4229yg1";
|
sha256 = "1hcngk7mxfrqf8v3r759x3wd0p02nc3q83j8m3k58p408y3mx7nr";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ qt5.qtbase qt5.qttools libjack2 alsaLib liblo lv2 ];
|
buildInputs = [ qt5.qtbase qt5.qttools libjack2 alsaLib liblo lv2 ];
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "0.18.0";
|
version = "0.18.1";
|
||||||
|
|
||||||
in mkDerivation rec {
|
in mkDerivation rec {
|
||||||
name = "sddm-${version}";
|
name = "sddm-${version}";
|
||||||
|
@ -13,7 +13,7 @@ in mkDerivation rec {
|
||||||
owner = "sddm";
|
owner = "sddm";
|
||||||
repo = "sddm";
|
repo = "sddm";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "16xnm02iqgy4hydzd6my0widq981glbazbhxnihhclgsaczh8mfq";
|
sha256 = "0an1zafz0yhxd9jgd3gzdwmaw5f9vs4c924q56lp2yxxddbmzjcq";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -41,11 +41,11 @@ in mkDerivation rec {
|
||||||
# not supported anyway.
|
# not supported anyway.
|
||||||
"-DUID_MIN=1000"
|
"-DUID_MIN=1000"
|
||||||
"-DUID_MAX=29999"
|
"-DUID_MAX=29999"
|
||||||
];
|
|
||||||
|
|
||||||
preConfigure = ''
|
"-DQT_IMPORTS_DIR=${placeholder "out"}/${qtbase.qtQmlPrefix}"
|
||||||
export cmakeFlags="$cmakeFlags -DQT_IMPORTS_DIR=$out/$qtQmlPrefix -DCMAKE_INSTALL_SYSCONFDIR=$out/etc -DSYSTEMD_SYSTEM_UNIT_DIR=$out/lib/systemd/system"
|
"-DCMAKE_INSTALL_SYSCONFDIR=${placeholder "out"}/etc"
|
||||||
'';
|
"-DSYSTEMD_SYSTEM_UNIT_DIR=${placeholder "out"}/lib/systemd/system"
|
||||||
|
];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
# remove empty scripts
|
# remove empty scripts
|
||||||
|
|
|
@ -18,21 +18,11 @@ let
|
||||||
sha256Hash = "1v4apc73jdhavhzj8j46mzh15rw08w1hd9y9ykarj3b5q7i2vyq1";
|
sha256Hash = "1v4apc73jdhavhzj8j46mzh15rw08w1hd9y9ykarj3b5q7i2vyq1";
|
||||||
};
|
};
|
||||||
latestVersion = { # canary & dev
|
latestVersion = { # canary & dev
|
||||||
version = "3.5.0.9"; # "Android Studio 3.5 Canary 10"
|
version = "3.5.0.10"; # "Android Studio 3.5 Canary 11"
|
||||||
build = "191.5416148";
|
build = "191.5455988";
|
||||||
sha256Hash = "03d2x6bqasw417dxc7b8y65rral73xm2ci512gprmsvwy42k3mqi";
|
sha256Hash = "1g24a8fwnrfzdf093wdmqly3mzjddk5ndgi51qj98amn7kclsdpf";
|
||||||
};
|
};
|
||||||
in rec {
|
in rec {
|
||||||
# Old alias (TODO @primeos: Remove after 19.03 is branched off):
|
|
||||||
preview = throw ''
|
|
||||||
The attributes "android-studio-preview" and "androidStudioPackages.preview"
|
|
||||||
are now deprecated and will be removed soon, please use
|
|
||||||
"androidStudioPackages.beta" instead. This attribute corresponds to the
|
|
||||||
beta channel, if you want the latest release you can use
|
|
||||||
"androidStudioPackages.dev" or "androidStudioPackages.canary" instead
|
|
||||||
(currently, there is no difference between both channels).
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Attributes are named by their corresponding release channels
|
# Attributes are named by their corresponding release channels
|
||||||
|
|
||||||
stable = mkStudio (stableVersion // {
|
stable = mkStudio (stableVersion // {
|
||||||
|
|
|
@ -19,10 +19,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "ack";
|
pname = "ack";
|
||||||
ename = "ack";
|
ename = "ack";
|
||||||
version = "1.5";
|
version = "1.8";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/ack-1.5.tar";
|
url = "https://elpa.gnu.org/packages/ack-1.8.tar";
|
||||||
sha256 = "0sljshiy44z27idy0rxjs2fx4smlm4v607wic7md1vihp6qp4l9r";
|
sha256 = "1d4218km7j1bx1fsna29j3gi3k2ak2fzbk1gyki327pnnlma6bav";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -39,10 +39,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "ada-mode";
|
pname = "ada-mode";
|
||||||
ename = "ada-mode";
|
ename = "ada-mode";
|
||||||
version = "6.0.1";
|
version = "6.1.0";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/ada-mode-6.0.1.tar";
|
url = "https://elpa.gnu.org/packages/ada-mode-6.1.0.tar";
|
||||||
sha256 = "12ryblyqnhqibaffibs7qq3xq9rf5d4y9dishq82pbbh9y8s17hj";
|
sha256 = "1qa4kjv5xxlj50fghg5516cxn8ckv8vlyarcab2isxjnnxnb6g7s";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib emacs wisi ];
|
packageRequires = [ cl-lib emacs wisi ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -54,10 +54,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "ada-ref-man";
|
pname = "ada-ref-man";
|
||||||
ename = "ada-ref-man";
|
ename = "ada-ref-man";
|
||||||
version = "2012.3";
|
version = "2012.5";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/ada-ref-man-2012.3.tar";
|
url = "https://elpa.gnu.org/packages/ada-ref-man-2012.5.tar";
|
||||||
sha256 = "0w88xw51jb85nmqbi3i9kj9kx2fa6zlazk3x7afll7njc6g4105z";
|
sha256 = "0n7izqc44i3l6fxbzkq9gwwlcf04rr9g1whrk8biz84jhbyh23x8";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -204,16 +204,16 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
auctex = callPackage ({ elpaBuild, fetchurl, lib }:
|
auctex = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "auctex";
|
pname = "auctex";
|
||||||
ename = "auctex";
|
ename = "auctex";
|
||||||
version = "12.1.1";
|
version = "12.1.2";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/auctex-12.1.1.tar";
|
url = "https://elpa.gnu.org/packages/auctex-12.1.2.tar";
|
||||||
sha256 = "10l96569dy9pfp8bm64pndhk1skg65kqhsyllwfa0zvb7mjkm70l";
|
sha256 = "1yibg2anpmyr2a27wm4xqjsvsi9km2jzb56bf7cwyj8dnjfsd11n";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [ cl-lib emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://elpa.gnu.org/packages/auctex.html";
|
homepage = "https://elpa.gnu.org/packages/auctex.html";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
|
@ -324,6 +324,25 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
buffer-expose = callPackage ({ cl-lib ? null
|
||||||
|
, elpaBuild
|
||||||
|
, emacs
|
||||||
|
, fetchurl
|
||||||
|
, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "buffer-expose";
|
||||||
|
ename = "buffer-expose";
|
||||||
|
version = "0.4.1";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/buffer-expose-0.4.1.el";
|
||||||
|
sha256 = "05b1mhcv3860g93a7myqqrhmb9gpp19b4bcxhmdbmf4m0f7p9fw4";
|
||||||
|
};
|
||||||
|
packageRequires = [ cl-lib emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/buffer-expose.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
bug-hunter = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib, seq }:
|
bug-hunter = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib, seq }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "bug-hunter";
|
pname = "bug-hunter";
|
||||||
|
@ -429,6 +448,21 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
clipboard-collector = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "clipboard-collector";
|
||||||
|
ename = "clipboard-collector";
|
||||||
|
version = "0.2";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/clipboard-collector-0.2.el";
|
||||||
|
sha256 = "19scspkxgm3b1jkv10jy6nw9gv1q6sfjys09l37mvsva3djxa1dl";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/clipboard-collector.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
cobol-mode = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
cobol-mode = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "cobol-mode";
|
pname = "cobol-mode";
|
||||||
|
@ -621,10 +655,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "darkroom";
|
pname = "darkroom";
|
||||||
ename = "darkroom";
|
ename = "darkroom";
|
||||||
version = "0.1";
|
version = "0.2";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/darkroom-0.1.el";
|
url = "https://elpa.gnu.org/packages/darkroom-0.2.el";
|
||||||
sha256 = "0fif8fm1h7x7g16949shfnaik5f5488clsvkf8bi5izpqp3vi6ak";
|
sha256 = "1a528brhz4vckhp77n2c1phkyqdliykpj9kzk3f834f4rwnb5mp0";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib ];
|
packageRequires = [ cl-lib ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -664,18 +698,19 @@
|
||||||
}) {};
|
}) {};
|
||||||
debbugs = callPackage ({ cl-lib ? null
|
debbugs = callPackage ({ cl-lib ? null
|
||||||
, elpaBuild
|
, elpaBuild
|
||||||
|
, emacs
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, lib
|
, lib
|
||||||
, soap-client }:
|
, soap-client }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "debbugs";
|
pname = "debbugs";
|
||||||
ename = "debbugs";
|
ename = "debbugs";
|
||||||
version = "0.16";
|
version = "0.17";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/debbugs-0.16.tar";
|
url = "https://elpa.gnu.org/packages/debbugs-0.17.tar";
|
||||||
sha256 = "0y3bq803c7820h15g66d1648skxfhlfa2v6vincj6xk5ssp44s9p";
|
sha256 = "0zclh2nxj5p10n214sxyxy3ca07l5s9p5spk0xp1smr6nzn0w7gb";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib soap-client ];
|
packageRequires = [ cl-lib emacs soap-client ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://elpa.gnu.org/packages/debbugs.html";
|
homepage = "https://elpa.gnu.org/packages/debbugs.html";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
|
@ -715,10 +750,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "diff-hl";
|
pname = "diff-hl";
|
||||||
ename = "diff-hl";
|
ename = "diff-hl";
|
||||||
version = "1.8.5";
|
version = "1.8.6";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/diff-hl-1.8.5.tar";
|
url = "https://elpa.gnu.org/packages/diff-hl-1.8.6.tar";
|
||||||
sha256 = "1vxc7z7c2qs0mx7l5sa4sybi5qbzv0s79flj74p1ynw8dl3qxg3d";
|
sha256 = "02hvi5jxv2anf62lw878bdz6xk7xjhjd5q85pqihmadbpj6i6pfq";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib emacs ];
|
packageRequires = [ cl-lib emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -745,10 +780,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "dired-du";
|
pname = "dired-du";
|
||||||
ename = "dired-du";
|
ename = "dired-du";
|
||||||
version = "0.5.1";
|
version = "0.5.2";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/dired-du-0.5.1.tar";
|
url = "https://elpa.gnu.org/packages/dired-du-0.5.2.tar";
|
||||||
sha256 = "1091scnrjh0a4gja4z6jxic6ghy1yryv46qk9c76pmh50cpw6766";
|
sha256 = "0vhph7vcicsiq28b10h3b4dvnhckcy4gccpdgsad5j7pwa5k26m1";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib emacs ];
|
packageRequires = [ cl-lib emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -756,6 +791,36 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
dired-git-info = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "dired-git-info";
|
||||||
|
ename = "dired-git-info";
|
||||||
|
version = "0.2";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/dired-git-info-0.2.el";
|
||||||
|
sha256 = "1pxn6kmgnynil13gp3m0y8hhkvciy3dcd55psj70pkrj50555dqx";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/dired-git-info.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
|
disk-usage = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "disk-usage";
|
||||||
|
ename = "disk-usage";
|
||||||
|
version = "1.3.1";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/disk-usage-1.3.1.el";
|
||||||
|
sha256 = "1jkwlg7w4090a7byfjh30mjz1libls8n71pphmn3973hqwaclnr7";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/disk-usage.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
dismal = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
dismal = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "dismal";
|
pname = "dismal";
|
||||||
|
@ -835,10 +900,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "ebdb";
|
pname = "ebdb";
|
||||||
ename = "ebdb";
|
ename = "ebdb";
|
||||||
version = "0.6.2";
|
version = "0.6.6";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/ebdb-0.6.2.tar";
|
url = "https://elpa.gnu.org/packages/ebdb-0.6.6.tar";
|
||||||
sha256 = "1b37962mvm80vk5sdk9kfvvxsxn83z5z6zvm20m9997ggl5dv4dz";
|
sha256 = "1jgx099z9xg47v698qjbk5q70bakfw7zxaj25z4jz1mq64fvk6b5";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib emacs seq ];
|
packageRequires = [ cl-lib emacs seq ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -900,10 +965,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "eglot";
|
pname = "eglot";
|
||||||
ename = "eglot";
|
ename = "eglot";
|
||||||
version = "1.3";
|
version = "1.4";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/eglot-1.3.tar";
|
url = "https://elpa.gnu.org/packages/eglot-1.4.tar";
|
||||||
sha256 = "0hndqabxvrq4ak5kx2xlds5pkayi2bfd1f1xk8aidzk5i70f7yry";
|
sha256 = "1f2p08ly17jcjyh8bif5zhmzhx3z5y9z20v6z24z939bqk8c1pdq";
|
||||||
};
|
};
|
||||||
packageRequires = [ emacs flymake jsonrpc ];
|
packageRequires = [ emacs flymake jsonrpc ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -920,10 +985,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "el-search";
|
pname = "el-search";
|
||||||
ename = "el-search";
|
ename = "el-search";
|
||||||
version = "1.8.8";
|
version = "1.11.4";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/el-search-1.8.8.tar";
|
url = "https://elpa.gnu.org/packages/el-search-1.11.4.tar";
|
||||||
sha256 = "1yv91vzpxn29rr8rkrihcbf26pafnxj25j7g38rss9qigswjkpnk";
|
sha256 = "152kx9s72h94n6nsrn84cmfb264cdw61ny5fn0n3fa581ipy34nm";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-print emacs stream ];
|
packageRequires = [ cl-print emacs stream ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1037,10 +1102,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "exwm";
|
pname = "exwm";
|
||||||
ename = "exwm";
|
ename = "exwm";
|
||||||
version = "0.21";
|
version = "0.22.1";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/exwm-0.21.tar";
|
url = "https://elpa.gnu.org/packages/exwm-0.22.1.tar";
|
||||||
sha256 = "07ng1pgsnc3isfsyzh2gfc7391p9il8lb5xqf1z6yqn20w7k6xzj";
|
sha256 = "1ggb8vgxxml8c5bvamv9jgz80gs6h9xirjgphq8gwkywwd5xyiq4";
|
||||||
};
|
};
|
||||||
packageRequires = [ xelb ];
|
packageRequires = [ xelb ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1097,10 +1162,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "flymake";
|
pname = "flymake";
|
||||||
ename = "flymake";
|
ename = "flymake";
|
||||||
version = "1.0.3";
|
version = "1.0.5";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/flymake-1.0.3.el";
|
url = "https://elpa.gnu.org/packages/flymake-1.0.5.el";
|
||||||
sha256 = "1algny2zhcl4vc7kp5czcqvxzpgqfjnz2rnkv26r0ylxig3s98v7";
|
sha256 = "1zxzad84gcbdfh3pp606sspy8zkgxvngbzbimc2cam4pjcmwfx1y";
|
||||||
};
|
};
|
||||||
packageRequires = [ emacs ];
|
packageRequires = [ emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1112,10 +1177,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "fountain-mode";
|
pname = "fountain-mode";
|
||||||
ename = "fountain-mode";
|
ename = "fountain-mode";
|
||||||
version = "2.6.1";
|
version = "2.6.2";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/fountain-mode-2.6.1.el";
|
url = "https://elpa.gnu.org/packages/fountain-mode-2.6.2.el";
|
||||||
sha256 = "0p0h28cmryhsgrp2ghk28i1xkfz4gvdwaa38galn4jksn9dh0dyb";
|
sha256 = "0ysxk9ap919scg2zz0psw8hk1dj35ys9p0havswsjzm46k43xd6z";
|
||||||
};
|
};
|
||||||
packageRequires = [ emacs ];
|
packageRequires = [ emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1138,6 +1203,21 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
frog-menu = callPackage ({ avy, elpaBuild, emacs, fetchurl, lib, posframe }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "frog-menu";
|
||||||
|
ename = "frog-menu";
|
||||||
|
version = "0.2.2";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/frog-menu-0.2.2.el";
|
||||||
|
sha256 = "0kv31p42gmi01xalbvwksk10l28ascdr214bmv1z22dipv0zm30i";
|
||||||
|
};
|
||||||
|
packageRequires = [ avy emacs posframe ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/frog-menu.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
fsm = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
|
fsm = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "fsm";
|
pname = "fsm";
|
||||||
|
@ -1278,6 +1358,41 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
greader = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "greader";
|
||||||
|
ename = "greader";
|
||||||
|
version = "0.1";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/greader-0.1.tar";
|
||||||
|
sha256 = "0mwhmidzv9vnmx6xls8pq4ra4m0f4yg677xgv34ivv34vsgg1mhb";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/greader.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
|
guess-language = callPackage ({ advice
|
||||||
|
, cl-lib ? null
|
||||||
|
, elpaBuild
|
||||||
|
, emacs
|
||||||
|
, fetchurl
|
||||||
|
, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "guess-language";
|
||||||
|
ename = "guess-language";
|
||||||
|
version = "0.0.1";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/guess-language-0.0.1.el";
|
||||||
|
sha256 = "11a6m2337j4ncppaf59yr2vavvvsph2qh51d12zmq58g9wh3d7wz";
|
||||||
|
};
|
||||||
|
packageRequires = [ advice cl-lib emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/guess-language.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
heap = callPackage ({ elpaBuild, fetchurl, lib }:
|
heap = callPackage ({ elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "heap";
|
pname = "heap";
|
||||||
|
@ -1430,14 +1545,29 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
ivy-explorer = callPackage ({ elpaBuild, emacs, fetchurl, ivy, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "ivy-explorer";
|
||||||
|
ename = "ivy-explorer";
|
||||||
|
version = "0.3.2";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/ivy-explorer-0.3.2.el";
|
||||||
|
sha256 = "0q9gy9w22hnq30bfmnpqknk0qc1rcbjcybpjgb8hnlldvcci95l7";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ivy ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/ivy-explorer.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
javaimp = callPackage ({ elpaBuild, fetchurl, lib }:
|
javaimp = callPackage ({ elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "javaimp";
|
pname = "javaimp";
|
||||||
ename = "javaimp";
|
ename = "javaimp";
|
||||||
version = "0.6";
|
version = "0.6.1";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/javaimp-0.6.tar";
|
url = "https://elpa.gnu.org/packages/javaimp-0.6.1.tar";
|
||||||
sha256 = "015kchx6brsjk7q6lz9y44a18n5imapd95czx50hqdscjczmj2ff";
|
sha256 = "1piaj3sgw6a05g9dhkbrn5n490w01z1rxa7axh3vg1xqbs6rv7lw";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1464,10 +1594,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "js2-mode";
|
pname = "js2-mode";
|
||||||
ename = "js2-mode";
|
ename = "js2-mode";
|
||||||
version = "20180301";
|
version = "20190219";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/js2-mode-20180301.tar";
|
url = "https://elpa.gnu.org/packages/js2-mode-20190219.tar";
|
||||||
sha256 = "0kcs70iygbpaxs094q6agsjs56sz03jy4fwk178f9hr93x95pynx";
|
sha256 = "0jgqs7cwykw5ihdq9wp5qc05y6br9gsyfiylqhjq43z59673chcc";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib emacs ];
|
packageRequires = [ cl-lib emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1655,6 +1785,21 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
map = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "map";
|
||||||
|
ename = "map";
|
||||||
|
version = "2.0";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/map-2.0.el";
|
||||||
|
sha256 = "1djygpvk1qgldg9my0lh8n2z1n6acz3y5ws7sv2w08hvxdlxz857";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/map.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
markchars = callPackage ({ elpaBuild, fetchurl, lib }:
|
markchars = callPackage ({ elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "markchars";
|
pname = "markchars";
|
||||||
|
@ -1908,10 +2053,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "nlinum";
|
pname = "nlinum";
|
||||||
ename = "nlinum";
|
ename = "nlinum";
|
||||||
version = "1.8.1";
|
version = "1.9";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/nlinum-1.8.1.el";
|
url = "https://elpa.gnu.org/packages/nlinum-1.9.el";
|
||||||
sha256 = "0fx560yfjy6nqgs1d3fiv0h46i8q3r592clsia7nihkriah7rlwf";
|
sha256 = "03zqlz58fvh4cpfl43h7py2fpnc7m37f1ys8zhrc511ccq9cwkdn";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1979,6 +2124,21 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
objed = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "objed";
|
||||||
|
ename = "objed";
|
||||||
|
version = "0.8.1";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/objed-0.8.1.tar";
|
||||||
|
sha256 = "06jfvz7avh28p1ghyd1aik5lz8k9fnv1fcxh9npm1iyvh810y5zj";
|
||||||
|
};
|
||||||
|
packageRequires = [ cl-lib emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/objed.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
omn-mode = callPackage ({ elpaBuild, fetchurl, lib }:
|
omn-mode = callPackage ({ elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "omn-mode";
|
pname = "omn-mode";
|
||||||
|
@ -2013,10 +2173,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "org";
|
pname = "org";
|
||||||
ename = "org";
|
ename = "org";
|
||||||
version = "9.2";
|
version = "9.2.3";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/org-9.2.tar";
|
url = "https://elpa.gnu.org/packages/org-9.2.3.tar";
|
||||||
sha256 = "14ydwh2r360fpi6v2g9rgf0zazy2ddq1pcdxvzn73h65glnnclz9";
|
sha256 = "0hqy4lns9q5p0l1ylgmlckqprn9sbasszhznanmv0rsh0gzhsbyw";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -2028,10 +2188,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "org-edna";
|
pname = "org-edna";
|
||||||
ename = "org-edna";
|
ename = "org-edna";
|
||||||
version = "1.0.1";
|
version = "1.0.2";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/org-edna-1.0.1.tar";
|
url = "https://elpa.gnu.org/packages/org-edna-1.0.2.tar";
|
||||||
sha256 = "0xzyzx3pq1q6d66qcqx38pgxzn160y9yrzpy0ka8ap5xsm7ngn7m";
|
sha256 = "005pmnqr41s2w72gahq9bf4l5kw601i19ypiqfnb8aq0f4acjr3d";
|
||||||
};
|
};
|
||||||
packageRequires = [ emacs org seq ];
|
packageRequires = [ emacs org seq ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -2129,6 +2289,21 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
peg = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "peg";
|
||||||
|
ename = "peg";
|
||||||
|
version = "1.0";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/peg-1.0.tar";
|
||||||
|
sha256 = "0skr5dz9k34r409hisnj37n1b7n62l3md0glnfx578xkbmxlpcxl";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/peg.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
pinentry = callPackage ({ elpaBuild, fetchurl, lib }:
|
pinentry = callPackage ({ elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "pinentry";
|
pname = "pinentry";
|
||||||
|
@ -2163,10 +2338,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "posframe";
|
pname = "posframe";
|
||||||
ename = "posframe";
|
ename = "posframe";
|
||||||
version = "0.4.2";
|
version = "0.4.3";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/posframe-0.4.2.el";
|
url = "https://elpa.gnu.org/packages/posframe-0.4.3.el";
|
||||||
sha256 = "1h8vvxvsg41vc1nnglqjs2q0k1yzfsn72skga9s76qa3zxmx6kds";
|
sha256 = "06q0p4qim6lha2xr9fxaspbzw01xn01ik9gxlld6hdhh19b65cmi";
|
||||||
};
|
};
|
||||||
packageRequires = [ emacs ];
|
packageRequires = [ emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -2337,6 +2512,21 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
relint = callPackage ({ elpaBuild, fetchurl, lib, xr }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "relint";
|
||||||
|
ename = "relint";
|
||||||
|
version = "1.6";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/relint-1.6.el";
|
||||||
|
sha256 = "17nyy3zqpqgs22lrrpdm0k56xnhj5l3y2y3lnmhcqw63xksgbsyk";
|
||||||
|
};
|
||||||
|
packageRequires = [ xr ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/relint.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
rich-minority = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
rich-minority = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "rich-minority";
|
pname = "rich-minority";
|
||||||
|
@ -2508,16 +2698,16 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
sokoban = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
|
sokoban = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "sokoban";
|
pname = "sokoban";
|
||||||
ename = "sokoban";
|
ename = "sokoban";
|
||||||
version = "1.4.6";
|
version = "1.4.8";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/sokoban-1.4.6.tar";
|
url = "https://elpa.gnu.org/packages/sokoban-1.4.8.tar";
|
||||||
sha256 = "112cl1l36zn5q9cw81rxi96zflf7ddp3by1h7fsz48yjfidpfbzn";
|
sha256 = "1w3vrkg239x1saqka21zbl380fxqmbz3lr7820spxd8p5w9v55pn";
|
||||||
};
|
};
|
||||||
packageRequires = [ emacs ];
|
packageRequires = [ cl-lib emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://elpa.gnu.org/packages/sokoban.html";
|
homepage = "https://elpa.gnu.org/packages/sokoban.html";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
|
@ -2877,6 +3067,24 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
visual-filename-abbrev = callPackage ({ elpaBuild
|
||||||
|
, emacs
|
||||||
|
, fetchurl
|
||||||
|
, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "visual-filename-abbrev";
|
||||||
|
ename = "visual-filename-abbrev";
|
||||||
|
version = "1.0";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/visual-filename-abbrev-1.0.el";
|
||||||
|
sha256 = "086cmyv08jd3qadjrd14b7c932i8msxjdvxxa36pyac18d3i50kj";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/visual-filename-abbrev.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
visual-fill = callPackage ({ elpaBuild, fetchurl, lib }:
|
visual-fill = callPackage ({ elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "visual-fill";
|
pname = "visual-fill";
|
||||||
|
@ -2967,6 +3175,21 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
webfeeder = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "webfeeder";
|
||||||
|
ename = "webfeeder";
|
||||||
|
version = "1.0.0";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/webfeeder-1.0.0.tar";
|
||||||
|
sha256 = "06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/webfeeder.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
websocket = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
websocket = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "websocket";
|
pname = "websocket";
|
||||||
|
@ -3016,10 +3239,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "wisi";
|
pname = "wisi";
|
||||||
ename = "wisi";
|
ename = "wisi";
|
||||||
version = "2.0.1";
|
version = "2.1.0";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/wisi-2.0.1.tar";
|
url = "https://elpa.gnu.org/packages/wisi-2.1.0.tar";
|
||||||
sha256 = "1h0g6y33jrafcabgyi7j700hpv4p56v84c2mlqb334k1g9rq3709";
|
sha256 = "143xfdr7agyc52wz9zsx67rvvnjs4rlj7j3cbdhvs6wyl7whyg38";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib emacs seq ];
|
packageRequires = [ cl-lib emacs seq ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -3046,10 +3269,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "xclip";
|
pname = "xclip";
|
||||||
ename = "xclip";
|
ename = "xclip";
|
||||||
version = "1.7";
|
version = "1.8";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/xclip-1.7.el";
|
url = "https://elpa.gnu.org/packages/xclip-1.8.el";
|
||||||
sha256 = "0jpy3zzbyb16vqa9l6m45crzlypwvscvs76h8lci7kvp91kq954r";
|
sha256 = "1ymc9dhpwbh92ad7w64p8xlrjdws5c9h90h47ckh6479h8r697xg";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -3061,10 +3284,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "xelb";
|
pname = "xelb";
|
||||||
ename = "xelb";
|
ename = "xelb";
|
||||||
version = "0.16";
|
version = "0.17";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/xelb-0.16.tar";
|
url = "https://elpa.gnu.org/packages/xelb-0.17.tar";
|
||||||
sha256 = "03wsr1jr7f7zfd80h864rd4makwh4widdnj1kjv2xyjwdgap9rl8";
|
sha256 = "0k98580vq253fjdgklgqlwl450saninfw39fbq8lv3xsnp3dcgml";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-generic emacs ];
|
packageRequires = [ cl-generic emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -3087,6 +3310,21 @@
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
xr = callPackage ({ elpaBuild, fetchurl, lib }:
|
||||||
|
elpaBuild {
|
||||||
|
pname = "xr";
|
||||||
|
ename = "xr";
|
||||||
|
version = "1.10";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://elpa.gnu.org/packages/xr-1.10.tar";
|
||||||
|
sha256 = "16p68rj5h609pnbp7y0jiiq1zkbksh4qqi1q8yby3ldj5x9sfpwc";
|
||||||
|
};
|
||||||
|
packageRequires = [];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://elpa.gnu.org/packages/xr.html";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
yasnippet = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
yasnippet = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "yasnippet";
|
pname = "yasnippet";
|
||||||
|
@ -3124,10 +3362,10 @@
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "zones";
|
pname = "zones";
|
||||||
ename = "zones";
|
ename = "zones";
|
||||||
version = "2018.11.21";
|
version = "2018.12.28";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/zones-2018.11.21.el";
|
url = "https://elpa.gnu.org/packages/zones-2018.12.28.el";
|
||||||
sha256 = "0s68mnynjd08gyga7xdnb0zy3irsxl1jryidpcrkzg821vfrk11i";
|
sha256 = "1jd7wy5w96xppdlcl4dzq4wqhr2x6f4hzjps9f4kz256l4ia6hm0";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [];
|
||||||
meta = {
|
meta = {
|
||||||
|
|
|
@ -45,6 +45,7 @@ self:
|
||||||
stream = markBroken super.stream; # requires emacs-25
|
stream = markBroken super.stream; # requires emacs-25
|
||||||
cl-lib = null; # builtin
|
cl-lib = null; # builtin
|
||||||
tle = null; # builtin
|
tle = null; # builtin
|
||||||
|
advice = null; # builtin
|
||||||
};
|
};
|
||||||
|
|
||||||
elpaPackages = super // overrides;
|
elpaPackages = super // overrides;
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -133,11 +133,7 @@ self:
|
||||||
maxframe = markBroken super.maxframe;
|
maxframe = markBroken super.maxframe;
|
||||||
|
|
||||||
magit =
|
magit =
|
||||||
(super.magit.override {
|
super.magit.overrideAttrs (attrs: {
|
||||||
# version of magit-popup needs to match magit
|
|
||||||
# https://github.com/magit/magit/issues/3286
|
|
||||||
inherit (self.melpaPackages) magit-popup;
|
|
||||||
}).overrideAttrs (attrs: {
|
|
||||||
# searches for Git at build time
|
# searches for Git at build time
|
||||||
nativeBuildInputs =
|
nativeBuildInputs =
|
||||||
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
(attrs.nativeBuildInputs or []) ++ [ external.git ];
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,15 @@
|
||||||
|
Dump temacs in an empty environment to prevent -dev paths from ending
|
||||||
|
up in the dumped image.
|
||||||
|
|
||||||
|
diff -ru -x '*~' emacs-25.3/src/Makefile.in emacs-25.3-new/src/Makefile.in
|
||||||
|
--- emacs-25.3/src/Makefile.in 2017-04-14 17:02:47.000000000 +0200
|
||||||
|
+++ emacs-25.3-new/src/Makefile.in 2017-09-25 19:03:02.173861038 +0200
|
||||||
|
@@ -532,7 +532,7 @@
|
||||||
|
ifeq ($(CANNOT_DUMP),yes)
|
||||||
|
ln -f temacs$(EXEEXT) $@
|
||||||
|
else
|
||||||
|
- LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
|
||||||
|
+ env -i LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
|
||||||
|
ifneq ($(PAXCTL_dumped),)
|
||||||
|
$(PAXCTL_dumped) $@
|
||||||
|
endif
|
|
@ -1,13 +1,13 @@
|
||||||
Dump temacs in an empty environment to prevent -dev paths from ending
|
Dump temacs in an empty environment to prevent -dev paths from ending
|
||||||
up in the dumped image.
|
up in the dumped image.
|
||||||
|
|
||||||
diff -ru -x '*~' emacs-25.3/src/Makefile.in emacs-25.3-new/src/Makefile.in
|
diff --git a/src/Makefile.in b/src/Makefile.in
|
||||||
--- emacs-25.3/src/Makefile.in 2017-04-14 17:02:47.000000000 +0200
|
--- a/src/Makefile.in
|
||||||
+++ emacs-25.3-new/src/Makefile.in 2017-09-25 19:03:02.173861038 +0200
|
+++ b/src/Makefile.in
|
||||||
@@ -532,7 +532,7 @@
|
@@ -535,7 +535,7 @@ ifeq ($(CANNOT_DUMP),yes)
|
||||||
ifeq ($(CANNOT_DUMP),yes)
|
|
||||||
ln -f temacs$(EXEEXT) $@
|
ln -f temacs$(EXEEXT) $@
|
||||||
else
|
else
|
||||||
|
unset EMACS_HEAP_EXEC; \
|
||||||
- LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
|
- LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
|
||||||
+ env -i LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
|
+ env -i LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
|
||||||
ifneq ($(PAXCTL_dumped),)
|
ifneq ($(PAXCTL_dumped),)
|
||||||
|
|
|
@ -31,12 +31,12 @@ let
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "emacs-${version}${versionModifier}";
|
name = "emacs-${version}${versionModifier}";
|
||||||
version = "26.1";
|
version = "26.2";
|
||||||
versionModifier = "";
|
versionModifier = "";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnu/emacs/${name}.tar.xz";
|
url = "mirror://gnu/emacs/${name}.tar.xz";
|
||||||
sha256 = "0b6k1wq44rc8gkvxhi1bbjxbz3cwg29qbq8mklq2az6p1hjgrx0w";
|
sha256 = "13n5m60i47k96mpv5pp6km2ph9rv2m5lmbpzj929v02vpsfyc70m";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -44,13 +44,6 @@ stdenv.mkDerivation rec {
|
||||||
patches = [
|
patches = [
|
||||||
./clean-env.patch
|
./clean-env.patch
|
||||||
./tramp-detect-wrapped-gvfsd.patch
|
./tramp-detect-wrapped-gvfsd.patch
|
||||||
|
|
||||||
# should drop this at next package update
|
|
||||||
(fetchpatch {
|
|
||||||
name = "support-hunspell-1.7.0-in-ispell.el.patch";
|
|
||||||
url = "https://git.savannah.gnu.org/cgit/emacs.git/patch/?id=2925ce5a7ec1424cfaea9f2f86bd3cab27832584";
|
|
||||||
sha256 = "0w7cgw6zgr7phbivb98innps1rlqf5q2lhwkrwdmai8sbca5bd11";
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = lib.optionalString srcRepo ''
|
postPatch = lib.optionalString srcRepo ''
|
||||||
|
|
|
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "0f2wzdw2a3ac581322b2y79rlj3c9f33ddrq9allj97r1si6v5xk";
|
sha256 = "0f2wzdw2a3ac581322b2y79rlj3c9f33ddrq9allj97r1si6v5xk";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./clean-env.patch ];
|
patches = [ ./clean-env-macport.patch ];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
|
|
@ -4,14 +4,14 @@ with stdenv.lib;
|
||||||
|
|
||||||
pythonPackages.buildPythonApplication rec {
|
pythonPackages.buildPythonApplication rec {
|
||||||
pname = "neovim-remote";
|
pname = "neovim-remote";
|
||||||
version = "2.1.5";
|
version = "2.1.7";
|
||||||
disabled = !pythonPackages.isPy3k;
|
disabled = !pythonPackages.isPy3k;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mhinz";
|
owner = "mhinz";
|
||||||
repo = "neovim-remote";
|
repo = "neovim-remote";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1h05b68ka1ka217f6svq8yxvnscwf9sl5cx46c0b6ygcbz1vr3ba";
|
sha256 = "014c8xvb7shy00vjx0b1k8zr7iknxskqab1aqvz9md3bn5rwkxm5";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with pythonPackages; [ pynvim psutil ];
|
propagatedBuildInputs = with pythonPackages; [ pynvim psutil ];
|
||||||
|
|
|
@ -4,11 +4,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "okteta-${version}";
|
name = "okteta-${version}";
|
||||||
version = "0.26.0";
|
version = "0.26.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kde/stable/okteta/${version}/src/${name}.tar.xz";
|
url = "mirror://kde/stable/okteta/${version}/src/${name}.tar.xz";
|
||||||
sha256 = "0rxvbllisz4zl687zgpb9jj2nbxgfhhf2bj8bnsfaab5jb6jpi2y";
|
sha256 = "1bqq3ax47xym3ikwn6xsshs1b5gpfg5djrnkzszqnp127f1fxi54";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ qtscript extra-cmake-modules kdoctools ];
|
nativeBuildInputs = [ qtscript extra-cmake-modules kdoctools ];
|
||||||
|
|
|
@ -18,16 +18,16 @@ let
|
||||||
}.${system};
|
}.${system};
|
||||||
|
|
||||||
sha256 = {
|
sha256 = {
|
||||||
"i686-linux" = "0yfnsmixw3kh7lhb8npqhyihy146a31c1k90smn4kqvmlvm06jir";
|
"i686-linux" = "0n2k134yx0zirddi5xig4zihn73s8xiga11pwk90f01wp1i0hygg";
|
||||||
"x86_64-linux" = "002bbwj4hxr58lbhjc05s3l9aw37ak06kp98hs8fpmznjsa5x14y";
|
"x86_64-linux" = "0ljijcqfyrfck5imldis3hx9d9iacnspgnm58kvlziam8y0imwzv";
|
||||||
"x86_64-darwin" = "1f9hkydlyjh2z5d99pwpsqg9yf05pgi5y0mbprgbxacayqcrq2nr";
|
"x86_64-darwin" = "00fg106rggsbng90k1jjp1c6nmnwni5s0fgmbz6k45shfa3iqamc";
|
||||||
}.${system};
|
}.${system};
|
||||||
|
|
||||||
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
|
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "vscode-${version}";
|
name = "vscode-${version}";
|
||||||
version = "1.33.0";
|
version = "1.33.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
name = "VSCode_${version}_${plat}.${archive_fmt}";
|
name = "VSCode_${version}_${plat}.${archive_fmt}";
|
||||||
|
|
|
@ -10,12 +10,12 @@ let
|
||||||
[ qscintilla-qt5 gdal jinja2 numpy psycopg2
|
[ qscintilla-qt5 gdal jinja2 numpy psycopg2
|
||||||
chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ];
|
chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ];
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
version = "3.4.5";
|
version = "3.4.6";
|
||||||
name = "qgis-unwrapped-${version}";
|
name = "qgis-unwrapped-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://qgis.org/downloads/qgis-${version}.tar.bz2";
|
url = "http://qgis.org/downloads/qgis-${version}.tar.bz2";
|
||||||
sha256 = "0myw1jgz8v8wncmrjsszn9ixylx84hafn0281c4hqhz623n3lxgx";
|
sha256 = "1skdimcbcv41hi4ii7iq8ka29k2zizzqv04fwidzfbxqclz7300h";
|
||||||
};
|
};
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
|
|
|
@ -7,12 +7,12 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "2.6.1";
|
version = "2.6.2";
|
||||||
name = "darktable-${version}";
|
name = "darktable-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
|
url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
|
||||||
sha256 = "09ihbj0602spgc5lfbskf9am38n03gam2r8v3kj4dyfgxqr37ib3";
|
sha256 = "0igvgyd042j7hm4y8fcm6dc1qqjs4d1r7y6f0pzpa0x416xyzfcw";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ninja llvm pkgconfig intltool perl desktop-file-utils wrapGAppsHook ];
|
nativeBuildInputs = [ cmake ninja llvm pkgconfig intltool perl desktop-file-utils wrapGAppsHook ];
|
||||||
|
|
|
@ -1,48 +1,89 @@
|
||||||
{ stdenv
|
{ stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, cmake
|
, cmake
|
||||||
, qtbase
|
|
||||||
, qtsvg
|
|
||||||
, qtmultimedia
|
|
||||||
, qttools
|
|
||||||
, kdnssd
|
|
||||||
, karchive
|
|
||||||
, libsodium
|
|
||||||
, libmicrohttpd
|
|
||||||
, giflib
|
|
||||||
, miniupnpc
|
|
||||||
, extra-cmake-modules
|
, extra-cmake-modules
|
||||||
|
|
||||||
|
# common deps
|
||||||
|
, karchive
|
||||||
|
|
||||||
|
# client deps
|
||||||
|
, qtbase
|
||||||
|
, qtmultimedia
|
||||||
|
, qtsvg
|
||||||
|
, qttools
|
||||||
|
|
||||||
|
# optional client deps
|
||||||
|
, giflib
|
||||||
|
, kdnssd
|
||||||
, libvpx
|
, libvpx
|
||||||
|
, miniupnpc
|
||||||
|
, qtx11extras # kis
|
||||||
|
|
||||||
|
# optional server deps
|
||||||
|
, libmicrohttpd
|
||||||
|
, libsodium
|
||||||
|
|
||||||
|
# options
|
||||||
|
, buildClient ? true
|
||||||
|
, buildServer ? true
|
||||||
|
, buildServerGui ? true # if false builds a headless server
|
||||||
|
, buildExtraTools ? false
|
||||||
|
, enableKisTablet ? false # enable improved graphics tablet support
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
with stdenv.lib;
|
||||||
name = "drawpile-${version}";
|
|
||||||
version = "2.1.6";
|
let
|
||||||
src = fetchurl {
|
commonDeps = [
|
||||||
url = "https://drawpile.net/files/src/drawpile-${version}.tar.gz";
|
|
||||||
sha256 = "0vwsdvphigrq1daiazi411qflahlvgx8x8ssp581bng2lbq1vrbd";
|
|
||||||
};
|
|
||||||
nativeBuildInputs = [
|
|
||||||
extra-cmake-modules
|
|
||||||
];
|
|
||||||
buildInputs = [
|
|
||||||
# common deps:
|
|
||||||
cmake
|
|
||||||
qtbase qtsvg qtmultimedia qttools
|
|
||||||
karchive
|
karchive
|
||||||
# optional deps:
|
];
|
||||||
# server-specific:
|
clientDeps = [
|
||||||
libsodium # ext-auth support
|
qtbase
|
||||||
libmicrohttpd # HTTP admin api
|
qtmultimedia
|
||||||
# client-specific:
|
qtsvg
|
||||||
|
qttools
|
||||||
|
# optional:
|
||||||
giflib # gif animation export support
|
giflib # gif animation export support
|
||||||
miniupnpc # automatic port forwarding
|
|
||||||
kdnssd # local server discovery with Zeroconf
|
kdnssd # local server discovery with Zeroconf
|
||||||
libvpx # WebM video export
|
libvpx # WebM video export
|
||||||
|
miniupnpc # automatic port forwarding
|
||||||
|
];
|
||||||
|
serverDeps = [
|
||||||
|
# optional:
|
||||||
|
libmicrohttpd # HTTP admin api
|
||||||
|
libsodium # ext-auth support
|
||||||
|
];
|
||||||
|
kisDeps = [
|
||||||
|
qtx11extras
|
||||||
];
|
];
|
||||||
configurePhase = "cmake -DCMAKE_INSTALL_PREFIX=$out .";
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
in stdenv.mkDerivation rec {
|
||||||
|
name = "drawpile-${version}";
|
||||||
|
version = "2.1.7";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://drawpile.net/files/src/drawpile-${version}.tar.gz";
|
||||||
|
sha256 = "1nk1rb1syrlkxq7qs101ifaf012mq42nmq1dbkssnx6niydi3bbd";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
cmake
|
||||||
|
extra-cmake-modules
|
||||||
|
];
|
||||||
|
buildInputs =
|
||||||
|
commonDeps ++
|
||||||
|
optionals buildClient clientDeps ++
|
||||||
|
optionals buildServer serverDeps ++
|
||||||
|
optionals enableKisTablet kisDeps ;
|
||||||
|
|
||||||
|
cmakeFlags =
|
||||||
|
optional (!buildClient ) "-DCLIENT=off" ++
|
||||||
|
optional (!buildServer ) "-DSERVER=off" ++
|
||||||
|
optional (!buildServerGui ) "-DSERVERGUI=off" ++
|
||||||
|
optional ( buildExtraTools) "-DTOOLS=on" ++
|
||||||
|
optional ( enableKisTablet) "-DKIS_TABLET=on";
|
||||||
|
|
||||||
|
meta = {
|
||||||
description = "A collaborative drawing program that allows multiple users to sketch on the same canvas simultaneously";
|
description = "A collaborative drawing program that allows multiple users to sketch on the same canvas simultaneously";
|
||||||
homepage = https://drawpile.net/;
|
homepage = https://drawpile.net/;
|
||||||
downloadPage = https://drawpile.net/download/;
|
downloadPage = https://drawpile.net/download/;
|
||||||
|
|
|
@ -34,7 +34,7 @@ in pythonPackages.buildPythonApplication rec {
|
||||||
propagatedBuildInputs = with pythonPackages; [ pillow lxml pyGtkGlade pyexiv2 fbida ];
|
propagatedBuildInputs = with pythonPackages; [ pillow lxml pyGtkGlade pyexiv2 fbida ];
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = http://manatlan.com/jbrout/;
|
homepage = https://manatlan.com/jbrout/;
|
||||||
description = "Photo manager";
|
description = "Photo manager";
|
||||||
platforms = stdenv.lib.platforms.linux;
|
platforms = stdenv.lib.platforms.linux;
|
||||||
license = stdenv.lib.licenses.gpl2Plus;
|
license = stdenv.lib.licenses.gpl2Plus;
|
||||||
|
|
|
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Optimize JPEG files";
|
description = "Optimize JPEG files";
|
||||||
homepage = http://www.kokkonen.net/tjko/projects.html ;
|
homepage = https://www.kokkonen.net/tjko/projects.html ;
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
maintainers = [ maintainers.aristid ];
|
maintainers = [ maintainers.aristid ];
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
{ stdenv, fetchurl, python3Packages
|
{ stdenv, fetchurl, python3Packages
|
||||||
, file, intltool, gobject-introspection, libgudev
|
, file, intltool, gobject-introspection, libgudev
|
||||||
, udisks, glib, gnome3, gst_all_1, libnotify
|
, udisks, gexiv2, gst_all_1, libnotify
|
||||||
, exiv2, exiftool, qt5, gdk_pixbuf
|
, exiftool, gdk_pixbuf, libmediainfo
|
||||||
}:
|
}:
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "rapid-photo-downloader";
|
pname = "rapid-photo-downloader";
|
||||||
version = "0.9.13";
|
version = "0.9.14";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://launchpad.net/rapid/pyqt/${version}/+download/${pname}-${version}.tar.gz";
|
url = "https://launchpad.net/rapid/pyqt/${version}/+download/${pname}-${version}.tar.gz";
|
||||||
sha256 = "1517w18sxil1gwd78jjbbixcd1b0sp05imnnd5h5lr8wl3f0szj0";
|
sha256 = "1nywkkyxlpzq3s9anza9k67j5689pfclfha218frih36qdb0j258";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Disable version check and fix install tests
|
# Disable version check and fix install tests
|
||||||
|
@ -19,24 +19,34 @@ python3Packages.buildPythonApplication rec {
|
||||||
--replace "disable_version_check = False" "disable_version_check = True"
|
--replace "disable_version_check = False" "disable_version_check = True"
|
||||||
substituteInPlace raphodo/rescan.py \
|
substituteInPlace raphodo/rescan.py \
|
||||||
--replace "from preferences" "from raphodo.preferences"
|
--replace "from preferences" "from raphodo.preferences"
|
||||||
substituteInPlace raphodo/copyfiles.py \
|
|
||||||
--replace "import problemnotification" "import raphodo.problemnotification"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ file intltool gobject-introspection ];
|
nativeBuildInputs = [
|
||||||
|
file
|
||||||
|
intltool
|
||||||
|
];
|
||||||
|
|
||||||
|
# Package has no generally usable unit tests.
|
||||||
|
# The included doctests expect specific, hardcoded hardware to be present.
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
# NOTE: Without gobject-introspection in buildInputs, launching fails with
|
||||||
|
# "Namespace [Notify / GExiv2 / GUdev] not available"
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
libgudev
|
|
||||||
udisks
|
|
||||||
glib
|
|
||||||
gnome3.gexiv2
|
|
||||||
gst_all_1.gstreamer
|
|
||||||
libnotify
|
|
||||||
exiv2
|
|
||||||
exiftool
|
|
||||||
qt5.qtimageformats
|
|
||||||
gdk_pixbuf
|
gdk_pixbuf
|
||||||
] ++ (with python3Packages; [
|
gexiv2
|
||||||
|
gobject-introspection
|
||||||
|
gst_all_1.gst-libav
|
||||||
|
gst_all_1.gst-plugins-base
|
||||||
|
gst_all_1.gst-plugins-good
|
||||||
|
gst_all_1.gstreamer
|
||||||
|
gst_all_1.gstreamer.dev
|
||||||
|
libgudev
|
||||||
|
libnotify
|
||||||
|
udisks
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = with python3Packages; [
|
||||||
pyqt5
|
pyqt5
|
||||||
pygobject3
|
pygobject3
|
||||||
gphoto2
|
gphoto2
|
||||||
|
@ -54,11 +64,14 @@ python3Packages.buildPythonApplication rec {
|
||||||
requests
|
requests
|
||||||
colorlog
|
colorlog
|
||||||
pyprind
|
pyprind
|
||||||
]);
|
];
|
||||||
|
|
||||||
makeWrapperArgs = [
|
makeWrapperArgs = [
|
||||||
"--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\""
|
"--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\""
|
||||||
"--set PYTHONPATH \"$PYTHONPATH\""
|
"--set PYTHONPATH \"$PYTHONPATH\""
|
||||||
|
"--prefix PATH : ${stdenv.lib.makeBinPath [ exiftool ]}"
|
||||||
|
"--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ libmediainfo ]}"
|
||||||
|
"--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : \"$GST_PLUGIN_SYSTEM_PATH_1_0\""
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|
|
@ -21,7 +21,7 @@ in stdenv.mkDerivation {
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Enjoy the mysteries of the sea from the safety of your own terminal!";
|
description = "Enjoy the mysteries of the sea from the safety of your own terminal!";
|
||||||
homepage = https://robobunny.com/projects/asciiquarium/html;
|
homepage = https://robobunny.com/projects/asciiquarium/html/;
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
maintainers = [ maintainers.utdemir ];
|
maintainers = [ maintainers.utdemir ];
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
{ stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, autoreconfHook
|
||||||
|
, pkg-config
|
||||||
|
, perl
|
||||||
|
, fribidi
|
||||||
|
, kbd
|
||||||
|
, xkbutils
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "bicon";
|
||||||
|
version = "unstable-2018-09-10";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "behdad";
|
||||||
|
repo = pname;
|
||||||
|
rev = "38725c062a83ab19c4e4b4bc20eb9535561aa76c";
|
||||||
|
sha256 = "0hdslrci8pq300f3rrjsvl5psfrxdwyxf9g2m5g789sr049dksnq";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ fribidi kbd xkbutils perl ];
|
||||||
|
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
patchShebangs .
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "A bidirectional console";
|
||||||
|
homepage = https://github.com/behdad/bicon;
|
||||||
|
license = [ licenses.lgpl21 licenses.psfl licenses.bsd0 ];
|
||||||
|
maintainers = [ maintainers.linarcx ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "CopyQ-${version}";
|
name = "CopyQ-${version}";
|
||||||
version = "3.7.3";
|
version = "3.8.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "hluk";
|
owner = "hluk";
|
||||||
repo = "CopyQ";
|
repo = "CopyQ";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1nxxxq0lfs4r673i70dh2xwdn3chcjl913bkz14kyna29i6n1nwm";
|
sha256 = "0kbhgg0j6iqfrpixvwl1mk3m0bz5s8bd6npk5xqcgzp1giywdc4i";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ stdenv, fetchurl, makeDesktopItem, makeWrapper
|
{ stdenv, fetchurl, makeDesktopItem, makeWrapper
|
||||||
, fontconfig, freetype, glib, gtk2
|
, fontconfig, freetype, glib, gtk3
|
||||||
, jdk, libX11, libXrender, libXtst, zlib }:
|
, jdk, libX11, libXrender, libXtst, zlib }:
|
||||||
|
|
||||||
# The build process is almost like eclipse's.
|
# The build process is almost like eclipse's.
|
||||||
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "dbeaver-ce-${version}";
|
name = "dbeaver-ce-${version}";
|
||||||
version = "6.0.0";
|
version = "6.0.2";
|
||||||
|
|
||||||
desktopItem = makeDesktopItem {
|
desktopItem = makeDesktopItem {
|
||||||
name = "dbeaver";
|
name = "dbeaver";
|
||||||
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
fontconfig freetype glib gtk2
|
fontconfig freetype glib gtk3
|
||||||
jdk libX11 libXrender libXtst zlib
|
jdk libX11 libXrender libXtst zlib
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
|
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
|
||||||
sha256 = "1v7zvvphkyw7x5ziysk4gs2rpgc4dr108fn4ja80kijs1jmj5dxr";
|
sha256 = "12zqz9zi4jryvlk1rjxfl4jdj4a6n00018yyk95glfdrxda2xyib";
|
||||||
};
|
};
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
makeWrapper $out/dbeaver/dbeaver $out/bin/dbeaver \
|
makeWrapper $out/dbeaver/dbeaver $out/bin/dbeaver \
|
||||||
--prefix PATH : ${jdk}/bin \
|
--prefix PATH : ${jdk}/bin \
|
||||||
--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath ([ glib gtk2 libXtst ])} \
|
--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath ([ glib gtk3 libXtst ])} \
|
||||||
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
||||||
|
|
||||||
# Create desktop item.
|
# Create desktop item.
|
||||||
|
|
|
@ -1,25 +1,25 @@
|
||||||
{ stdenv, fetchFromGitHub, makeWrapper
|
{ stdenv, fetchFromGitHub, makeWrapper
|
||||||
, pkgconfig, which, perl, libXrandr
|
, pkgconfig, which, perl, libXrandr
|
||||||
, cairo, dbus, systemd, gdk_pixbuf, glib, libX11, libXScrnSaver
|
, cairo, dbus, systemd, gdk_pixbuf, glib, libX11, libXScrnSaver
|
||||||
, libXinerama, libnotify, libxdg_basedir, pango, xorgproto, librsvg, dunstify ? false
|
, libXinerama, libnotify, pango, xorgproto, librsvg, dunstify ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "dunst-${version}";
|
name = "dunst-${version}";
|
||||||
version = "1.3.2";
|
version = "1.4.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "dunst-project";
|
owner = "dunst-project";
|
||||||
repo = "dunst";
|
repo = "dunst";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1kqlshaflp306yrjjmc28pghi1y5p24vdx4bxf8i4n9khdawb514";
|
sha256 = "1rwbylygd88r61yrxc7ckg9svgq8b1i2falr0mk9sabqxzn9050s";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ perl pkgconfig which systemd makeWrapper ];
|
nativeBuildInputs = [ perl pkgconfig which systemd makeWrapper ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
cairo dbus gdk_pixbuf glib libX11 libXScrnSaver
|
cairo dbus gdk_pixbuf glib libX11 libXScrnSaver
|
||||||
libXinerama libnotify libxdg_basedir pango xorgproto librsvg libXrandr
|
libXinerama libnotify pango xorgproto librsvg libXrandr
|
||||||
];
|
];
|
||||||
|
|
||||||
outputs = [ "out" "man" ];
|
outputs = [ "out" "man" ];
|
||||||
|
|
|
@ -3,11 +3,11 @@ librsvg, glib, gtk2, libXext, libXxf86vm, poppler, xineLib, ghostscript, makeWra
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "eaglemode-${version}";
|
name = "eaglemode-${version}";
|
||||||
version = "0.94.0";
|
version = "0.94.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/eaglemode/${name}.tar.bz2";
|
url = "mirror://sourceforge/eaglemode/${name}.tar.bz2";
|
||||||
sha256 = "1sr3bd9y9j2svqvdwhrak29yy9cxf92w9vq2cim7a8hzwi9qfy9k";
|
sha256 = "0mpnk0fzy02jxbafipkdkj48m6k38h42j599gw4sdnag7ymlms89";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
name = "hugo-${version}";
|
name = "hugo-${version}";
|
||||||
version = "0.54.0";
|
version = "0.55.0";
|
||||||
|
|
||||||
goPackagePath = "github.com/gohugoio/hugo";
|
goPackagePath = "github.com/gohugoio/hugo";
|
||||||
|
|
||||||
|
@ -10,10 +10,10 @@ buildGoModule rec {
|
||||||
owner = "gohugoio";
|
owner = "gohugoio";
|
||||||
repo = "hugo";
|
repo = "hugo";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "01grfbr3kpd4qf5cbcmzc6yfq34cm0nkak4pqzgrn46r254y0ymv";
|
sha256 = "063z79m9rganzjzqvy7bg6b29m877asm5haxp0d5cb5ac7cx55rj";
|
||||||
};
|
};
|
||||||
|
|
||||||
modSha256 = "01gni3ksw9whf388c6cj0vcbpsyhdrwfl8cyw85kjx8r56dv88y5";
|
modSha256 = "0yrwkaaasj9ihjjfbywnzkppix1y2znagg3dkyikk21sl5n0nz23";
|
||||||
|
|
||||||
buildFlags = "-tags extended";
|
buildFlags = "-tags extended";
|
||||||
|
|
||||||
|
|
|
@ -1,17 +1,10 @@
|
||||||
{ lib, bundlerEnv, ruby
|
{ lib, bundlerApp, ruby
|
||||||
, withOptionalDependencies ? false
|
, withOptionalDependencies ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
# Bundix:
|
bundlerApp rec {
|
||||||
# nix-shell -p bundix zlib
|
|
||||||
bundlerEnv rec {
|
|
||||||
name = pname + "-" + version;
|
|
||||||
pname = "jekyll";
|
pname = "jekyll";
|
||||||
version = (import
|
exes = [ "jekyll" ];
|
||||||
(if withOptionalDependencies
|
|
||||||
then ./full/gemset.nix
|
|
||||||
else ./basic/gemset.nix))
|
|
||||||
.jekyll.version;
|
|
||||||
|
|
||||||
inherit ruby;
|
inherit ruby;
|
||||||
gemdir = if withOptionalDependencies
|
gemdir = if withOptionalDependencies
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "josm-${version}";
|
name = "josm-${version}";
|
||||||
version = "14760";
|
version = "14945";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
|
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
|
||||||
sha256 = "1ya05z3i37ynpaqrm99cirkbap03q7wgbbps2y95l7r2k9l4sxsi";
|
sha256 = "0kdfdn0i7gjfkkllb93598ywf0qlllzsia5q14szc5b5assl8qpb";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ jdk11 makeWrapper ];
|
buildInputs = [ jdk11 makeWrapper ];
|
||||||
|
|
|
@ -99,7 +99,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "An offline reader for Web content";
|
description = "An offline reader for Web content";
|
||||||
homepage = http://kiwix.org;
|
homepage = https://kiwix.org;
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
maintainers = with maintainers; [ robbinch ];
|
maintainers = with maintainers; [ robbinch ];
|
||||||
|
|
|
@ -3,12 +3,12 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "latte-dock";
|
pname = "latte-dock";
|
||||||
version = "0.8.6";
|
version = "0.8.8";
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.kde.org/stable/${pname}/${name}.tar.xz";
|
url = "https://download.kde.org/stable/${pname}/${name}.tar.xz";
|
||||||
sha256 = "1qzf9fkfkbv8vnc9p6lm7ya9hzydwk2f7671by9ij26f77lmxfb3";
|
sha256 = "137s7rx35a5qrfww3q8bllj4zyjfa7l709snvdfj34y7jbq7p6cd";
|
||||||
name = "${name}.tar.xz";
|
name = "${name}.tar.xz";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -7,11 +7,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "mlterm-${version}";
|
name = "mlterm-${version}";
|
||||||
version = "3.8.7";
|
version = "3.8.8";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/project/mlterm/01release/${name}/${name}.tar.gz";
|
url = "mirror://sourceforge/project/mlterm/01release/${name}/${name}.tar.gz";
|
||||||
sha256 = "10j7q7rk6ck86xl1898maxhgkp1h7vy7nliv9sk5bqgs7rdwn4kl";
|
sha256 = "1jq3fv2wqhszfipkzj8d0lykr6g0zzksn7xy4d3kwincmzfskv7k";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig autoconf ];
|
nativeBuildInputs = [ pkgconfig autoconf ];
|
||||||
|
|
|
@ -81,7 +81,7 @@ stdenv.mkDerivation rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = http://www.navit-project.org;
|
homepage = https://www.navit-project.org;
|
||||||
description = "Car navigation system with routing engine using OSM maps";
|
description = "Car navigation system with routing engine using OSM maps";
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
maintainers = [ maintainers.genesis ];
|
maintainers = [ maintainers.genesis ];
|
||||||
|
|
|
@ -102,5 +102,6 @@ in stdenv.mkDerivation {
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
maintainers = [ maintainers.a1russell ];
|
maintainers = [ maintainers.a1russell ];
|
||||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||||
|
broken = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,13 +25,14 @@ assert i3Support -> ! i3GapsSupport && jsoncpp != null && i3 != null;
|
||||||
assert i3GapsSupport -> ! i3Support && jsoncpp != null && i3-gaps != null;
|
assert i3GapsSupport -> ! i3Support && jsoncpp != null && i3-gaps != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "polybar-${version}";
|
pname = "polybar";
|
||||||
version = "3.3.0";
|
version = "3.3.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "jaagr";
|
owner = "jaagr";
|
||||||
repo = "polybar";
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "18hrsbq62na2i4rlwbs2ih7v9shnayg76nw14i6az28wpf8kx4rr";
|
sha256 = "0qwi6q3qkrz2ip1jd4pxlnsrs2a9ywxyf8rgvbzyilr334rsiywh";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
||||||
export SWORD_HOME=${sword};
|
export SWORD_HOME=${sword};
|
||||||
'';
|
'';
|
||||||
|
|
||||||
configureFlags= [ "--enable-webkit2" ];
|
wafConfigureFlags = [ "--enable-webkit2" ];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "A GTK Bible study tool";
|
description = "A GTK Bible study tool";
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -17,10 +17,10 @@ rec {
|
||||||
|
|
||||||
firefox = common rec {
|
firefox = common rec {
|
||||||
pname = "firefox";
|
pname = "firefox";
|
||||||
ffversion = "66.0.2";
|
ffversion = "66.0.3";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
|
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
|
||||||
sha512 = "1dzqzigrwb7q75zlyd74ncic3b39yvziccpgbzh7881lzshj7x6f2r6ssj8ssdkh8lm2ckhjzbn6pf44vlh8ciql9bxb8g8sjpg6ii2";
|
sha512 = "31pfzgys4dv4fskaasz47fviksjj9xp60r875q0i7z1n6kx25fzkpsg18a98fkqm3g8qmljccy93w68ysywnh1zzrv8djsaza7l0mz8";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
|
|
@ -8,12 +8,12 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "2.18";
|
version = "2.19";
|
||||||
name = "links2-${version}";
|
name = "links2-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/download/links-${version}.tar.bz2";
|
url = "${meta.homepage}/download/links-${version}.tar.bz2";
|
||||||
sha256 = "0mwhh61klicn2vwk39nc7y4cw4mygzdi2nljn4r0gjbw6jmw3337";
|
sha256 = "02ls11c02p7xvsdjyb43rrzr850i1yly003r812z0w5vv5yqqxbh";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = with stdenv.lib;
|
buildInputs = with stdenv.lib;
|
||||||
|
|
|
@ -117,7 +117,7 @@ in stdenv.mkDerivation {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = http://www.opera.com;
|
homepage = https://www.opera.com;
|
||||||
description = "Web browser";
|
description = "Web browser";
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
license = stdenv.lib.licenses.unfree;
|
license = stdenv.lib.licenses.unfree;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ stdenv, cmake, fetchFromGitHub
|
{ stdenv, cmake, fetchFromGitHub
|
||||||
, qtbase, qtmultimedia, qtwebengine
|
, qtbase, qtmultimedia, qtwebengine, qtxmlpatterns
|
||||||
, version ? "1.0.01"
|
, version ? "1.0.01"
|
||||||
, sourceSha ? "1jw8bj3lcqngr0mqwvz1gf47qjxbwiyda7x4sm96a6ckga7pcwyb"
|
, sourceSha ? "1jw8bj3lcqngr0mqwvz1gf47qjxbwiyda7x4sm96a6ckga7pcwyb"
|
||||||
}:
|
}:
|
||||||
|
@ -15,7 +15,7 @@ stdenv.mkDerivation {
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
buildInputs = [ qtbase qtmultimedia qtwebengine ];
|
buildInputs = [ qtbase qtmultimedia qtwebengine qtxmlpatterns ];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
homepage = https://otter-browser.org;
|
homepage = https://otter-browser.org;
|
||||||
|
|
|
@ -13,11 +13,11 @@
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "${product}-${version}";
|
name = "${product}-${version}";
|
||||||
product = "vivaldi";
|
product = "vivaldi";
|
||||||
version = "2.4.1488.36-1";
|
version = "2.4.1488.40-1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://downloads.vivaldi.com/stable/${product}-stable_${version}_amd64.deb";
|
url = "https://downloads.vivaldi.com/stable/${product}-stable_${version}_amd64.deb";
|
||||||
sha256 = "1m78kk1g3h6jsn3kk37ywx6w4x72690jwx4mgh1pzy37vfxwdqfh";
|
sha256 = "0w084mamy72v1kkfgg8nn2q3hmfj7v216kkvqb52f1nyycqqzb37";
|
||||||
};
|
};
|
||||||
|
|
||||||
unpackPhase = ''
|
unpackPhase = ''
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/env nix-shell
|
#!/usr/bin/env nix-shell
|
||||||
#!nix-shell -i bash -p libarchive curl common-updater-scripts
|
#!nix-shell -i bash -p libarchive curl common-updater-scripts
|
||||||
|
|
||||||
set -eu -o pipefail
|
set -xeu -o pipefail
|
||||||
|
|
||||||
cd "$(dirname "${BASH_SOURCE[0]}")"
|
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||||
root=../../../../..
|
root=../../../../..
|
||||||
|
@ -15,7 +15,7 @@ vivaldi_version_old=$(version vivaldi)
|
||||||
vivaldi_version=$(curl -sS https://vivaldi.com/download/ | sed -rne 's/.*vivaldi-stable_([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+-[0-9]+)_amd64\.deb.*/\1/p')
|
vivaldi_version=$(curl -sS https://vivaldi.com/download/ | sed -rne 's/.*vivaldi-stable_([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+-[0-9]+)_amd64\.deb.*/\1/p')
|
||||||
|
|
||||||
if [[ "$vivaldi_version" = "$vivaldi_version_old" ]]; then
|
if [[ "$vivaldi_version" = "$vivaldi_version_old" ]]; then
|
||||||
echo "nothing to do, vivaldi $vivaldi_version is current"
|
echo "vivaldi is already up-to-date"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -25,15 +25,22 @@ mapfile -t prefetch < <(nix-prefetch-url --print-path "$url")
|
||||||
hash=${prefetch[0]}
|
hash=${prefetch[0]}
|
||||||
path=${prefetch[1]}
|
path=${prefetch[1]}
|
||||||
|
|
||||||
echo "vivaldi: $vivaldi_version_old -> $vivaldi_version"
|
nixpkgs="$(git rev-parse --show-toplevel)"
|
||||||
echo "$path"
|
default_nix="$nixpkgs/pkgs/applications/networking/browsers/vivaldi/default.nix"
|
||||||
|
ffmpeg_nix="$nixpkgs/pkgs/applications/networking/browsers/vivaldi/ffmpeg-codecs.nix"
|
||||||
|
|
||||||
(cd "$root" && update-source-version vivaldi "$vivaldi_version" "$hash")
|
(cd "$root" && update-source-version vivaldi "$vivaldi_version" "$hash")
|
||||||
|
|
||||||
|
git add "${default_nix}"
|
||||||
|
git commit -m "vivaldi: ${vivaldi_version_old} -> ${vivaldi_version}"
|
||||||
|
|
||||||
# Check vivaldi-ffmpeg-codecs version.
|
# Check vivaldi-ffmpeg-codecs version.
|
||||||
chromium_version_old=$(version vivaldi-ffmpeg-codecs)
|
chromium_version_old=$(version vivaldi-ffmpeg-codecs)
|
||||||
chromium_version=$(bsdtar xOf "$path" data.tar.xz | bsdtar xOf - ./opt/vivaldi/vivaldi-bin | strings | grep '^[0-9]\{2,\}\.[0-9]\+\.[0-9]\{4,\}\+\.[0-9]\+$')
|
chromium_version=$(bsdtar xOf "$path" data.tar.xz | bsdtar xOf - ./opt/vivaldi/vivaldi-bin | strings | grep '^[0-9]\{2,\}\.[0-9]\+\.[0-9]\{4,\}\+\.[0-9]\+$')
|
||||||
|
|
||||||
if [[ "$chromium_version" != "$chromium_version_old" ]]; then
|
if [[ "$chromium_version" != "$chromium_version_old" ]]; then
|
||||||
echo "vivaldi-ffmpeg-codecs: $chromium_version_old -> $chromium_version"
|
|
||||||
(cd "$root" && update-source-version vivaldi-ffmpeg-codecs "$chromium_version")
|
(cd "$root" && update-source-version vivaldi-ffmpeg-codecs "$chromium_version")
|
||||||
|
|
||||||
|
git add "${ffmpeg_nix}"
|
||||||
|
git commit -m "vivaldi-ffmepg-codecs: $chromium_version_old -> $chromium_version"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -57,8 +57,8 @@ let
|
||||||
|
|
||||||
in rec {
|
in rec {
|
||||||
charles4 = (generic {
|
charles4 = (generic {
|
||||||
version = "4.2.7";
|
version = "4.2.8";
|
||||||
sha256 = "1nycw3wpbfwj4ijjaq5k0f4xipj8j605fs0yjzgl66gmv7r583rd";
|
sha256 = "1jzjdhzxgrq7pdfryfkg0hsjpyni14ma4x8jbdk1rqll78ccr080";
|
||||||
});
|
});
|
||||||
charles3 = (generic {
|
charles3 = (generic {
|
||||||
version = "3.12.3";
|
version = "3.12.3";
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue