Project import generated by Copybara.

GitOrigin-RevId: 733e537a8ad76fd355b6f501127f7d0eb8861775
This commit is contained in:
Default email 2020-12-29 10:07:52 -05:00
parent eb9d9f54a5
commit bb1914a1ab
204 changed files with 3288 additions and 1916 deletions

View file

@ -8,13 +8,22 @@ on:
jobs:
tests:
runs-on: ubuntu-latest
if: github.repository_owner == 'NixOS'
steps:
- name: Get list of changed files from PR
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
echo 'PR_DIFF<<EOF' >> $GITHUB_ENV
gh api \
repos/NixOS/nixpkgs/pulls/${{github.event.number}}/files --paginate \
| jq '.[] | select(.status != "removed") | .filename' \
>> $GITHUB_ENV
echo 'EOF' >> $GITHUB_ENV
- uses: actions/checkout@v2
with:
fetch-depth: 0
- uses: technote-space/get-diff-action@v4.0.0
if: env.PR_DIFF
- name: Fetch editorconfig-checker
if: env.GIT_DIFF
if: env.PR_DIFF
env:
ECC_VERSION: "2.2.0"
ECC_URL: "https://github.com/editorconfig-checker/editorconfig-checker/releases/download"
@ -23,7 +32,6 @@ jobs:
tar xzf ec-linux-amd64.tar.gz && \
mv ./bin/ec-linux-amd64 ./bin/editorconfig-checker
- name: Checking EditorConfig
if: env.GIT_DIFF
if: env.PR_DIFF
run: |
./bin/editorconfig-checker -disable-indent-size \
${{ env.GIT_DIFF }}
echo "$PR_DIFF" | xargs ./bin/editorconfig-checker -disable-indent-size

View file

@ -0,0 +1,56 @@
on:
issue_comment:
types:
- created
# This action allows people with write access to the repo to rebase a PRs base branch from
# master to staging by commenting `/rebase-staging` on the PR while avoiding CODEOWNER notifications.
jobs:
rebase:
runs-on: ubuntu-latest
if: github.repository_owner == 'NixOS' && github.event.issue.pull_request != '' && contains(github.event.comment.body, '/rebase-staging')
steps:
- uses: scherermichael-oss/action-has-permission@1.0.6
id: check-write-access
with:
required-permission: write
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: check base branch is master
if: steps.check-write-access.outputs.has-permission
run: |
if [ "$(curl https://api.github.com/repos/NixOS/nixpkgs/pulls/${{ github.event.issue.number }} | jq -r '.base.ref')" != "master" ]; then
echo "This action only works when the current base branch is master."
exit 1
fi
- uses: actions/checkout@v2
with:
fetch-depth: 0
if: steps.check-write-access.outputs.has-permission
- name: rebase pull request
if: steps.check-write-access.outputs.has-permission
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PULL_REQUEST: ${{ github.event.issue.number }}
run: |
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
git config --global user.name "github-actions[bot]"
git fetch origin
gh pr checkout "$PULL_REQUEST"
git rebase \
--onto="$(git merge-base origin/master origin/staging)" \
"HEAD~$(git rev-list --count HEAD ^master)"
git push --force
curl \
-X POST \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token $GITHUB_TOKEN" \
-d '{ "base": "staging" }' \
"https://api.github.com/repos/NixOS/nixpkgs/pulls/$PULL_REQUEST"
- uses: peter-evans/create-or-update-comment@v1
if: ${{ failure() }}
with:
issue-number: ${{ github.event.issue.number }}
body: |
[Failed to rebase on `staging`](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }})

View file

@ -7333,6 +7333,12 @@
githubId = 14829269;
name = "Ram Kromberg";
};
ranfdev = {
email = "ranfdev@gmail.com";
name = "Lorenzo Miglietta";
github = "ranfdev";
githubId = 23294184;
};
rardiol = {
email = "ricardo.ardissone@gmail.com";
github = "rardiol";
@ -9794,6 +9800,12 @@
githubId = 1322201;
name = "Yochai";
};
yoctocell = {
email = "public@yoctocell.xyz";
github = "yoctocell";
githubId = 40352765;
name = "Yoctocell";
};
yorickvp = {
email = "yorickvanpelt@gmail.com";
github = "yorickvp";

View file

@ -268,7 +268,7 @@ chmod 400 /var/lib/secrets/certs.secret
<para>
It is possible that your account credentials file may become corrupt and need
to be regnerated. In this scenario lego will produce the error <literal>JWS verification error</literal>.
to be regenerated. In this scenario lego will produce the error <literal>JWS verification error</literal>.
The solution is to simply delete the associated accounts file and
re-run the affected service(s).
</para>

View file

@ -26,5 +26,11 @@ in {
if cfg.extraConfig != ""
then pkgs.writeText "lenovo_fix.conf" cfg.extraConfig
else "${pkgs.throttled}/etc/lenovo_fix.conf";
# Kernel 5.9 spams warnings whenever userspace writes to CPU MSRs.
# See https://github.com/erpalma/throttled/issues/215
boot.kernelParams =
optional (versionAtLeast config.boot.kernelPackages.kernel.version "5.9")
"msr.allow_writes=on";
};
}

View file

@ -47,7 +47,7 @@ in {
services.udev.packages = [ pkgs.trezor-udev-rules ];
systemd.services.trezord = {
description = "TREZOR Bridge";
description = "Trezor Bridge";
after = [ "systemd-udev-settle.service" "network.target" ];
wantedBy = [ "multi-user.target" ];
path = [];

View file

@ -32,6 +32,8 @@ let
(pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg.rules))
]);
scrape_configs = filterValidPrometheus cfg.scrapeConfigs;
remote_write = filterValidPrometheus cfg.remoteWrite;
remote_read = filterValidPrometheus cfg.remoteRead;
alerting = {
inherit (cfg) alertmanagers;
};
@ -101,6 +103,126 @@ let
};
};
promTypes.remote_read = types.submodule {
options = {
url = mkOption {
type = types.str;
description = ''
ServerName extension to indicate the name of the server.
http://tools.ietf.org/html/rfc4366#section-3.1
'';
};
remote_timeout = mkDefOpt types.str "30s" ''
Timeout for requests to the remote write endpoint.
'';
relabel_configs = mkOpt (types.listOf promTypes.relabel_config) ''
List of remote write relabel configurations.
List of relabel configurations.
'';
name = mkOpt types.string ''
Name of the remote write config, which if specified must be unique among remote write configs.
The name will be used in metrics and logging in place of a generated value to help users distinguish between
remote write configs.
'';
basic_auth = mkOpt (types.submodule {
options = {
username = mkOption {
type = types.str;
description = ''
HTTP username
'';
};
password = mkOpt types.str "HTTP password";
password_file = mkOpt types.str "HTTP password file";
};
}) ''
Sets the `Authorization` header on every remote write request with the
configured username and password.
password and password_file are mutually exclusive.
'';
bearer_token = mkOpt types.str ''
Sets the `Authorization` header on every remote write request with
the configured bearer token. It is mutually exclusive with `bearer_token_file`.
'';
bearer_token_file = mkOpt types.str ''
Sets the `Authorization` header on every remote write request with the bearer token
read from the configured file. It is mutually exclusive with `bearer_token`.
'';
tls_config = mkOpt promTypes.tls_config ''
Configures the remote write request's TLS settings.
'';
proxy_url = mkOpt types.str "Optional Proxy URL.";
metadata_config = {
send = mkDefOpt types.bool "true" ''
Whether metric metadata is sent to remote storage or not.
'';
send_interval = mkDefOpt types.str "1m" ''
How frequently metric metadata is sent to remote storage.
'';
};
};
};
promTypes.remote_write = types.submodule {
options = {
url = mkOption {
type = types.str;
description = ''
ServerName extension to indicate the name of the server.
http://tools.ietf.org/html/rfc4366#section-3.1
'';
};
remote_timeout = mkDefOpt types.str "30s" ''
Timeout for requests to the remote write endpoint.
'';
relabel_configs = mkOpt (types.listOf promTypes.relabel_config) ''
List of remote write relabel configurations.
List of relabel configurations.
'';
name = mkOpt types.string ''
Name of the remote write config, which if specified must be unique among remote write configs.
The name will be used in metrics and logging in place of a generated value to help users distinguish between
remote write configs.
'';
basic_auth = mkOpt (types.submodule {
options = {
username = mkOption {
type = types.str;
description = ''
HTTP username
'';
};
password = mkOpt types.str "HTTP password";
password_file = mkOpt types.str "HTTP password file";
};
}) ''
Sets the `Authorization` header on every remote write request with the
configured username and password.
password and password_file are mutually exclusive.
'';
bearer_token = mkOpt types.str ''
Sets the `Authorization` header on every remote write request with
the configured bearer token. It is mutually exclusive with `bearer_token_file`.
'';
bearer_token_file = mkOpt types.str ''
Sets the `Authorization` header on every remote write request with the bearer token
read from the configured file. It is mutually exclusive with `bearer_token`.
'';
tls_config = mkOpt promTypes.tls_config ''
Configures the remote write request's TLS settings.
'';
proxy_url = mkOpt types.str "Optional Proxy URL.";
metadata_config = {
send = mkDefOpt types.bool "true" ''
Whether metric metadata is sent to remote storage or not.
'';
send_interval = mkDefOpt types.str "1m" ''
How frequently metric metadata is sent to remote storage.
'';
};
};
};
promTypes.scrape_config = types.submodule {
options = {
job_name = mkOption {
@ -580,6 +702,24 @@ in {
'';
};
remoteRead = mkOption {
type = types.listOf promTypes.remote_read;
default = [];
description = ''
Parameters of the endpoints to query from.
See <link xlink:href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_read">the official documentation</link> for more information.
'';
};
remoteWrite = mkOption {
type = types.listOf promTypes.remote_write;
default = [];
description = ''
Parameters of the endpoints to send samples to.
See <link xlink:href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_write">the official documentation</link> for more information.
'';
};
rules = mkOption {
type = types.listOf types.str;
default = [];

View file

@ -3,7 +3,7 @@
let
inherit (lib) mkDefault mkEnableOption mkForce mkIf mkMerge mkOption types;
inherit (lib) literalExample mapAttrs optionalString;
inherit (lib) literalExample mapAttrs optionalString versionAtLeast;
cfg = config.services.zabbixWeb;
fpm = config.services.phpfpm.pools.zabbix;
@ -28,6 +28,8 @@ let
$ZBX_SERVER_PORT = '${toString cfg.server.port}';
$ZBX_SERVER_NAME = ''';
$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
${cfg.extraConfig}
'';
in
@ -143,6 +145,14 @@ in
'';
};
extraConfig = mkOption {
type = types.lines;
default = "";
description = ''
Additional configuration to be copied verbatim into <filename>zabbix.conf.php</filename>.
'';
};
};
};
@ -150,6 +160,10 @@ in
config = mkIf cfg.enable {
services.zabbixWeb.extraConfig = optionalString ((versionAtLeast config.system.stateVersion "20.09") && (versionAtLeast cfg.package.version "5.0.0")) ''
$DB['DOUBLE_IEEE754'] = 'true';
'';
systemd.tmpfiles.rules = [
"d '${stateDir}' 0750 ${user} ${group} - -"
"d '${stateDir}/session' 0750 ${user} ${config.services.httpd.group} - -"

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
with lib;
let
xcfg = config.services.xserver;
dmcfg = xcfg.displayManager;
cfg = dmcfg.sddm;
@ -11,87 +9,86 @@ let
sddm = pkgs.libsForQt5.sddm;
xserverWrapper = pkgs.writeScript "xserver-wrapper" ''
#!/bin/sh
iniFmt = pkgs.formats.ini { };
xserverWrapper = pkgs.writeShellScript "xserver-wrapper" ''
${concatMapStrings (n: "export ${n}=\"${getAttr n xEnv}\"\n") (attrNames xEnv)}
exec systemd-cat -t xserver-wrapper ${dmcfg.xserverBin} ${toString dmcfg.xserverArgs} "$@"
'';
Xsetup = pkgs.writeScript "Xsetup" ''
#!/bin/sh
Xsetup = pkgs.writeShellScript "Xsetup" ''
${cfg.setupScript}
${dmcfg.setupCommands}
'';
Xstop = pkgs.writeScript "Xstop" ''
#!/bin/sh
Xstop = pkgs.writeShellScript "Xstop" ''
${cfg.stopScript}
'';
cfgFile = pkgs.writeText "sddm.conf" ''
[General]
HaltCommand=/run/current-system/systemd/bin/systemctl poweroff
RebootCommand=/run/current-system/systemd/bin/systemctl reboot
${optionalString cfg.autoNumlock ''
Numlock=on
''}
defaultConfig = {
General = {
HaltCommand = "/run/current-system/systemd/bin/systemctl poweroff";
RebootCommand = "/run/current-system/systemd/bin/systemctl reboot";
Numlock = if cfg.autoNumlock then "on" else "none"; # on, off none
};
[Theme]
Current=${cfg.theme}
ThemeDir=/run/current-system/sw/share/sddm/themes
FacesDir=/run/current-system/sw/share/sddm/faces
Theme = {
Current = cfg.theme;
ThemeDir = "/run/current-system/sw/share/sddm/themes";
FacesDir = "/run/current-system/sw/share/sddm/faces";
};
[Users]
MaximumUid=${toString config.ids.uids.nixbld}
HideUsers=${concatStringsSep "," dmcfg.hiddenUsers}
HideShells=/run/current-system/sw/bin/nologin
Users = {
MaximumUid = config.ids.uids.nixbld;
HideUsers = concatStringsSep "," dmcfg.hiddenUsers;
HideShells = "/run/current-system/sw/bin/nologin";
};
[X11]
MinimumVT=${toString (if xcfg.tty != null then xcfg.tty else 7)}
ServerPath=${xserverWrapper}
XephyrPath=${pkgs.xorg.xorgserver.out}/bin/Xephyr
SessionCommand=${dmcfg.sessionData.wrapper}
SessionDir=${dmcfg.sessionData.desktops}/share/xsessions
XauthPath=${pkgs.xorg.xauth}/bin/xauth
DisplayCommand=${Xsetup}
DisplayStopCommand=${Xstop}
EnableHidpi=${boolToString cfg.enableHidpi}
X11 = {
MinimumVT = if xcfg.tty != null then xcfg.tty else 7;
ServerPath = toString xserverWrapper;
XephyrPath = "${pkgs.xorg.xorgserver.out}/bin/Xephyr";
SessionCommand = toString dmcfg.sessionData.wrapper;
SessionDir = "${dmcfg.sessionData.desktops}/share/xsessions";
XauthPath = "${pkgs.xorg.xauth}/bin/xauth";
DisplayCommand = toString Xsetup;
DisplayStopCommand = toString Xstop;
EnableHiDPI = cfg.enableHidpi;
};
[Wayland]
EnableHidpi=${boolToString cfg.enableHidpi}
SessionDir=${dmcfg.sessionData.desktops}/share/wayland-sessions
Wayland = {
EnableHiDPI = cfg.enableHidpi;
SessionDir = "${dmcfg.sessionData.desktops}/share/wayland-sessions";
};
} // lib.optionalAttrs dmcfg.autoLogin.enable {
Autologin = {
User = dmcfg.autoLogin.user;
Session = autoLoginSessionName;
Relogin = cfg.autoLogin.relogin;
};
};
${optionalString dmcfg.autoLogin.enable ''
[Autologin]
User=${dmcfg.autoLogin.user}
Session=${autoLoginSessionName}.desktop
Relogin=${boolToString cfg.autoLogin.relogin}
''}
cfgFile =
iniFmt.generate "sddm.conf" (lib.recursiveUpdate defaultConfig cfg.settings);
${cfg.extraConfig}
'';
autoLoginSessionName = dmcfg.sessionData.autologinSession;
autoLoginSessionName =
"${dmcfg.sessionData.autologinSession}.desktop";
in
{
imports = [
(mkRemovedOptionModule [ "services" "xserver" "displayManager" "sddm" "themes" ]
(mkRemovedOptionModule
[ "services" "xserver" "displayManager" "sddm" "themes" ]
"Set the option `services.xserver.displayManager.sddm.package' instead.")
(mkRenamedOptionModule [ "services" "xserver" "displayManager" "sddm" "autoLogin" "enable" ] [
"services"
"xserver"
"displayManager"
"autoLogin"
"enable"
])
(mkRenamedOptionModule [ "services" "xserver" "displayManager" "sddm" "autoLogin" "user" ] [
"services"
"xserver"
"displayManager"
"autoLogin"
"user"
])
(mkRenamedOptionModule
[ "services" "xserver" "displayManager" "sddm" "autoLogin" "enable" ]
[ "services" "xserver" "displayManager" "autoLogin" "enable" ])
(mkRenamedOptionModule
[ "services" "xserver" "displayManager" "sddm" "autoLogin" "user" ]
[ "services" "xserver" "displayManager" "autoLogin" "user" ])
(mkRemovedOptionModule
[ "services" "xserver" "displayManager" "sddm" "extraConfig" ]
"Set the option `services.xserver.displayManager.sddm.settings' instead.")
];
options = {
@ -110,22 +107,22 @@ in
default = true;
description = ''
Whether to enable automatic HiDPI mode.
</para>
<para>
Versions up to 0.17 are broken so this only works from 0.18 onwards.
'';
};
extraConfig = mkOption {
type = types.lines;
default = "";
settings = mkOption {
type = iniFmt.type;
default = { };
example = ''
[Autologin]
User=john
Session=plasma.desktop
{
Autologin = {
User = "john";
Session = "plasma.desktop";
};
}
'';
description = ''
Extra lines appended to the configuration of SDDM.
Extra settings merged in and overwritting defaults in sddm.conf.
'';
};
@ -168,28 +165,38 @@ in
};
# Configuration for automatic login specific to SDDM
autoLogin.relogin = mkOption {
type = types.bool;
default = false;
description = ''
If true automatic login will kick in again on session exit (logout), otherwise it
will only log in automatically when the display-manager is started.
'';
autoLogin = {
relogin = mkOption {
type = types.bool;
default = false;
description = ''
If true automatic login will kick in again on session exit (logout), otherwise it
will only log in automatically when the display-manager is started.
'';
};
minimumUid = mkOption {
type = types.ints.u16;
default = 1000;
description = ''
Minimum user ID for auto-login user.
'';
};
};
};
};
config = mkIf cfg.enable {
assertions = [
{ assertion = xcfg.enable;
{
assertion = xcfg.enable;
message = ''
SDDM requires services.xserver.enable to be true
'';
}
{ assertion = dmcfg.autoLogin.enable -> autoLoginSessionName != null;
{
assertion = dmcfg.autoLogin.enable -> autoLoginSessionName != null;
message = ''
SDDM auto-login requires that services.xserver.displayManager.defaultSession is set.
'';
@ -230,7 +237,7 @@ in
sddm-autologin.text = ''
auth requisite pam_nologin.so
auth required pam_succeed_if.so uid >= 1000 quiet
auth required pam_succeed_if.so uid >= ${toString cfg.autoLogin.minimumUid} quiet
auth required pam_permit.so
account include sddm

View file

@ -5,25 +5,37 @@ let
inherit (lib) mkOption mkIf optionals literalExample;
cfg = config.services.xserver.windowManager.xmonad;
ghcWithPackages = cfg.haskellPackages.ghcWithPackages;
packages = self: cfg.extraPackages self ++
optionals cfg.enableContribAndExtras
[ self.xmonad-contrib self.xmonad-extras ];
xmonad-vanilla = pkgs.xmonad-with-packages.override {
ghcWithPackages = cfg.haskellPackages.ghcWithPackages;
packages = self: cfg.extraPackages self ++
optionals cfg.enableContribAndExtras
[ self.xmonad-contrib self.xmonad-extras ];
inherit ghcWithPackages packages;
};
xmonad-config = pkgs.writers.writeHaskellBin "xmonad" {
ghc = cfg.haskellPackages.ghc;
libraries = [ cfg.haskellPackages.xmonad ] ++
cfg.extraPackages cfg.haskellPackages ++
optionals cfg.enableContribAndExtras
(with cfg.haskellPackages; [ xmonad-contrib xmonad-extras ]);
inherit (cfg) ghcArgs;
} cfg.config;
xmonad-config =
let
xmonadAndPackages = self: [ self.xmonad ] ++ packages self;
xmonadEnv = ghcWithPackages xmonadAndPackages;
configured = pkgs.writers.writeHaskellBin "xmonad" {
ghc = cfg.haskellPackages.ghc;
libraries = xmonadAndPackages cfg.haskellPackages;
inherit (cfg) ghcArgs;
} cfg.config;
in
pkgs.runCommandLocal "xmonad" {
nativeBuildInputs = [ pkgs.makeWrapper ];
} ''
install -D ${xmonadEnv}/share/man/man1/xmonad.1.gz $out/share/man/man1/xmonad.1.gz
makeWrapper ${configured}/bin/xmonad $out/bin/xmonad \
--set NIX_GHC "${xmonadEnv}/bin/ghc" \
--set XMONAD_XMESSAGE "${pkgs.xorg.xmessage}/bin/xmessage"
'';
xmonad = if (cfg.config != null) then xmonad-config else xmonad-vanilla;
in {
meta.maintainers = with maintainers; [ lassulus xaverdh ];
meta.maintainers = with maintainers; [ lassulus xaverdh ivanbrennan ];
options = {
services.xserver.windowManager.xmonad = {
@ -72,13 +84,13 @@ in {
This setup is then analogous to other (non-NixOS) linux distributions.
If you do set this option, you likely want to use "launch" as your
entry point for xmonad (as in the example), to avoid xmonads
entry point for xmonad (as in the example), to avoid xmonad's
recompilation logic on startup. Doing so will render the default
"mod+q" restart key binding dysfunctional though, because that attempts
to call your binary with the "--restart" command line option, unless
you implement that yourself. You way mant to bind "mod+q" to
<literal>(restart "xmonad" True)</literal> instead, which will just restart
xmonad from PATH. This allows e.g. switching to the new xmonad binary,
xmonad from PATH. This allows e.g. switching to the new xmonad binary
after rebuilding your system with nixos-rebuild.
If you actually want to run xmonad with a config specified here, but
@ -91,6 +103,7 @@ in {
example = ''
import XMonad
import XMonad.Util.EZConfig (additionalKeys)
import Control.Monad (when)
import Text.Printf (printf)
import System.Posix.Process (executeFile)
import System.Info (arch,os)
@ -99,16 +112,21 @@ in {
compiledConfig = printf "xmonad-%s-%s" arch os
compileRestart = whenX (recompile True) . catchIO $ do
dir <- getXMonadDataDir
args <- getArgs
executeFile (dir </> compiledConfig) False args Nothing
compileRestart resume =
whenX (recompile True) $
when resume writeStateToFile
*> catchIO
( do
dir <- getXMonadDataDir
args <- getArgs
executeFile (dir </> compiledConfig) False args Nothing
)
main = launch defaultConfig
{ modMask = mod4Mask -- Use Super instead of Alt
, terminal = "urxvt" }
`additionalKeys`
[ ( (mod4Mask,xK_r), compileRestart )
[ ( (mod4Mask,xK_r), compileRestart True)
, ( (mod4Mask,xK_q), restart "xmonad" True ) ]
'';
};

View file

@ -46,7 +46,9 @@ import ./make-test-python.nix ({ lib, pkgs, ... }:
machine.wait_for_open_port(9080)
machine.succeed("echo 'Loki Ingestion Test' > /var/log/testlog")
# should not have access to journal unless specified
machine.fail("systemctl show --property=SupplementaryGroups promtail | grep -q systemd-journal")
machine.fail(
"systemctl show --property=SupplementaryGroups promtail | grep -q systemd-journal"
)
machine.wait_until_succeeds(
"${pkgs.grafana-loki}/bin/logcli --addr='http://localhost:3100' query --no-labels '{job=\"varlogs\",filename=\"/var/log/testlog\"}' | grep -q 'Loki Ingestion Test'"
)

View file

@ -21,15 +21,16 @@ stdenv.mkDerivation rec {
preConfigure = "./autogen.sh";
postInstall = ''
postInstall = lib.optionalString stdenv.isLinux ''
patchelf --set-rpath "$(patchelf --print-rpath $out/bin/espeak-ng)" $out/bin/speak-ng
'';
meta = with stdenv.lib; {
description = "Open source speech synthesizer that supports over 70 languages, based on eSpeak";
homepage = src.meta.homepage;
homepage = "https://github.com/espeak-ng/espeak-ng";
changelog = "https://github.com/espeak-ng/espeak-ng/blob/${version}/CHANGELOG.md";
license = licenses.gpl3;
maintainers = with maintainers; [ aske ];
platforms = platforms.linux;
platforms = platforms.all;
};
}

View file

@ -2,21 +2,18 @@
python3Packages.buildPythonApplication rec {
pname = "mopidy-tunein";
version = "1.0.0";
version = "1.0.2";
src = python3Packages.fetchPypi {
inherit version;
pname = "Mopidy-TuneIn";
sha256 = "0insasf4w8ajsqjh5zmax7pkzmrk1p245vh4y8ddicldj45p6qfj";
sha256 = "1mvfhka8wi835yk9869yn3b6mdkfwqkylp14vpjkbm42d0kj4lkc";
};
propagatedBuildInputs = [
mopidy
];
# tests fail with "ValueError: Namespace Gst not available" in mopidy itself
doCheck = false;
pythonImportsCheck = [ "mopidy_tunein.tunein" ];
meta = with stdenv.lib; {

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, unzip, mpg123 }:
{ stdenv, fetchurl, fetchpatch, unzip, mpg123 }:
stdenv.mkDerivation {
name = "mp3gain-1.6.2";
@ -11,17 +11,25 @@ stdenv.mkDerivation {
sourceRoot = ".";
patches = [
(fetchpatch {
name = "0001-fix-security-bugs.patch";
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-sound/mp3gain/files/mp3gain-1.6.2-CVE-2019-18359-plus.patch?id=36f8689f7903548f5d89827a6e7bdf70a9882cee";
sha256 = "10n53wm0xynlcxqlnaqfgamjzcpfz41q1jlg0bhw4kq1kzhs4yyw";
})
];
buildFlags = [ "OSTYPE=linux" ];
installPhase = ''
install -vD mp3gain "$out/bin/mp3gain"
'';
meta = {
meta = with stdenv.lib; {
description = "Lossless mp3 normalizer with statistical analysis";
homepage = "http://mp3gain.sourceforge.net/";
license = stdenv.lib.licenses.lgpl21;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.devhell ];
license = licenses.lgpl21;
platforms = platforms.linux;
maintainers = with maintainers; [ devhell ];
};
}

View file

@ -1,5 +1,5 @@
{ fetchurl, stdenv, pkgconfig, intltool, libpulseaudio, gtkmm3
, libcanberra-gtk3, gnome3, wrapGAppsHook }:
{ fetchurl, fetchpatch, stdenv, pkgconfig, intltool, libpulseaudio,
gtkmm3 , libcanberra-gtk3, gnome3, wrapGAppsHook }:
stdenv.mkDerivation rec {
pname = "pavucontrol";
@ -10,6 +10,15 @@ stdenv.mkDerivation rec {
sha256 = "1qhlkl3g8d7h72xjskii3g1l7la2cavwp69909pzmbi2jyn5pi4g";
};
patches = [
# Can be removed with the next version bump
# https://gitlab.freedesktop.org/pulseaudio/pavucontrol/-/merge_requests/20
(fetchpatch {
name = "streamwidget-fix-drop-down-wayland.patch";
url = "https://gitlab.freedesktop.org/pulseaudio/pavucontrol/-/commit/ae278b8643cf1089f66df18713c8154208d9a505.patch";
sha256 = "066vhxjz6gmi2sp2n4pa1cdsxjnq6yml5js094g5n7ld34p84dpj";
})];
buildInputs = [ libpulseaudio gtkmm3 libcanberra-gtk3
gnome3.adwaita-icon-theme ];

View file

@ -8,13 +8,13 @@
stdenv.mkDerivation rec {
pname = "pt2-clone";
version = "1.26_fix";
version = "1.27";
src = fetchFromGitHub {
owner = "8bitbubsy";
repo = "pt2-clone";
rev = "v${version}";
sha256 = "1ikhgagniiq4irsy8i3g64m6cl61lnfvs163n8gs4hm426yckyb8";
sha256 = "1hg36pfzgdbhd5bkzi3cpn6v39q8xis2jk7w6qm615r587393pwd";
};
nativeBuildInputs = [ cmake ];

View file

@ -5,8 +5,6 @@
, installShellFiles
, flac
, sox
, withAucdtect ? false
, aucdtect ? null
}:
stdenv.mkDerivation rec {
@ -36,7 +34,7 @@ stdenv.mkDerivation rec {
postFixup = ''
wrapProgram $out/bin/redoflacs \
--prefix PATH : ${stdenv.lib.makeBinPath ([ flac sox ] ++ lib.optional withAucdtect aucdtect)}
--prefix PATH : ${stdenv.lib.makeBinPath ([ flac sox ])}
'';
meta = with lib; {

View file

@ -0,0 +1,39 @@
{ stdenv
, fetchsvn
, pkg-config
, which
, autoconf
, automake
, libtool
, hexdump
, libao
, zlib
, curl
}:
stdenv.mkDerivation rec {
pname = "sc68";
version = "unstable-2020-05-18";
src = fetchsvn {
url = "svn://svn.code.sf.net/p/sc68/code/";
rev = "693";
sha256 = "0liz5yjwiy41y160ag83zz9s5l8mk72fscxgvjv9g5qf4gwffnfa";
};
preConfigure = "tools/svn-bootstrap.sh";
enableParallelBuilding = true;
nativeBuildInputs = [ pkg-config which autoconf automake libtool hexdump ];
buildInputs = [ libao zlib curl ];
meta = with stdenv.lib; {
description = "Atari ST and Amiga music player";
homepage = "http://sc68.atari.org/project.html";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ OPNA2608 ];
platforms = platforms.all;
};
}

View file

@ -2,12 +2,12 @@
let
pname = "ledger-live-desktop";
version = "2.18.0";
version = "2.19.0";
name = "${pname}-${version}";
src = fetchurl {
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
sha256 = "19sx9n5mij68v07vy65h1c16rgbpll3kagr437cjb7r95k3nk2zn";
sha256 = "13z4v64z58b8fxph3rgjqy1z1y2agmarfr8cihlkf0ndssicasdl";
};
appimageContents = appimageTools.extractType2 {

View file

@ -260,7 +260,7 @@ rec {
src = fetchzip {
stripRoot = false;
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/10.1/${name}/${name}.zip";
sha256 = "q0O6OE2u0bdz1+nOkzXDrrOOzoEbVaXnejx4lX7uZgk=";
sha256 = "1hbswcar3a5cw20mwrj82w9pvpkvvj6jrvqqf1lincva0r5sl7h8";
};
meta = with stdenv.lib; {

View file

@ -27,3 +27,11 @@ sed -i "s/x86_64-linux = \".\{52\}\"/x86_64-linux = \"${VSCODE_LINUX_SHA256}\"/"
VSCODE_DARWIN_URL="https://vscode-update.azurewebsites.net/${VSCODE_VER}/darwin/stable"
VSCODE_DARWIN_SHA256=$(nix-prefetch-url ${VSCODE_DARWIN_URL})
sed -i "s/x86_64-darwin = \".\{52\}\"/x86_64-darwin = \"${VSCODE_DARWIN_SHA256}\"/" "$ROOT/vscode.nix"
VSCODE_LINUX_AARCH64_URL="https://vscode-update.azurewebsites.net/${VSCODE_VER}/linux-arm64/stable"
VSCODE_LINUX_AARCH64_SHA256=$(nix-prefetch-url ${VSCODE_LINUX_AARCH64_URL})
sed -i "s/aarch64-linux = \".\{52\}\"/aarch64-linux = \"${VSCODE_LINUX_AARCH64_SHA256}\"/" "$ROOT/vscode.nix"
VSCODE_LINUX_ARMV7L_URL="https://vscode-update.azurewebsites.net/${VSCODE_VER}/linux-armhf/stable"
VSCODE_LINUX_ARMV7L_SHA256=$(nix-prefetch-url ${VSCODE_LINUX_ARMV7L_URL})
sed -i "s/armv7l-linux = \".\{52\}\"/armv7l-linux = \"${VSCODE_LINUX_ARMV7L_SHA256}\"/" "$ROOT/vscode.nix"

View file

@ -19,10 +19,18 @@ fi
VSCODIUM_VER=$(curl -Ls -w %{url_effective} -o /dev/null https://github.com/VSCodium/vscodium/releases/latest | awk -F'/' '{print $NF}')
sed -i "s/version = \".*\"/version = \"${VSCODIUM_VER}\"/" "$ROOT/vscodium.nix"
VSCODIUM_LINUX_URL="https://github.com/VSCodium/vscodium/releases/download/${VSCODIUM_VER}/VSCodium-linux-x64-${VSCODIUM_VER}.tar.gz"
VSCODIUM_LINUX_SHA256=$(nix-prefetch-url ${VSCODIUM_LINUX_URL})
sed -i "s/x86_64-linux = \".\{52\}\"/x86_64-linux = \"${VSCODIUM_LINUX_SHA256}\"/" "$ROOT/vscodium.nix"
VSCODIUM_LINUX_X64_URL="https://github.com/VSCodium/vscodium/releases/download/${VSCODIUM_VER}/VSCodium-linux-x64-${VSCODIUM_VER}.tar.gz"
VSCODIUM_LINUX_X64_SHA256=$(nix-prefetch-url ${VSCODIUM_LINUX_X64_URL})
sed -i "s/x86_64-linux = \".\{52\}\"/x86_64-linux = \"${VSCODIUM_LINUX_X64_SHA256}\"/" "$ROOT/vscodium.nix"
VSCODIUM_DARWIN_URL="https://github.com/VSCodium/vscodium/releases/download/${VSCODIUM_VER}/VSCodium-darwin-x64-${VSCODIUM_VER}.zip"
VSCODIUM_DARWIN_SHA256=$(nix-prefetch-url ${VSCODIUM_DARWIN_URL})
sed -i "s/x86_64-darwin = \".\{52\}\"/x86_64-darwin = \"${VSCODIUM_DARWIN_SHA256}\"/" "$ROOT/vscodium.nix"
VSCODIUM_DARWIN_X64_URL="https://github.com/VSCodium/vscodium/releases/download/${VSCODIUM_VER}/VSCodium-darwin-x64-${VSCODIUM_VER}.zip"
VSCODIUM_DARWIN_X64_SHA256=$(nix-prefetch-url ${VSCODIUM_DARWIN_X64_URL})
sed -i "s/x86_64-darwin = \".\{52\}\"/x86_64-darwin = \"${VSCODIUM_DARWIN_X64_SHA256}\"/" "$ROOT/vscodium.nix"
VSCODIUM_LINUX_AARCH64_URL="https://github.com/VSCodium/vscodium/releases/download/${VSCODIUM_VER}/VSCodium-linux-arm64-${VSCODIUM_VER}.tar.gz"
VSCODIUM_LINUX_AARCH64_SHA256=$(nix-prefetch-url ${VSCODIUM_LINUX_AARCH64_URL})
sed -i "s/aarch64-linux = \".\{52\}\"/aarch64-linux = \"${VSCODIUM_LINUX_AARCH64_SHA256}\"/" "$ROOT/vscodium.nix"
VSCODIUM_LINUX_ARMV7L_URL="https://github.com/VSCodium/vscodium/releases/download/${VSCODIUM_VER}/VSCodium-linux-armhf-${VSCODIUM_VER}.tar.gz"
VSCODIUM_LINUX_ARMV7L_SHA256=$(nix-prefetch-url ${VSCODIUM_LINUX_ARMV7L_URL})
sed -i "s/armv7l-linux = \".\{52\}\"/armv7l-linux = \"${VSCODIUM_LINUX_ARMV7L_SHA256}\"/" "$ROOT/vscodium.nix"

View file

@ -6,6 +6,8 @@ let
plat = {
x86_64-linux = "linux-x64";
x86_64-darwin = "darwin";
aarch64-linux = "linux-arm64";
armv7l-linux = "linux-armhf";
}.${system};
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
@ -13,6 +15,8 @@ let
sha256 = {
x86_64-linux = "1kbjbqb03yapz7067q589gaa7d6cqaipj7hmp1l3nh0bmggzsc4c";
x86_64-darwin = "1qgadm52c5lzkvgvqrz0n8brm4qbjg8hf1dk6a2ynqhqjxcwbj4r";
aarch64-linux = "0i3yl9rx9h7qkl3k9qk6gg35nhz737qzzbvzvdwkqjaacsbpfgf8";
armv7l-linux = "19iz2bxcq6y8sklr6zcnbp47kki9l00x3nvr213lkk3kj08l0afv";
}.${system};
in
callPackage ./generic.nix rec {
@ -52,6 +56,6 @@ in
downloadPage = "https://code.visualstudio.com/Updates";
license = licenses.unfree;
maintainers = with maintainers; [ eadwu synthetica ];
platforms = [ "x86_64-linux" "x86_64-darwin" ];
platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "armv7l-linux" ];
};
}

View file

@ -6,18 +6,24 @@ let
plat = {
x86_64-linux = "linux-x64";
x86_64-darwin = "darwin";
aarch64-linux = "linux-arm64";
armv7l-linux = "linux-armhf";
}.${system};
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = {
x86_64-linux = "0hn4pqmabz3qf3bbqnn1fz7fcgzdkp2lwr2yzgmx8hhh3cff8bnb";
x86_64-darwin = "1x3wx0d99ihyya0n89qclc3jlhh0m72hs8hj7l0h3z6zmh6q2vzv";
x86_64-linux = "1ckg279vvg8h1n8ippa9vlyw4vk3frinb6fvvi47zggs31168m7b";
x86_64-darwin = "168g34v2b8r1pdbnqrs0c0k9aa60n5rspixziywnq7m61i23nlgd";
aarch64-linux = "1cd4sg6k7sqmj3yzmprq1rz928bvc3zrch8agfd8zfap1d6nfaal";
armv7l-linux = "0f8z4lws027dyqhcrkzm9rvifwid5m0icprg0xk01l7y18n3q923";
}.${system};
sourceRoot = {
x86_64-linux = ".";
x86_64-darwin = "";
aarch64-linux = ".";
armv7l-linux = ".";
}.${system};
in
callPackage ./generic.nix rec {
@ -27,7 +33,7 @@ in
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.51.1";
version = "1.52.1";
pname = "vscodium";
executableName = "codium";
@ -55,6 +61,6 @@ in
downloadPage = "https://github.com/VSCodium/vscodium/releases";
license = licenses.mit;
maintainers = with maintainers; [ synthetica turion ];
platforms = [ "x86_64-linux" "x86_64-darwin" ];
platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "armv7l-linux" ];
};
}

View file

@ -7,12 +7,12 @@
}:
stdenv.mkDerivation rec {
version = "3.2.1";
version = "3.4.0";
pname = "darktable";
src = fetchurl {
url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
sha256 = "035rvqmw386hm0jpi14lf4dnpr5rjkalzjkyprqh42nwi3m86dkf";
sha256 = "6dd3de1f5ea9f94af92838c0be5ff30fdaa599aa1d737dcb562f9e0b2b2dbdda";
};
nativeBuildInputs = [ cmake ninja llvm pkgconfig intltool perl desktop-file-utils wrapGAppsHook ];

View file

@ -20,6 +20,17 @@ buildGoModule rec {
-ldflags=-s -w -X github.com/tomwright/dasel/internal.Version=${version}
'';
doInstallCheck = true;
installCheckPhase = ''
if [[ "$("$out/bin/${pname}" --version)" == "${pname} version ${version}" ]]; then
echo "" | $out/bin/dasel put object -p yaml -t string -t int "my.favourites" colour=red number=3 | grep -q red
echo '${pname} smoke check passed'
else
echo '${pname} smoke check failed'
return 1
fi
'';
meta = with stdenv.lib; {
description = "Query and update data structures from the command line";
longDescription = ''

View file

@ -19,7 +19,7 @@
}:
let
version = "4.0.7";
version = "4.0.9";
libsecp256k1_name =
if stdenv.isLinux then "libsecp256k1.so.0"
@ -35,7 +35,7 @@ let
owner = "spesmilo";
repo = "electrum";
rev = version;
sha256 = "06vcbj9p96d8v4xjlygzr74lqllb9adn8k0racajzq61ijb0imi2";
sha256 = "0cmdyfabllw4wnpqpdxp3l6hjnm0cvkwxn0z8ph4x54sf4zq9iz3";
extraPostFetch = ''
mv $out ./all
@ -50,7 +50,7 @@ python3.pkgs.buildPythonApplication {
src = fetchurl {
url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
sha256 = "0k5xf97ga3ixd02g1y6v84hbxd8yhvpj5iz2rhxs8wfnkfwibzh4";
sha256 = "1fvjiagi78f32nxgr2rx8jas8hxfvpp1c8fpfcalvykmlhdc2gva";
};
postUnpack = ''

View file

@ -2,11 +2,11 @@
buildPythonApplication rec {
pname = "gallery_dl";
version = "1.16.0";
version = "1.16.1";
src = fetchPypi {
inherit pname version;
sha256 = "35df7605a21a05c3290f4324289fd6f584029f4135a8220dec7d490c4e742a1c";
sha256 = "51d789aac43013e25c1fad553f214cb1f43b1ae02e0651b640f102c5b9280aea";
};
propagatedBuildInputs = [ requests ];

View file

@ -2,13 +2,13 @@
mkDerivation rec {
pname = "gpxsee";
version = "7.37";
version = "8.0";
src = fetchFromGitHub {
owner = "tumic0";
repo = "GPXSee";
rev = version;
sha256 = "0fpb43smh0kwic5pdxs46c0hkqj8g084h72pa024x1my6w12y9b8";
sha256 = "01ggakpzmiwkqdzc9xqc93xmynd53kzpwl99q3l9z2hpqyzlnj2a";
};
patches = (substituteAll {
@ -37,7 +37,7 @@ mkDerivation rec {
'';
homepage = "https://www.gpxsee.org/";
changelog = "https://build.opensuse.org/package/view_file/home:tumic:GPXSee/gpxsee/gpxsee.changes";
license = licenses.gpl3;
license = licenses.gpl3Only;
maintainers = with maintainers; [ womfoo sikmir ];
platforms = with platforms; linux ++ darwin;
};

View file

@ -1,18 +1,18 @@
diff --git i/src/GUI/app.cpp w/src/GUI/app.cpp
index 10e84d5..1e0abbe 100644
index 37e9d3f..d4a065c 100644
--- i/src/GUI/app.cpp
+++ w/src/GUI/app.cpp
@@ -34,11 +34,10 @@ App::App(int &argc, char **argv) : QApplication(argc, argv)
installTranslator(gpxsee);
@@ -35,11 +35,10 @@ App::App(int &argc, char **argv) : QApplication(argc, argv)
installTranslator(gpxsee);
QTranslator *qt = new QTranslator(this);
-#if defined(Q_OS_WIN32) || defined(Q_OS_MAC)
+#if defined(Q_OS_WIN32)
qt->load(QLocale::system(), "qt", "_", ProgramPaths::translationsDir());
if (qt->load(QLocale::system(), "qt", "_", ProgramPaths::translationsDir()))
#else // Q_OS_WIN32 || Q_OS_MAC
- qt->load(QLocale::system(), "qt", "_", QLibraryInfo::location(
- QLibraryInfo::TranslationsPath));
+ qt->load(QLocale::system(), "qt", "_", QLatin1String("@qttranslations@/translations"));
- if (qt->load(QLocale::system(), "qt", "_", QLibraryInfo::location(
- QLibraryInfo::TranslationsPath)))
+ if (qt->load(QLocale::system(), "qt", "_", QLatin1String("@qttranslations@/translations")))
#endif // Q_OS_WIN32 || Q_OS_MAC
installTranslator(qt);
installTranslator(qt);

View file

@ -11,12 +11,12 @@
let font-droid = nerdfonts.override { fonts = [ "DroidSansMono" ]; };
in stdenv.mkDerivation rec {
pname = "koreader";
version = "2020.11";
version = "2020.12";
src = fetchurl {
url =
"https://github.com/koreader/koreader/releases/download/v${version}/koreader-${version}-amd64.deb";
sha256 = "15nw8kyjyhqlr742gkpzn1b9906rdm6cssnc6jbbph5pjdlzspc4";
sha256 = "0x97mm7h8kr1jps0hzdgl9irakma85ikrhzr18wc1plmffgv6kwm";
};
sourceRoot = ".";
@ -47,6 +47,6 @@ in stdenv.mkDerivation rec {
"An ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices";
platforms = intersectLists platforms.x86_64 platforms.linux;
license = licenses.agpl3;
maintainers = [ maintainers.contrun ];
maintainers = with maintainers; [ contrun neonfuz];
};
}

View file

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = with pythonPackages; [ pyenchant regex ];
postFixup = ''
buildPythonPath "$out"
wrapPythonPrograms
'';
meta = with stdenv.lib; {

View file

@ -0,0 +1,34 @@
{ stdenv
, fetchFromGitLab
, rustPlatform
, pkg-config
, openssl
, sqlite
, libiconv
, Security
}:
rustPlatform.buildRustPackage rec {
pname = "terminal-typeracer";
version = "2.0.2";
src = fetchFromGitLab {
owner = "ttyperacer";
repo = pname;
rev = "v${version}";
sha256 = "187xrqxalk2gxa22ki5q092llvliddrsc68cg4dvvy2xzq254jfy";
};
cargoSha256 = "0ky8m23fjjbv7fr9776fjczpg0d43jxwnjxjpwz56jpynwnihfkl";
buildInputs = [ openssl sqlite ] ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
nativeBuildInputs = [ pkg-config ];
meta = with stdenv.lib; {
description = "An open source terminal based version of Typeracer written in rust";
homepage = "https://gitlab.com/ttyperacer/terminal-typeracer";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ yoctocell ];
platforms = platforms.x86_64;
};
}

View file

@ -6,11 +6,11 @@
stdenv.mkDerivation rec {
pname = "upwork";
version = "5.4.7.1";
version = "5.4.9.6";
src = fetchurl {
url = "https://updates-desktopapp.upwork.com/binaries/v5_4_7_1_81f361962c74427d/${pname}_5.4.7.1_amd64.deb";
sha256 = "c443724d37bca942ca126b8b207846a5adb94a92ff9490370f2fe055feee347b";
url = "https://upwork-usw2-desktopapp.upwork.com/binaries/v5_4_9_6_2565cdd0547940a2/${pname}_${version}_amd64.deb";
sha256 = "ff6246b3b4a1ed79cc9bca2934652fefb40bdac4b7e95997f3a46e354ce52456";
};
dontWrapGApps = true;

View file

@ -1,31 +1,28 @@
{
fehSupport ? false, feh
, imagemagickSupport ? true, imagemagick
, stdenv
, lib
{ stdenv, lib, fetchFromGitHub
, python37Packages
, fetchFromGitHub
, fehSupport ? false, feh
, imagemagickSupport ? true, imagemagick
, intltool
, gtk3
, gexiv2
, libnotify
, wrapGAppsHook
, gobject-introspection
, hicolor-icon-theme
, librsvg
, wrapGAppsHook
}:
with python37Packages;
buildPythonApplication rec {
pname = "variety";
version = "0.7.2-96-g3afe3ab";
version = "0.8.5";
src = fetchFromGitHub {
owner = "varietywalls";
repo = "variety";
rev = "3afe3abf725e5db2aec0db575a17c9907ab20de1";
sha256 = "10vw0202dwrwi497nsbq077v4qd3qn5b8cmkfcsgbvvjwlz7ldm5";
rev = version;
sha256 = "sha256-6dLz4KXavXwnk5GizBH46d2EHMHPjRo0WnnUuVMtI1M=";
};
nativeBuildInputs = [ intltool wrapGAppsHook ];
@ -43,31 +40,43 @@ buildPythonApplication rec {
--replace /bin/bash ${stdenv.shell}
'';
propagatedBuildInputs =
[ gtk3
gexiv2
libnotify
beautifulsoup4
lxml
pycairo
pygobject3
configobj
pillow
setuptools
requests
httplib2
dbus-python
gobject-introspection
hicolor-icon-theme
librsvg
]
++ lib.optional fehSupport feh
propagatedBuildInputs = [
beautifulsoup4
configobj
dbus-python
gexiv2
gobject-introspection
gtk3
hicolor-icon-theme
httplib2
libnotify
librsvg
lxml
pillow
pycairo
pygobject3
requests
setuptools
] ++ lib.optional fehSupport feh
++ lib.optional imagemagickSupport imagemagick;
meta = with lib; {
description = "A wallpaper manager for Linux systems. It supports numerous desktops and wallpaper sources, including local files and online services: Flickr, Wallhaven, Unsplash, and more";
homepage = "https://github.com/varietywalls/variety";
description = "A wallpaper manager for Linux systems";
longDescription = ''
Variety is a wallpaper manager for Linux systems. It supports numerous
desktops and wallpaper sources, including local files and online services:
Flickr, Wallhaven, Unsplash, and more.
Where supported, Variety sits as a tray icon to allow easy pausing and
resuming. Otherwise, its desktop entry menu provides a similar set of
options.
Variety also includes a range of image effects, such as oil painting and
blur, as well as options to layer quotes and a clock onto the background.
'';
license = licenses.gpl3;
maintainers = [ maintainers.zfnmxt ];
maintainers = with maintainers; [ AndersonTorres zfnmxt ];
platforms = with platforms; linux;
};
}

View file

@ -7,10 +7,10 @@ in
rec {
firefox = common rec {
pname = "firefox";
ffversion = "84.0";
ffversion = "84.0.1";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
sha512 = "37d5hc2wv1b6il4flgsw5g7ihw2jx3qrrmgm4cjg3lmk91q8k7908sy79z24na6529y7jxpj4m05l6yb850wnnwjhyc4c3vxqbldnba";
sha512 = "0sl93h7pjiznabv6865pdbal08nlqncnv3g40l02mgwbphjh5iqrr1bz14khaf58h4v1la090cj7z0gmd0c10xfrx6z7wngm152zz75";
};
meta = {

View file

@ -1,6 +1,6 @@
{ stdenv, lib, fetchFromGitHub, writeScript, desktop-file-utils
, pkgconfig, autoconf213, alsaLib, bzip2, cairo
, dbus, dbus-glib, ffmpeg_3, file, fontconfig, freetype
, pkg-config, autoconf213, alsaLib, bzip2, cairo
, dbus, dbus-glib, ffmpeg, file, fontconfig, freetype
, gnome2, gnum4, gtk2, hunspell, libevent, libjpeg
, libnotify, libstartup_notification, wrapGAppsHook
, libGLU, libGL, perl, python2, libpulseaudio
@ -11,19 +11,19 @@
let
libPath = lib.makeLibraryPath [ ffmpeg_3 libpulseaudio ];
libPath = lib.makeLibraryPath [ ffmpeg libpulseaudio ];
gtkVersion = if withGTK3 then "3" else "2";
in stdenv.mkDerivation rec {
pname = "palemoon";
version = "28.16.0";
version = "28.17.0";
src = fetchFromGitHub {
githubBase = "repo.palemoon.org";
owner = "MoonchildProductions";
repo = "Pale-Moon";
rev = "${version}_Release";
sha256 = "1svwbiar7c38c8xfw249mwnvayqq5868nkks7cbv9nyf2m9yap56";
sha256 = "0478xn5skpls91hkraykc308hppdc8vj9xbgvlm5wkv0y4dp7h5x";
fetchSubmodules = true;
};
@ -43,11 +43,11 @@ in stdenv.mkDerivation rec {
'';
nativeBuildInputs = [
desktop-file-utils file gnum4 perl pkgconfig python2 wget which wrapGAppsHook
desktop-file-utils file gnum4 perl pkg-config python2 wget which wrapGAppsHook
];
buildInputs = [
alsaLib bzip2 cairo dbus dbus-glib ffmpeg_3 fontconfig freetype
alsaLib bzip2 cairo dbus dbus-glib ffmpeg fontconfig freetype
gnome2.GConf gtk2 hunspell libevent libjpeg libnotify
libstartup_notification libGLU libGL
libpulseaudio unzip yasm zip zlib
@ -61,7 +61,7 @@ in stdenv.mkDerivation rec {
enableParallelBuilding = true;
configurePhase = ''
export MOZCONFIG=$(pwd)/mozconfig
export MOZCONFIG=$PWD/mozconfig
export MOZ_NOSPAM=1
# Keep this similar to the official .mozconfig file,
@ -114,18 +114,18 @@ in stdenv.mkDerivation rec {
'
'';
buildPhase = "$src/mach build";
buildPhase = "./mach build";
installPhase = ''
$src/mach install
./mach install
desktop-file-install --dir=$out/share/applications \
$src/palemoon/branding/official/palemoon.desktop
./palemoon/branding/official/palemoon.desktop
for iconname in default{16,22,24,32,48,256} mozicon128; do
n=''${iconname//[^0-9]/}
size=$n"x"$n
install -Dm644 $src/palemoon/branding/official/$iconname.png $out/share/icons/hicolor/$size/apps/palemoon.png
install -Dm644 ./palemoon/branding/official/$iconname.png $out/share/icons/hicolor/$size/apps/palemoon.png
done
'';

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "qbec";
version = "0.12.1";
version = "0.12.2";
src = fetchFromGitHub {
owner = "splunk";
repo = "qbec";
rev = "v${version}";
sha256 = "1g90z155nhcblr48qypw8qw3l8g4dz33iflv4cg4xrhwjp8dfbv9";
sha256 = "10bf9ja44n1gzhb5znqbmr1xjc87akrsdyxfvrz4f5bd3p1fh6j0";
};
vendorSha256 = "15hbjghi2ifylg7nr85qlk0alsy97h9zj6hf5w84m76dla2bcjf3";
vendorSha256 = "0xkmccm6cyw1p5mah7psbpfsfaw8f09r1a2k4iksfggrn9mimaam";
doCheck = false;

View file

@ -52,7 +52,7 @@
mkDerivation rec {
pname = "linphone-desktop";
version = "4.2.4";
version = "4.2.5";
src = fetchFromGitLab {
domain = "gitlab.linphone.org";
@ -175,13 +175,12 @@ mkDerivation rec {
ln -s ${liblinphone}/share/belr/grammars/* $out/share/belr/grammars/
mkdir -p $out/share/linphone
ln -s ${liblinphone}/share/linphone/* $out/share/linphone/
mkdir $out/lib # prevent warning
'';
meta = with lib; {
homepage = "https://www.linphone.org/";
description = "Open source SIP phone for voice/video calls and instant messaging";
license = licenses.gpl3;
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ jluttine ];
};

View file

@ -1,23 +1,30 @@
{ mkDerivation, stdenv, fetchFromGitLab
, pkgconfig, wrapQtAppsHook
{ mkDerivation
, stdenv
, fetchFromGitLab
, pkg-config
, cmake
, qtbase, qttools, qtquickcontrols2, qtmultimedia, qtkeychain
, libpulseaudio
# Not mentioned but seems needed
, qtbase
, qttools
, qtquickcontrols2
, qtmultimedia
, qtgraphicaleffects
, qtdeclarative
, qtmacextras
, olm, libsecret, cmark, extra-cmake-modules, kirigami2, ki18n, knotifications, kdbusaddons, kconfig, libquotient
, KQuickImageEdit, kitemmodels
, qtkeychain
, libpulseaudio
, olm
, libsecret
, cmark
, extra-cmake-modules
, kirigami2
, kitemmodels
, ki18n
, knotifications
, kdbusaddons
, kconfig
, libquotient
, kquickimageedit
}:
let
qtkeychain-qt5 = qtkeychain.override {
inherit qtbase qttools;
withQt5 = true;
};
in mkDerivation rec {
mkDerivation rec {
pname = "neochat";
version = "v1.0";
@ -29,13 +36,31 @@ in mkDerivation rec {
sha256 = "1r9n83kvc5v215lzmzh6hyc5q9i3w6znbf508qk0mdwdzxz4zry9";
};
nativeBuildInputs = [ pkgconfig cmake extra-cmake-modules wrapQtAppsHook ];
buildInputs = [ qtbase qtkeychain-qt5 qtquickcontrols2 qtmultimedia qtgraphicaleffects qtdeclarative olm libsecret cmark kirigami2 ki18n knotifications kdbusaddons kconfig libquotient KQuickImageEdit kitemmodels libpulseaudio ];
nativeBuildInputs = [ cmake extra-cmake-modules pkg-config ];
buildInputs = [
qtkeychain
qtquickcontrols2
qtmultimedia
qtgraphicaleffects
olm
libsecret
cmark
kirigami2
kitemmodels
ki18n
knotifications
kdbusaddons
kconfig
libquotient
kquickimageedit
libpulseaudio
];
meta = with stdenv.lib; {
description = "A client for matrix, the decentralized communication protocol.";
homepage = "https://apps.kde.org/en/neochat";
license = licenses.gpl3;
license = licenses.gpl3Only;
platforms = with platforms; linux;
};
}

View file

@ -1,11 +1,11 @@
{ autoPatchelfHook, electron_4, fetchurl, makeDesktopItem, makeWrapper, nodePackages, nss, stdenv, xdg_utils, xorg }:
{ autoPatchelfHook, electron_7, fetchurl, makeDesktopItem, makeWrapper, nodePackages, nss, stdenv, xdg_utils, xorg }:
let
electron = electron_4;
electron = electron_7;
in
stdenv.mkDerivation rec {
pname = "rambox-pro";
version = "1.3.2";
version = "1.4.1";
dontBuild = true;
dontStrip = true;
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://github.com/ramboxapp/download/releases/download/v${version}/RamboxPro-${version}-linux-x64.tar.gz";
sha256 = "010v5i8lxfz77cb5cn9va5cbnfa28nzdymk5k2fcpi65jldw1pxx";
sha256 = "1bd4fba3ac8c20fa557ebfb110f6503d36e6c3dba0401d1073529dcae2c2ec1e";
};
installPhase = ''

View file

@ -108,6 +108,10 @@ in stdenv.mkDerivation {
# Fix the desktop link
substituteInPlace $out/share/applications/skypeforlinux.desktop \
--replace /usr/bin/ $out/bin/
substituteInPlace $out/share/applications/skypeforlinux-share.desktop \
--replace /usr/bin/ $out/bin/
substituteInPlace $out/share/kservices5/ServiceMenus/skypeforlinux.desktop \
--replace /usr/bin/ $out/bin/
'';
meta = with stdenv.lib; {

View file

@ -1,40 +0,0 @@
{ stdenv, fetchgit
, pkgconfig, wrapQtAppsHook
, cmake
, qtbase, qttools, qtquickcontrols2, qtmultimedia, qtkeychain
, libpulseaudio
# Not mentioned but seems needed
, qtgraphicaleffects
, qtdeclarative
, qtmacextras
, olm, libsecret, cmark
}:
let qtkeychain-qt5 = qtkeychain.override {
inherit qtbase qttools;
withQt5 = true;
};
in stdenv.mkDerivation rec {
pname = "spectral";
version = "817";
src = fetchgit {
url = "https://gitlab.com/spectral-im/spectral.git";
rev = version;
sha256 = "0lg0bkz621cmqb67kz1zmn4xwbspcqalz68byll5iszqz9y4gnp1";
fetchSubmodules = true;
};
nativeBuildInputs = [ pkgconfig cmake wrapQtAppsHook ];
buildInputs = [ qtbase qtkeychain-qt5 qtquickcontrols2 qtmultimedia qtgraphicaleffects qtdeclarative olm libsecret cmark ]
++ stdenv.lib.optional stdenv.hostPlatform.isLinux libpulseaudio
++ stdenv.lib.optional stdenv.hostPlatform.isDarwin qtmacextras;
meta = with stdenv.lib; {
description = "A glossy cross-platform Matrix client";
homepage = "https://spectral.im";
license = licenses.gpl3;
platforms = with platforms; linux ++ darwin;
maintainers = with maintainers; [ dtzWill ];
};
}

View file

@ -6,15 +6,15 @@
buildGoModule rec {
pname = "aerc";
version = "0.4.0";
version = "0.5.2";
src = fetchurl {
url = "https://git.sr.ht/~sircmpwn/aerc/archive/${version}.tar.gz";
sha256 = "05qy14k9wmyhsg1hiv4njfx1zn1m9lz4d1p50kc36v7pq0n4csfk";
sha256 = "h7kiRA5TuZ8mDSMymWU33stFLIOMd06TQLYzKW+faO4=";
};
runVend = true;
vendorSha256 = "13zs5113ip85yl6sw9hzclxwlnrhy18d39vh9cwbq97dgnh9rz89";
vendorSha256 = "9PXdUH0gu8PGaKlRJCUF15W1/LxA+sv3Pwl2UnjYxWY=";
doCheck = false;

View file

@ -29,7 +29,7 @@ diff --git a/config/config.go b/config/config.go
index 32d07fc..8ffd3e8 100644
--- a/config/config.go
+++ b/config/config.go
@@ -355,6 +355,11 @@ func LoadConfigFromFile(root *string, sharedir string) (*AercConfig, error) {
@@ -472,6 +472,11 @@ func LoadConfigFromFile(root *string, sharedir string) (*AercConfig, error) {
return nil, err
}
}
@ -41,10 +41,11 @@ index 32d07fc..8ffd3e8 100644
file.NameMapper = mapName
config := &AercConfig{
Bindings: BindingConfig{
@@ -423,6 +428,9 @@ func LoadConfigFromFile(root *string, sharedir string) (*AercConfig, error) {
@@ -546,6 +428,9 @@ func LoadConfigFromFile(root *string, sharedir string) (*AercConfig, error) {
if err = config.LoadConfig(file); err != nil {
return nil, err
}
+ for i, filter := range config.Filters {
+ config.Filters[i].Command = strings.ReplaceAll(filter.Command, "@SHAREDIR@", sharedir)
+ }

View file

@ -268,7 +268,7 @@ stdenv.mkDerivation rec {
genericName = "Mail Reader";
name = "thunderbird";
exec = "thunderbird %U";
icon = "$out/lib/thunderbird/chrome/icons/default/default256.png";
icon = "thunderbird";
mimeType = lib.concatStringsSep ";" [
# Email
"x-scheme-handler/mailto"
@ -288,6 +288,7 @@ stdenv.mkDerivation rec {
postInstall = ''
# TODO: Move to a dev output?
rm -rf $out/include $out/lib/thunderbird-devel-* $out/share/idl
install -Dm 444 $out/lib/thunderbird/chrome/icons/default/default256.png $out/share/icons/hicolor/256x256/apps/thunderbird.png
'';
# Note on GPG support:

View file

@ -9,20 +9,23 @@
eigen, zlib,
cfitsio, indilib, xplanet, libnova, libraw, gsl, wcslib
cfitsio, indilib, xplanet, libnova, libraw, gsl, wcslib, stellarsolver
}:
mkDerivation rec {
pname = "kstars";
version = "3.4.3";
version = "3.5.0";
src = fetchurl {
url = "https://mirrors.mit.edu/kde/stable/kstars/kstars-${version}.tar.xz";
sha256 = "0j5yxg6ay6sic194skz6vjzg6yvrpb3gvypvs0frjrcjbsl1j4f8";
url = "mirror://kde/stable/kstars/kstars-${version}.tar.xz";
sha256 = "0fpkm75abn0hhdhfyvpfl6n0fr7gvw63xhb4hvwdrglhkf2nxam1";
};
patches = [
./indi-fix.patch
# Patches ksutils.cpp to use nix store prefixes to find program binaries of
# indilib and xplanet dependencies. Without the patch, Ekos is unable to spawn
# indi servers for local telescope/camera control.
./fs-fixes.patch
];
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
@ -34,11 +37,12 @@ mkDerivation rec {
eigen zlib
cfitsio indilib xplanet libnova libraw gsl wcslib
cfitsio indilib xplanet libnova libraw gsl wcslib stellarsolver
];
cmakeFlags = [
"-DINDI_NIX_ROOT=${indilib}"
"-DXPLANET_NIX_ROOT=${xplanet}"
];
meta = with lib; {
@ -51,6 +55,6 @@ mkDerivation rec {
'';
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ timput ];
maintainers = with maintainers; [ timput hjones2199 ];
};
}

View file

@ -0,0 +1,59 @@
--- kstars-3.5.0/CMakeLists.txt.old 2020-11-24 12:36:37.967433937 -0600
+++ kstars-3.5.0/CMakeLists.txt 2020-11-24 13:36:56.275263691 -0600
@@ -5,6 +5,9 @@
set (KSTARS_BUILD_RELEASE "Stable")
set (CMAKE_CXX_STANDARD 11)
+add_definitions(-DINDI_NIX_ROOT=${INDI_NIX_ROOT})
+add_definitions(-DXPLANET_NIX_ROOT=${XPLANET_NIX_ROOT})
+
# Build KStars Lite with -DBUILD_KSTARS_LITE=ON
option(BUILD_KSTARS_LITE "Build KStars Lite" OFF)
--- kstars-3.5.0/kstars/auxiliary/ksutils.old.cpp 2020-11-24 12:22:14.397319680 -0600
+++ kstars-3.5.0/kstars/auxiliary/ksutils.cpp 2020-11-24 13:32:22.946477798 -0600
@@ -1081,6 +1081,10 @@
// We support running within Snaps, Flatpaks, and AppImage
// The path should accomodate the differences between the different
// packaging solutions
+ #define STR_EXPAND(x) #x
+ #define STR(x) STR_EXPAND(x)
+ QString indi_prefix = QString(STR(INDI_NIX_ROOT));
+ QString xplanet_prefix = QString(STR(XPLANET_NIX_ROOT));
QString snap = QProcessEnvironment::systemEnvironment().value("SNAP");
QString flat = QProcessEnvironment::systemEnvironment().value("FLATPAK_DEST");
QString appimg = QProcessEnvironment::systemEnvironment().value("APPDIR");
@@ -1110,21 +1114,21 @@
#if defined(Q_OS_OSX)
return "/usr/local/bin/indiserver";
#endif
- return prefix + "/bin/indiserver";
+ return indi_prefix + "/bin/indiserver";
}
else if (option == "INDIHubAgent")
{
#if defined(Q_OS_OSX)
return "/usr/local/bin/indihub-agent";
#endif
- return prefix + "/bin/indihub-agent";
+ return indi_prefix + "/bin/indihub-agent";
}
else if (option == "indiDriversDir")
{
#if defined(Q_OS_OSX)
return "/usr/local/share/indi";
#elif defined(Q_OS_LINUX)
- return prefix + "/share/indi";
+ return indi_prefix + "/share/indi";
#else
return QStandardPaths::locate(QStandardPaths::GenericDataLocation, "indi", QStandardPaths::LocateDirectory);
#endif
@@ -1181,7 +1185,7 @@
#if defined(Q_OS_OSX)
return "/usr/local/bin/xplanet";
#endif
- return prefix + "/bin/xplanet";
+ return xplanet_prefix + "/bin/xplanet";
}
else if (option == "ASTAP")
{

View file

@ -1,50 +0,0 @@
--- CMakeLists.txt 2020-11-02 13:58:06.119743710 -0600
+++ kstars-3.4.3/CMakeLists.txt 2020-11-02 14:05:01.707799274 -0600
@@ -4,5 +4,7 @@
set (KStars_VERSION_REVISION 3)
set (CMAKE_CXX_STANDARD 11)
+add_definitions(-DINDI_NIX_ROOT=${INDI_NIX_ROOT})
+
# Build KStars Lite with -DBUILD_KSTARS_LITE=ON
option(BUILD_KSTARS_LITE "Build KStars Lite" OFF)
--- ksutils.cpp 2020-11-02 13:47:44.883596916 -0600
+++ kstars-3.4.3/kstars/auxiliary/ksutils.cpp 2020-11-02 17:41:44.961937090 -0600
@@ -1076,6 +1076,9 @@
{
QString snap = QProcessEnvironment::systemEnvironment().value("SNAP");
QString flat = QProcessEnvironment::systemEnvironment().value("FLATPAK_DEST");
+#define STR_EXPAND(x) #x
+#define STR(x) STR_EXPAND(x)
+ QString nix = QString(STR(INDI_NIX_ROOT));
if (option == "fitsDir")
{
@@ -1089,7 +1091,7 @@
if (flat.isEmpty() == false)
return flat + "/bin/indiserver";
else
- return snap + "/usr/bin/indiserver";
+ return nix + "/bin/indiserver";
}
else if (option == "INDIHubAgent")
{
@@ -1099,7 +1101,7 @@
if (flat.isEmpty() == false)
return flat + "/bin/indihub-agent";
else
- return snap + "/usr/bin/indihub-agent";
+ return nix + "/bin/indihub-agent";
}
else if (option == "indiDriversDir")
{
@@ -1109,7 +1111,7 @@
if (flat.isEmpty() == false)
return flat + "/share/indi";
else
- return snap + "/usr/share/indi";
+ return nix + "/share/indi";
#else
return QStandardPaths::locate(QStandardPaths::GenericDataLocation, "indi", QStandardPaths::LocateDirectory);
#endif

View file

@ -1,16 +1,16 @@
{ stdenv, fetchFromGitHub, python3Packages, readline }:
{ stdenv, fetchFromGitHub, python3Packages, readline, bc }:
with stdenv.lib;
stdenv.mkDerivation rec {
pname = "bcal";
version = "1.9";
version = "2.2";
src = fetchFromGitHub {
owner = "jarun";
repo = "bcal";
rev = "v${version}";
sha256 = "0h6qi5rvzl6c6fsfdpdb3l4jcgip03l18i0b1x08z1y89i56y8mm";
sha256 = "4vR5rcbNkoEdSRNoMH9qMHP3iWFxejkVfXNiYfwbo/A=";
};
nativeBuildInputs = [ python3Packages.pytest ];
@ -18,6 +18,7 @@ stdenv.mkDerivation rec {
buildInputs = [ readline ];
doCheck = true;
checkInputs = [ bc ];
checkPhase = ''
python3 -m pytest test.py
'';
@ -27,7 +28,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Storage conversion and expression calculator";
homepage = "https://github.com/jarun/bcal";
license = licenses.gpl3;
license = licenses.gpl3Only;
platforms = [ "aarch64-linux" "x86_64-darwin" "x86_64-linux" ];
maintainers = with maintainers; [ jfrankenau ];
};

View file

@ -0,0 +1,59 @@
{ stdenv, fetchurl, makeDesktopItem, makeWrapper, unzip, mono6 }:
let
pname = "mission-planner";
desktopItem = makeDesktopItem {
name = pname;
exec = pname;
icon = pname;
comment = "MissionPlanner GCS & Ardupilot configuration tool";
desktopName = "MissionPlanner";
genericName = "Ground Control Station";
};
in stdenv.mkDerivation rec {
inherit pname;
version = "1.3.74";
src = fetchurl {
url = "https://firmware.ardupilot.org/Tools/MissionPlanner/MissionPlanner-${version}.zip";
sha256 = "1cgpmsmmnbzw1lwsdafp8yklk1rwc61yf12vc1ahcc6bl7q2385x";
};
nativeBuildInputs = [ makeWrapper mono6 unzip ];
sourceRoot = ".";
AOT_FILES = [ "MissionPlanner.exe" "MissionPlanner.*.dll" ];
buildPhase = ''
runHook preBuild
for file in $AOT_FILES
do
mono --aot $file
done
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,opt/mission-planner}
install -m 444 -D mpdesktop150.png $out/share/icons/mission-planner.png
cp -r ${desktopItem}/share/applications $out/share/
mv * $out/opt/mission-planner
makeWrapper ${mono6}/bin/mono $out/bin/mission-planner \
--add-flags $out/opt/mission-planner/MissionPlanner.exe
runHook postInstall
'';
meta = with stdenv.lib; {
description = "An ArduPilot ground station";
longDescription = ''
Full-featured ground station application for the ArduPilot open source
autopilot project. Lets you both flash, configure and control ArduPilot
Plane, Copter and Rover targets.
'';
homepage = "https://ardupilot.org/planner/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ wucke13 ];
platforms = platforms.all;
};
}

View file

@ -4,14 +4,14 @@
stdenv.mkDerivation rec {
pname = "xterm";
version = "362";
version = "363";
src = fetchurl {
urls = [
"ftp://ftp.invisible-island.net/xterm/${pname}-${version}.tgz"
"https://invisible-mirror.net/archives/xterm/${pname}-${version}.tgz"
];
sha256 = "HU/+Im+o8CGFm7wwB3iP9jpGoxJC2b2ae9fr4k6BrKI=";
sha256 = "2Bo2OeJlUrZ2W9zyi+Hs24rKv5B5VXCOgwrWOX6hC0g=";
};
buildInputs = [

View file

@ -38,6 +38,8 @@ let
ghq = callPackage ./ghq { };
ghr = callPackage ./ghr { };
git = appendToName "minimal" gitBase;
git-absorb = callPackage ./git-absorb {

View file

@ -0,0 +1,30 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "ghr";
version = "0.13.0";
src = fetchFromGitHub {
owner = "tcnksm";
repo = "ghr";
rev = "v${version}";
sha256 = "1nm5kdjkqayxh06j9nr5daic9sw9nx9w06y9gaqhdrw9byvjpr1a";
};
vendorSha256 = "14avsngzhl1b8a05i43ph6sxh9vj0jls0acxr9j7r0h3f0vpamcj";
# Tests require a Github API token, and networking
doCheck = false;
doInstallCheck = true;
installCheckPhase = ''
$out/bin/ghr --version
'';
meta = with lib; {
homepage = "https://github.com/tcnksm/ghr";
description = "Upload multiple artifacts to GitHub Release in parallel";
license = licenses.mit;
maintainers = [ maintainers.ivar ];
};
}

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "gitstatus";
version = "1.4.3";
version = "1.4.4";
src = fetchFromGitHub {
owner = "romkatv";
repo = "gitstatus";
rev = "v${version}";
sha256 = "0skpi22plzb9r9cgqfnjzpaz856q9f4n0gd5i97nv8bfny8hl30z";
sha256 = "1w5kpca2v6iii912riywp1jscq7cpr5xv93mglr30pjnar1mk8gs";
};
buildInputs = [ (callPackage ./romkatv_libgit2.nix {}) ];
@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "10x faster implementation of `git status` command";
homepage = "https://github.com/romkatv/gitstatus";
license = [ licenses.gpl3 ];
license = licenses.gpl3Only;
maintainers = with maintainers; [ mmlb hexa ];
};
}

View file

@ -8,11 +8,11 @@ with stdenv.lib;
buildGoPackage rec {
pname = "gitea";
version = "1.13.0";
version = "1.13.1";
src = fetchurl {
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
sha256 = "090i4hk9mb66ia14kyp7rqymhc897yi1ifb0skvknylx0sw8vhk9";
sha256 = "sha256-tah7ciq+jkkROJq/V+yPRtWPuWaSnf5hKndjnifsQYc=";
};
unpackPhase = ''

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, bundlerEnv, ruby }:
{ stdenv, fetchurl, bundlerEnv, ruby, makeWrapper }:
let
version = "4.1.1";
@ -19,6 +19,7 @@ in
sha256 = "1nndy5hz8zvfglxf1f3bsb1pkrfwinfxzkdan1vjs3rkckkszyh5";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler ];
# taken from https://www.redmine.org/issues/33784
@ -31,12 +32,14 @@ in
'';
installPhase = ''
mkdir -p $out/share
mkdir -p $out/bin $out/share
cp -r . $out/share/redmine
for i in config files log plugins public/plugin_assets public/themes tmp; do
rm -rf $out/share/redmine/$i
ln -fs /run/redmine/$i $out/share/redmine/$i
done
makeWrapper ${rubyEnv.wrappedRuby}/bin/ruby $out/bin/rdm-mailhandler.rb --add-flags $out/share/redmine/extra/mail_handler/rdm-mailhandler.rb
'';
meta = with stdenv.lib; {

View file

@ -2,14 +2,14 @@
stdenv.mkDerivation rec {
version = "0.20";
version = "0.21";
pname = "charliecloud";
src = fetchFromGitHub {
owner = "hpc";
repo = "charliecloud";
rev = "v${version}";
sha256 = "15ihffwhpjnzgz0ir5vc9la4fwkqj91vmrcsb2r58ikq7h9sk45j";
sha256 = "Y/tH6Znq//HBA/FHfIm2Wpppx6TiL7CqKtZFDc/XSNc=";
};
nativeBuildInputs = [ autoreconfHook makeWrapper ];

View file

@ -1,12 +1,16 @@
{ lib, fetchFromGitHub, buildGoPackage, btrfs-progs, go-md2man, installShellFiles, util-linux, nixosTests }:
with lib;
{ lib
, fetchFromGitHub
, buildGoPackage
, btrfs-progs
, go-md2man
, installShellFiles
, util-linux
, nixosTests
}:
buildGoPackage rec {
pname = "containerd";
version = "1.4.3";
# git commit for the above version's tag
commit = "269548fa27e0089a8b8278fc4fc781d7f65a939b";
src = fetchFromGitHub {
owner = "containerd";
@ -22,29 +26,32 @@ buildGoPackage rec {
buildInputs = [ btrfs-progs ];
buildFlags = [ "VERSION=v${version}" "REVISION=${commit}" ];
buildFlags = [ "VERSION=v${version}" "REVISION=${src.rev}" ];
BUILDTAGS = []
++ optional (btrfs-progs == null) "no_btrfs";
BUILDTAGS = [ ]
++ lib.optional (btrfs-progs == null) "no_btrfs";
buildPhase = ''
cd go/src/${goPackagePath}
patchShebangs .
make binaries $buildFlags
make binaries man $buildFlags
'';
installPhase = ''
for b in bin/*; do
install -Dm555 $b $out/$b
done
make man
install -Dm555 bin/* -t $out/bin
installManPage man/*.[1-9]
'';
# completion installed separately so it can be overridden in docker
# can be moved to installPhase when docker uses containerd >= 1.4
postInstall = ''
installShellFiles --bash contrib/autocomplete/ctr
installShellFiles --zsh --name _ctr contrib/autocomplete/zsh_autocomplete
'';
passthru.tests = { inherit (nixosTests) docker; };
meta = {
meta = with lib; {
homepage = "https://containerd.io/";
description = "A daemon to control runC";
license = licenses.asl20;

View file

@ -41,6 +41,8 @@ rec {
rev = containerdRev;
sha256 = containerdSha256;
};
# disable completion, can be removed when docker uses containerd >= 1.4
postInstall = [];
# This should be removed once Docker uses containerd >=1.4
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ lib.optional withlibseccomp pkgconfig;
buildInputs = oldAttrs.buildInputs ++ lib.optional withlibseccomp libseccomp;

View file

@ -0,0 +1,23 @@
{ lib, buildPythonPackage, fetchPypi, i3ipc }:
buildPythonPackage rec {
pname = "i3-balance-workspace";
version = "1.8.3";
src = fetchPypi {
inherit pname version;
sha256 = "1gndzrwff8gfdqjjxv4zf2h2k0x7y97w1c3mrjpihz8xd0hbnk4d";
};
propagatedBuildInputs = [ i3ipc ];
doCheck = false; # project has no test
pythonImportsCheck = [ "i3_balance_workspace" ];
meta = {
description = "Balance windows and workspaces in i3wm";
homepage = "https://pypi.org/project/i3-balance-workspace/";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ pacien ];
};
}

View file

@ -10,7 +10,7 @@ let
(builtins.attrNames (builtins.removeAttrs variantHashes [ "iosevka" ]));
in stdenv.mkDerivation rec {
pname = "${name}-bin";
version = "4.1.1";
version = "4.2.0";
src = fetchurl {
url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/ttc-${name}-${version}.zip";

View file

@ -1,24 +1,24 @@
# This file was autogenerated. DO NOT EDIT!
{
iosevka = "1k87kb2858hy8w7hwdv2cs37x590flm44rrf9ahpjnbzdf22c35y";
iosevka-aile = "0zlhkbxzi1bdfag0f6cfcpqb347qqbp8h1jr1166zwys5p92hm5n";
iosevka-curly = "18b6wjq1jr08zpzp1dq63n54cahjyli5ivk7q6gh5qrvc9qa613w";
iosevka-curly-slab = "0yf613nkpby501xxn4pwxm3c2lij5b98j5mnfa4phc43gls266fa";
iosevka-etoile = "0ysj6sjrkky79l3330mp0264shprdr0yrrkj1absijywy4dw2k03";
iosevka-slab = "04hg24iqc9x49m9i72a4pfx8vgyk03vyg9xbh9fnwm9dk58lv450";
iosevka-sparkle = "100fas1j4ws4plzbcnlfag1kd2xwr8pcikghd8fw648zkrwrrnw4";
iosevka-ss01 = "16qsb89z3c3n01l6xp813gs29dy81lmvfbmramm9amphrcx6y5n3";
iosevka-ss02 = "10qjvkhr9az52spax4b9x3d9cxa189j3yznxpiwsgz641mf4mj4k";
iosevka-ss03 = "028pzjisfqz4vlb2d8cwmmsxi2440vjayiwg13awllgzkpj3ibra";
iosevka-ss04 = "1xzxwa91yvv8wbz3p1pmb3x559xic8k3qz8vrfgqzmv9ymyw19q4";
iosevka-ss05 = "1bcdkydpzadb194nm4gmilj1rm46fblbwif4wcalcnypryfxlqgy";
iosevka-ss06 = "0r436ajlphqm7qjnzwq972wi5ccyvavw6p2vw75cvwc1s7ihwqkg";
iosevka-ss07 = "0fxwvwzkzc7xc0jhhppxjk9sm1gdr0qjvxa1szqf6nj2vy86cj73";
iosevka-ss08 = "0aw28i1r48qn42c6m3q900j3b4i6gnwxjxndc88ybak1fg43sf40";
iosevka-ss09 = "12nsjk9sxy7f0i0p6qjsc4z6d6w637fllabvsg83dblpkxw1yfac";
iosevka-ss10 = "12sz1nriq2g776kg70gx9lp0ma7rqgvnrkr15fp791wxkvgwqq5b";
iosevka-ss11 = "0yvcn9h7yxhp08rnl23j61agkb1p86rjgw8md23dkbxda600knqn";
iosevka-ss12 = "1vvbnqrmgx2krphf08rdlpn4f6zjypnh69m7yh8cakkbvvr4jnv1";
iosevka-ss13 = "09g3j713kssrkryb83kw803aa5dlnydvkqn80d666q0xyqv2xcfk";
iosevka-ss14 = "1psbqdscs223yxdlll7779xpdvkzh0al61jn1ka62by3qizmvl4b";
iosevka = "1s9nyq8gjmmah5rpflffl0wi0klnlsvzmy7b39vnpp2sp6ng9mv3";
iosevka-aile = "0x2ccjnmi9hqms5jkfnkn30y9gd3adiwjvn9gzq8d6a563h61fik";
iosevka-curly = "03n0f9nzjywb5q3w59ck5sq500ks5xxlgf9dpncr3c7i2dawss41";
iosevka-curly-slab = "09qnd2vzl4v59c0d534mj06zxwa3rdwrhkwy191v6p79lfxp482x";
iosevka-etoile = "0j3ah72dmk7fzcln9755y3xnzn7343lfrg95kb3xmqm2zyg0mbrw";
iosevka-slab = "0prnm3nh8rgn6jivfj2fw7x12m8qqam8xnl45ip5ck4348piypx3";
iosevka-sparkle = "1y180rwrxrvwd98hk1d07y0vs8h5rj7ipkhsqlv60h82pigxhl4a";
iosevka-ss01 = "04q9vby5q9ylvv2myl3h2xfyq3s594wnwj0b956pivwwamhp0g3v";
iosevka-ss02 = "14d5i88ls8zfbis5s7z95dcrpxqyqr2wzx90c5a4xpcdjd4n7fgg";
iosevka-ss03 = "1zqqq11rcjmifc4qf5p2xcqhqp5ca2pgvzv8xirr6mq4knrvxrpq";
iosevka-ss04 = "1xnnqyvyrz820dzfyjj84v3j1q8krykmwxw5xml4v7kk79agc7vk";
iosevka-ss05 = "07w78jw23hxwzx65ampwzv691p12n0pvk8vnw2mnnspflirpm62r";
iosevka-ss06 = "11brqklhk3sfhqyavyi5rggsn3286n404gphmh0frz65wj3k8lc6";
iosevka-ss07 = "037vaxpgdpa6p9nmqcsa1mi7pn94300cd71kbr9lw8mql9wc2y9n";
iosevka-ss08 = "0ga1bwb2d1rizr0910bcqabcj819dcd0bxp7cwbxnzq6i7ca4hj1";
iosevka-ss09 = "1khjhn0lfpk8g1yx3558w6kkj0pd5b7kxbf0z97w1nvah3d5v50m";
iosevka-ss10 = "0zp5173799vacssj0lsj3ck82b03qyk9cyfwa3j7xa2dhplrjfp2";
iosevka-ss11 = "124a3i7iy9z7adxcb8yw3795gk52cw7ngsim8qjhrhcd2bjr0jvg";
iosevka-ss12 = "1rd61ry3ihw311c926wjl9sc71bz0ligya07m7km1905dhlhirsv";
iosevka-ss13 = "0jm3djc4rlzk22jn3syv4mwd0fz82z4lnyk3dkq815yyw6vmqkz0";
iosevka-ss14 = "1a9a1bvzsbprmxfh19m78s82rfmxng4sambz6m4gd9mm14kjjp5r";
}

View file

@ -1,24 +1,24 @@
{ lib, fetchzip }:
let
version = "2.210";
version = "2.221";
in
fetchzip {
name = "JetBrainsMono-${version}";
url = "https://github.com/JetBrains/JetBrainsMono/releases/download/v${version}/JetBrainsMono-${version}.zip";
sha256 = "05csy42qji8xbaq5iap2nmki0d0cbiwiq9kbzjd1cah9qn6gfill";
sha256 = "1in3znnj0i0yfwj93ncxi3s1cp9lhgwnv2r14br47rr7vik4zjr6";
postFetch = ''
mkdir -p $out/share/fonts
unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype
unzip -j $downloadedFile \*.woff2 -d $out/share/fonts/woff2
'';
meta = with lib; {
description = "A typeface made for developers";
homepage = "https://jetbrains.com/mono/";
changelog = "https://github.com/JetBrains/JetBrainsMono/blob/v${version}/Changelog.md";
license = licenses.ofl;
maintainers = [ maintainers.marsam ];
platforms = platforms.all;

View file

@ -0,0 +1,26 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "meslo-lgs-nf";
version = "2020-03-22";
src = fetchFromGitHub {
owner = "romkatv";
repo = "powerlevel10k-media";
rev = "32c7d40239c93507277f14522be90b5750f442c9";
sha256 = "10hq4whai1rqj495w4n80p0y21am8rihm4rc40xq7241d6dzilrd";
};
installPhase = ''
mkdir -p $out/share/fonts/truetype
cp $src/*.ttf $out/share/fonts/truetype
'';
meta = with stdenv.lib; {
description = "Meslo Nerd Font patched for Powerlevel10k";
homepage = "https://github.com/romkatv/powerlevel10k-media";
license = licenses.asl20;
maintainers = with maintainers; [ bbigras ];
platforms = platforms.all;
};
}

View file

@ -8,13 +8,13 @@
stdenv.mkDerivation rec {
pname = "luna-icons";
version = "0.9";
version = "0.9.1";
src = fetchFromGitHub {
owner = "darkomarko42";
repo = pname;
rev = version;
sha256 = "1pwbmw20kzlxnwln92nxq7f5s1xwbpv6j7il7jxymlw0y31rl281";
sha256 = "0mz5cayjgsc109nv7kdkn3gn1n79bl3hb773lrzrr0k2zblxg353";
};
nativeBuildInputs = [

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "papirus-icon-theme";
version = "20200801";
version = "20200901";
src = fetchFromGitHub {
owner = "PapirusDevelopmentTeam";
repo = pname;
rev = version;
sha256 = "0w9ks8izxv7mkh82fnclfcdf6mif991dsbbnxsqmcbvljrmjval2";
sha256 = "00khqbd7jz97q1kd43kkm6yaa40ml36rh04s76sgbm58srs66v3c";
};
nativeBuildInputs = [

View file

@ -1,46 +1,46 @@
{ stdenv, fetchurl, unzip }:
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
pname = "sweet";
version = "1.10.5";
version = "2.0";
srcs = [
(fetchurl {
url = "https://github.com/EliverLara/Sweet/releases/download/v${version}/Sweet-Ambar-Blue.zip";
sha256 = "11040hx8ci4vbnyaj63zj924v0ln7rjm9a28mcqdax60h3dp12lj";
url = "https://github.com/EliverLara/Sweet/releases/download/${version}/Sweet-Ambar-Blue.tar.xz";
sha256 = "028pk07im7pab8a2vh3bvjm8jg37dpvn4c1mwn6vhb6wcr9v5c75";
})
(fetchurl {
url = "https://github.com/EliverLara/Sweet/releases/download/v${version}/Sweet-Ambar.zip";
sha256 = "0lvnjmirpwdav8q0bfbhybwkr2h6dilc7lhhj18xd2k57xadjmxr";
url = "https://github.com/EliverLara/Sweet/releases/download/${version}/Sweet-Ambar.tar.xz";
sha256 = "0zmdmqndj65kr43g3z57blrmv0y856zlfprm6y45zbf4xz3ybkg6";
})
(fetchurl {
url = "https://github.com/EliverLara/Sweet/releases/download/v${version}/Sweet-Dark.zip";
sha256 = "0a7mh1pgvi8w1ahsmvgnmpdawm30lcjqk4zqvg0lqadsd04dn4h1";
url = "https://github.com/EliverLara/Sweet/releases/download/${version}/Sweet-Dark.tar.xz";
sha256 = "02sw664fkrfpsygspq8fn4zgk8rxs9rd29nnx6nyvkji68mb51s6";
})
(fetchurl {
url = "https://github.com/EliverLara/Sweet/releases/download/v${version}/Sweet-mars.zip";
sha256 = "0n2dkl35qrik10wvhvkayyra987p03g56pxhz5kc73cbsl5zd96l";
url = "https://github.com/EliverLara/Sweet/releases/download/${version}/Sweet-mars.tar.xz";
sha256 = "14rl3il61jyqwiqlpgbh397q3rcs7jcf2pvr2763ar5a9czmy8h6";
})
(fetchurl {
url = "https://github.com/EliverLara/Sweet/releases/download/v${version}/Sweet.zip";
sha256 = "0wwmc3wj2pjg4kimfkvcsimk3s4s7l7k000vxqi8yjlfs70f273c";
url = "https://github.com/EliverLara/Sweet/releases/download/${version}/Sweet.tar.xz";
sha256 = "0rza3yxwj256ibqimymjhd6lpjzr7fkhggq0ijdg1wab3q91x66q";
})
];
nativeBuildInputs = [ unzip ];
sourceRoot = ".";
installPhase = ''
runHook preInstall
mkdir -p $out/share/themes/
cp -a Sweet* $out/share/themes/
rm $out/share/themes/*/{LICENSE,README*}
runHook postInstall
'';
meta = with stdenv.lib; {
description = "Light and dark colorful Gtk3.20+ theme";
homepage = "https://github.com/EliverLara/Sweet";
license = licenses.gpl3;
license = licenses.gpl3Only;
maintainers = with maintainers; [ fuzen ];
platforms = platforms.linux;
};

View file

@ -26,15 +26,6 @@ stdenv.mkDerivation rec {
sha256 = "097dw1l92l73xah9l56ka5mi3dvx48ffpiv33ni5i5rqw0ng7fc4";
};
patches = [
# Fix build with Meson 0.55
# https://gitlab.gnome.org/GNOME/iagno/-/issues/16
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/iagno/commit/0100bab269f2102f24a6e41202b931da1b6e8dc5.patch";
sha256 = "ZW75s+bV45ivwA+SKUN7ejSvnXYEo/kYQjDVvFBA/sg=";
})
];
nativeBuildInputs = [
meson
ninja

View file

@ -4,6 +4,7 @@ mkXfceDerivation {
category = "apps";
pname = "mousepad";
version = "0.4.2";
odd-unstable = false;
sha256 = "0a35vaq4l0d8vzw7hqpvbgkr3wj1sqr2zvj7bc5z4ikz2cppqj7p";

View file

@ -1,18 +1,23 @@
{ lib, fetchpatch, mkXfceDerivation, dbus-glib, gtk2, libical, libnotify, tzdata
, popt, libxfce4ui, xfce4-panel, withPanelPlugin ? true }:
{ stdenv, fetchurl, fetchpatch, pkg-config, intltool, dbus-glib, gtk2, libical, libnotify, tzdata
, popt, libxfce4ui, xfce4-panel, withPanelPlugin ? true, wrapGAppsHook, xfce }:
assert withPanelPlugin -> libxfce4ui != null && xfce4-panel != null;
let
inherit (lib) optionals;
inherit (stdenv.lib) optionals;
in
mkXfceDerivation {
category = "archive";
stdenv.mkDerivation rec {
pname = "orage";
version = "4.12.1";
sha256 = "04z6y1vfaz1im1zq1zr7cf8pjibjhj9zkyanbp7vn30q520yxa0m";
src = fetchurl {
url = "https://archive.xfce.org/src/apps/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
sha256 = "0qlhvnl2m33vfxqlbkic2nmfpwyd4mq230jzhs48cg78392amy9w";
};
nativeBuildInputs = [ pkg-config intltool wrapGAppsHook ];
buildInputs = [ dbus-glib gtk2 libical libnotify popt ]
++ optionals withPanelPlugin [ libxfce4ui xfce4-panel ];
@ -33,7 +38,16 @@ mkXfceDerivation {
})
];
meta = {
description = "A simple calendar application with reminders";
passthru.updateScript = xfce.updateScript {
inherit pname version;
attrPath = "xfce.${pname}";
versionLister = xfce.archiveLister "apps" pname;
};
meta = with stdenv.lib; {
description = "Simple calendar application with reminders";
homepage = "https://git.xfce.org/archive/orage/";
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -5,9 +5,9 @@
mkXfceDerivation {
category = "xfce";
pname = "xfwm4";
version = "4.14.5";
version = "4.14.6";
sha256 = "0xxprhs8g00ysrl25y6z9agih6wb7n29v5f5m2icaz7yjvj1k9iv";
sha256 = "1ml5b4nn8laqhjihfqqsbjn66525abhin5d32bplh1k9yfxw4xi4";
nativeBuildInputs = [ exo librsvg ];

View file

@ -1,4 +1,4 @@
{ stdenv, fetchgit, pkgconfig, xfce4-dev-tools, hicolor-icon-theme, xfce, wrapGAppsHook }:
{ stdenv, fetchFromGitLab, pkgconfig, xfce4-dev-tools, hicolor-icon-theme, xfce, wrapGAppsHook }:
{ category
, pname
@ -23,14 +23,16 @@ let
zipAttrsWithNames (filterAttrNames isList (head attrsets)) (_: concatLists) attrsets;
template = rec {
name = "${pname}-${version}";
inherit pname version;
nativeBuildInputs = [ pkgconfig xfce4-dev-tools wrapGAppsHook ];
buildInputs = [ hicolor-icon-theme ];
configureFlags = [ "--enable-maintainer-mode" ];
src = fetchgit {
url = "git://git.xfce.org/${category}/${pname}";
src = fetchFromGitLab {
domain = "gitlab.xfce.org";
owner = category;
repo = pname;
inherit rev sha256;
};
@ -41,11 +43,11 @@ let
passthru.updateScript = xfce.updateScript {
inherit pname version attrPath rev-prefix odd-unstable patchlevel-unstable;
versionLister = xfce.gitLister src.url;
versionLister = xfce.gitLister src.meta.homepage;
};
meta = with stdenv.lib; {
homepage = "https://git.xfce.org/${category}/${pname}/about";
homepage = "https://gitlab.xfce.org/${category}/${pname}/about";
license = licenses.gpl2; # some libraries are under LGPLv2+
platforms = platforms.linux;
};

View file

@ -1,29 +1,36 @@
{ stdenv, pkgconfig, fetchFromGitHub, python2, vala_0_40
, gtk2, libwnck, libxfce4util, xfce4-panel, wafHook }:
{ stdenv, pkgconfig, fetchFromGitHub, python2, vala_0_46
, gtk3, libwnck3, libxfce4util, xfce4-panel, wafHook, xfce }:
stdenv.mkDerivation rec {
ver = "0.3.1";
rev = "07a23b3";
name = "xfce4-namebar-plugin-${ver}";
pname = "xfce4-namebar-plugin";
version = "1.0.0";
src = fetchFromGitHub {
owner = "TiZ-EX1";
repo = "xfce4-namebar-plugin";
rev = rev;
sha256 = "1sl4qmjywfvv53ch7hyfysjfd91zl38y7gdw2y3k69vkzd3h18ad";
owner = "HugLifeTiZ";
repo = pname;
rev = "v${version}";
sha256 = "0l70f6mzkscsj4wr43wp5c0l2qnf85vj24cv02bjrh3bzz6wkak8";
};
nativeBuildInputs = [ pkgconfig wafHook ];
buildInputs = [ python2 vala_0_40 gtk2 libwnck libxfce4util xfce4-panel ];
nativeBuildInputs = [ pkgconfig vala_0_46 wafHook ];
buildInputs = [ gtk3 libwnck3 libxfce4util xfce4-panel ];
postPatch = ''
substituteInPlace src/preferences.vala --replace 'Environment.get_system_data_dirs()' "{ \"$out/share\" }"
substituteInPlace src/namebar.vala --replace 'Environment.get_system_data_dirs()' "{ \"$out/share\" }"
for f in src/preferences.vala src/namebar.vala; do
substituteInPlace $f --replace 'var dirs = Environment.get_system_data_dirs()' "string[] dirs = { \"$out/share\" }"
done
'';
passthru.updateScript = xfce.updateScript {
inherit pname version;
attrPath = "xfce.${pname}";
versionLister = xfce.gitLister src.meta.homepage;
rev-prefix = "v";
};
meta = with stdenv.lib; {
homepage = "https://github.com/TiZ-EX1/xfce4-namebar-plugin";
description = "A plugins which integrates titlebar and window controls into the xfce4-panel";
homepage = "https://github.com/HugLifeTiZ/xfce4-namebar-plugin";
description = "Plugin which integrates titlebar and window controls into the xfce4-panel";
license = licenses.mit;
platforms = platforms.linux;
maintainers = [ maintainers.volth ];

View file

@ -5,6 +5,7 @@ mkXfceDerivation {
pname = "xfce4-whiskermenu-plugin";
version = "2.4.6";
rev-prefix = "v";
odd-unstable = false;
sha256 = "03asfaxqbhawzb3870az7qgid5y7cg3ip8h6r4z8kavcd0b7x4ii";
nativeBuildInputs = [ cmake ];

View file

@ -1,6 +1,7 @@
{ stdenv, lib, crystal, shards, git, pkgconfig, which, linkFarm, fetchFromGitHub, installShellFiles }:
{ # Some projects do not include a lock file, so you can pass one
{
# Some projects do not include a lock file, so you can pass one
lockFile ? null
# Generate shards.nix with `nix-shell -p crystal2nix --run crystal2nix` in the projects root
, shardsFile ? null
@ -10,10 +11,11 @@
, installManPages ? true
# Specify binaries to build in the form { foo.src = "src/foo.cr"; }
# The default `crystal build` options can be overridden with { foo.options = [ "--no-debug" ]; }
, crystalBinaries ? { }, ... }@args:
, crystalBinaries ? { }
, ...
}@args:
assert (builtins.elem format [ "make" "crystal" "shards" ]);
let
mkDerivationArgs = builtins.removeAttrs args [
"format"
@ -23,22 +25,34 @@ let
"crystalBinaries"
];
crystalLib = linkFarm "crystal-lib" (lib.mapAttrsToList (name: value: {
inherit name;
path = fetchFromGitHub value;
}) (import shardsFile));
crystalLib = linkFarm "crystal-lib" (lib.mapAttrsToList
(name: value: {
inherit name;
path = fetchFromGitHub value;
})
(import shardsFile));
# we previously had --no-debug here but that is not recommended by upstream
defaultOptions = [ "--release" "--progress" "--verbose" ];
buildDirectly = shardsFile == null || crystalBinaries != { };
in stdenv.mkDerivation (mkDerivationArgs // {
configurePhase = args.configurePhase or lib.concatStringsSep "\n" ([
"runHook preConfigure"
] ++ lib.optional (lockFile != null) "ln -s ${lockFile} ./shard.lock"
++ lib.optional (shardsFile != null) "ln -s ${crystalLib} lib"
++ [ "runHook postConfigure "]);
in
stdenv.mkDerivation (mkDerivationArgs // {
configurePhase = args.configurePhase or lib.concatStringsSep "\n"
(
[
"runHook preConfigure"
]
++ lib.optional (lockFile != null) "cp ${lockFile} ./shard.lock"
++ lib.optionals (shardsFile != null) [
"test -e lib || mkdir lib"
"for d in ${crystalLib}/*; do ln -s $d lib/; done"
"cp shard.lock lib/.shards.info"
]
++ [ "runHook postConfigure" ]
);
CRFLAGS = lib.concatStringsSep " " defaultOptions;
@ -53,24 +67,31 @@ in stdenv.mkDerivation (mkDerivationArgs // {
"runHook preBuild"
] ++ lib.optional (format == "make")
''make ''${buildTargets:-build} $makeFlags''
++ lib.optionals (format == "crystal") (lib.mapAttrsToList (bin: attrs: ''
crystal ${lib.escapeShellArgs (["build" "-o" bin
(attrs.src or (throw "No source file for crystal binary ${bin} provided"))
] ++ (attrs.options or defaultOptions))}
'') crystalBinaries)
++ lib.optionals (format == "crystal") (lib.mapAttrsToList
(bin: attrs: ''
crystal ${lib.escapeShellArgs ([
"build"
"-o"
bin
(attrs.src or (throw "No source file for crystal binary ${bin} provided"))
] ++ (attrs.options or defaultOptions))}
'')
crystalBinaries)
++ lib.optional (format == "shards")
"shards build --local --production ${lib.concatStringsSep " " defaultOptions}"
"shards build --local --production ${lib.concatStringsSep " " defaultOptions}"
++ [ "runHook postBuild" ]));
installPhase = args.installPhase or (lib.concatStringsSep "\n" ([
"runHook preInstall"
] ++ lib.optional (format == "make")
''make ''${installTargets:-install} $installFlags''
++ lib.optionals (format == "crystal") (map (bin: ''
++ lib.optionals (format == "crystal") (map
(bin: ''
install -Dm555 ${lib.escapeShellArgs [ bin "${placeholder "out"}/bin/${bin}" ]}
'') (lib.attrNames crystalBinaries))
'')
(lib.attrNames crystalBinaries))
++ lib.optional (format == "shards")
''install -Dm555 bin/* -t $out/bin''
''install -Dm555 bin/* -t $out/bin''
++ [
''
for f in README* *.md LICENSE; do
@ -78,9 +99,9 @@ in stdenv.mkDerivation (mkDerivationArgs // {
done
''
] ++ (lib.optional installManPages ''
if [ -d man ]; then
installManPage man/*.?
fi
if [ -d man ]; then
installManPage man/*.?
fi
'') ++ [
"runHook postInstall"
]));

View file

@ -1,42 +0,0 @@
require "yaml"
require "json"
class PrefetchJSON
JSON.mapping(sha256: String)
end
class ShardLock
YAML.mapping(
version: Float32,
shards: Hash(String, Hash(String, String))
)
end
File.open "shards.nix", "w+" do |file|
file.puts %({)
yaml = ShardLock.from_yaml(File.read("shard.lock"))
yaml.shards.each do |key, value|
owner, repo = value["github"].split("/")
url = "https://github.com/#{value["github"]}"
rev = if value["version"]?
"v#{value["version"]}"
else
value["commit"]
end
sha256 = ""
args = ["--url", url, "--rev", rev]
Process.run("@nixPrefetchGit@", args: args) do |x|
x.error.each_line { |e| puts e }
sha256 = PrefetchJSON.from_json(x.output).sha256
end
file.puts %( #{key} = {)
file.puts %( owner = "#{owner}";)
file.puts %( repo = "#{repo}";)
file.puts %( rev = "#{rev}";)
file.puts %( sha256 = "#{sha256}";)
file.puts %( };)
end
file.puts %(})
end

View file

@ -1,22 +0,0 @@
{ lib, crystal, nix-prefetch-git }:
crystal.buildCrystalPackage {
pname = "crystal2nix";
version = "unstable-2018-07-31";
nixPrefetchGit = "${lib.getBin nix-prefetch-git}/bin/nix-prefetch-git";
unpackPhase = "substituteAll ${./crystal2nix.cr} crystal2nix.cr";
format = "crystal";
crystalBinaries.crystal2nix.src = "crystal2nix.cr";
# it will blow up without a shard.yml file
doInstallCheck = false;
meta = with lib; {
description = "Utility to convert Crystal's shard.lock files to a Nix file";
license = licenses.mit;
maintainers = with maintainers; [ manveru ];
};
}

View file

@ -0,0 +1,36 @@
{ lib, fetchFromGitHub, fetchgit, crystal, makeWrapper, nix-prefetch-git }:
crystal.buildCrystalPackage rec {
pname = "crystal2nix";
version = "0.1.0";
src = fetchFromGitHub {
owner = "peterhoeg";
repo = "crystal2nix";
rev = "v${version}";
sha256 = "sha256-K1ElG8VC/D0axmSRaufH3cE50xNQisAmFucDkV+5O0s=";
};
format = "shards";
shardsFile = ./shards.nix;
nativeBuildInputs = [ makeWrapper ];
postInstall = ''
wrapProgram $out/bin/crystal2nix \
--prefix PATH : ${lib.makeBinPath [ nix-prefetch-git ]}
'';
# temporarily off. We need the checks to execute the wrapped binary
doCheck = false;
# it requires an internet connection when run
doInstallCheck = false;
meta = with lib; {
description = "Utility to convert Crystal's shard.lock files to a Nix file";
license = licenses.mit;
maintainers = with maintainers; [ manveru peterhoeg ];
};
}

View file

@ -0,0 +1,14 @@
{
json_mapping = {
owner = "crystal-lang";
repo = "json_mapping.cr";
rev = "v0.1.0";
sha256 = "1qq5vs2085x7cwmp96rrjns0yz9kiz1lycxynfbz5psxll6b8p55";
};
yaml_mapping = {
owner = "crystal-lang";
repo = "yaml_mapping.cr";
rev = "v0.1.0";
sha256 = "02spz1521g59ar6rp0znnr01di766kknbjxjnygs39yn0cmpzqc1";
};
}

View file

@ -0,0 +1,53 @@
{ stdenv
, fetchurl
, ncurses5
, python27
}:
stdenv.mkDerivation rec {
pname = "gcc-arm-embedded";
version = "10-2020-q4-major";
subdir = "10-2020q4";
suffix = {
aarch64-linux = "aarch64-linux";
x86_64-darwin = "mac";
x86_64-linux = "x86_64-linux";
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
src = fetchurl {
url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2";
sha256 = {
aarch64-linux = "0spkbh7vnda1w0nvavk342nb24nqxn8kln3k9j85mzil560qqg9l";
x86_64-darwin = "1h5xn0npwkilqxg7ifrymsl7kjpafr9r9gjqgcpb0kjxavijvldy";
x86_64-linux = "066nvhg5zdf3jvy9w23y439ghf1hvbicdyrrw9957gwb8ym4q4r1";
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};
dontConfigure = true;
dontBuild = true;
dontPatchELF = true;
dontStrip = true;
installPhase = ''
mkdir -p $out
cp -r * $out
ln -s $out/share/doc/gcc-arm-none-eabi/man $out/man
'';
preFixup = ''
find $out -type f | while read f; do
patchelf "$f" > /dev/null 2>&1 || continue
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true
patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" stdenv.cc.cc ncurses5 python27 ]} "$f" || true
done
'';
meta = with stdenv.lib; {
description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors";
homepage = "https://developer.arm.com/open-source/gnu-toolchain/gnu-rm";
license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
maintainers = with maintainers; [ prusnak ];
platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
};
}

View file

@ -22,7 +22,10 @@ stdenv.mkDerivation rec {
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
dontConfigure = true;
dontBuild = true;
dontPatchELF = true;
dontStrip = true;
installPhase = ''
mkdir -p $out
@ -30,12 +33,9 @@ stdenv.mkDerivation rec {
ln -s $out/share/doc/gcc-arm-none-eabi/man $out/man
'';
dontPatchELF = true;
dontStrip = true;
preFixup = ''
find $out -type f | while read f; do
patchelf $f > /dev/null 2>&1 || continue
patchelf "$f" > /dev/null 2>&1 || continue
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true
patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" stdenv.cc.cc ncurses5 python27 ]} "$f" || true
done

View file

@ -22,7 +22,10 @@ stdenv.mkDerivation rec {
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
dontConfigure = true;
dontBuild = true;
dontPatchELF = true;
dontStrip = true;
installPhase = ''
mkdir -p $out
@ -30,12 +33,9 @@ stdenv.mkDerivation rec {
ln -s $out/share/doc/gcc-arm-none-eabi/man $out/man
'';
dontPatchELF = true;
dontStrip = true;
preFixup = ''
find $out -type f | while read f; do
patchelf $f > /dev/null 2>&1 || continue
patchelf "$f" > /dev/null 2>&1 || continue
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true
patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" stdenv.cc.cc ncurses5 python27 ]} "$f" || true
done

View file

@ -22,7 +22,10 @@ stdenv.mkDerivation rec {
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
dontConfigure = true;
dontBuild = true;
dontPatchELF = true;
dontStrip = true;
installPhase = ''
mkdir -p $out
@ -30,12 +33,9 @@ stdenv.mkDerivation rec {
ln -s $out/share/doc/gcc-arm-none-eabi/man $out/man
'';
dontPatchELF = true;
dontStrip = true;
preFixup = ''
find $out -type f | while read f; do
patchelf $f > /dev/null 2>&1 || continue
patchelf "$f" > /dev/null 2>&1 || continue
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true
patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" stdenv.cc.cc ncurses5 python27 ]} "$f" || true
done

View file

@ -24,7 +24,10 @@ stdenv.mkDerivation rec {
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
dontConfigure = true;
dontBuild = true;
dontPatchELF = true;
dontStrip = true;
installPhase = ''
mkdir -p $out
@ -32,12 +35,9 @@ stdenv.mkDerivation rec {
ln -s $out/share/doc/gcc-arm-none-eabi/man $out/man
'';
dontPatchELF = true;
dontStrip = true;
preFixup = ''
find $out -type f | while read f; do
patchelf $f > /dev/null 2>&1 || continue
patchelf "$f" > /dev/null 2>&1 || continue
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true
patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" stdenv.cc.cc ncurses5 python27 ]} "$f" || true
done

View file

@ -14,6 +14,19 @@ let
};
in rec {
lua5_4 = callPackage ./interpreter.nix {
sourceVersion = { major = "5"; minor = "4"; patch = "2"; };
hash = "0ksj5zpj74n0jkamy3di1p6l10v4gjnd2zjnb453qc6px6bhsmqi";
patches = [
# build lua as a shared library as well, MIT-licensed from
# https://github.com/archlinux/svntogit-packages/tree/packages/lua/trunk
./liblua.so.patch
];
};
lua5_4_compat = lua5_4.override({
compat = true;
});
lua5_3 = callPackage ./interpreter.nix {
sourceVersion = { major = "5"; minor = "3"; patch = "5"; };

View file

@ -0,0 +1,60 @@
diff --git a/Makefile b/Makefile
index 416f444..eeaff03 100644
--- a/Makefile
+++ b/Makefile
@@ -52,7 +52,7 @@ R= $V.0
all: $(PLAT)
$(PLATS) help test clean:
- @cd src && $(MAKE) $@
+ @cd src && $(MAKE) $@ V=$(V) R=$(R)
install: dummy
cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD)
diff --git a/src/Makefile b/src/Makefile
index 514593d..372a6dc 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -33,6 +33,7 @@ CMCFLAGS= -Os
PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris
LUA_A= liblua.a
+LUA_SO= liblua.so
CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o
LIB_O= lauxlib.o lbaselib.o lcorolib.o ldblib.o liolib.o lmathlib.o loadlib.o loslib.o lstrlib.o ltablib.o lutf8lib.o linit.o
BASE_O= $(CORE_O) $(LIB_O) $(MYOBJS)
@@ -44,7 +45,7 @@ LUAC_T= luac
LUAC_O= luac.o
ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O)
-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
+ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
ALL_A= $(LUA_A)
# Targets start here.
@@ -60,6 +61,12 @@ $(LUA_A): $(BASE_O)
$(AR) $@ $(BASE_O)
$(RANLIB) $@
+$(LUA_SO): $(CORE_O) $(LIB_O)
+ $(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO)
+
+
$(LUA_T): $(LUA_O) $(LUA_A)
$(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
diff --git a/src/luaconf.h b/src/luaconf.h
index bdf927e..7e15198 100644
--- a/src/luaconf.h
+++ b/src/luaconf.h
@@ -227,7 +227,7 @@
#else /* }{ */
-#define LUA_ROOT "/usr/local/"
+#define LUA_ROOT "/usr/"
#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR "/"
#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR "/"

View file

@ -8,13 +8,13 @@
stdenv.mkDerivation rec {
pname = "cgal";
version = "5.1.1";
version = "5.2";
src = fetchFromGitHub {
owner = "CGAL";
repo = "releases";
rev = "CGAL-${version}";
sha256 = "1h4kj37zh60zap1gvpkvcl1b1lbdvav959gd59pq2c33i0ziagf6";
sha256 = "1+ov1fu79MXoW0D8odInMZPFMYg69st//PoMW42oXpA=";
};
# note: optional component libCGAL_ImageIO would need zlib and opengl;

View file

@ -1,22 +0,0 @@
{ stdenv
, fetchFromGitLab
, extra-cmake-modules
, qtbase
, qtquickcontrols2
}:
stdenv.mkDerivation rec {
pname = "KQuickImageEditor";
version = "0.1";
src = fetchFromGitLab {
domain = "invent.kde.org";
owner = "libraries";
repo = pname;
rev = version;
sha256 = "0krx9bq6nfmpjjangis8gaz8rx3z35f6m3cpsrcfdwpgpm22fqll";
};
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ qtbase qtquickcontrols2 ];
}

View file

@ -1,11 +1,12 @@
{stdenv, fetchurl}:
stdenv.mkDerivation rec {
name = "a52dec-0.7.4p4";
pname = "a52dec";
version = "0.7.4";
src = fetchurl {
url = "${meta.homepage}/files/a52dec-0.7.4.tar.gz";
sha256 = "0czccp4fcpf2ykp16xcrzdfmnircz1ynhls334q374xknd5747d2";
url = "${meta.homepage}/files/${pname}-${version}.tar.gz";
sha256 = "oh1ySrOzkzMwGUNTaH34LEdbXfuZdRPu9MJd5shl7DM=";
};
configureFlags = [
@ -18,10 +19,10 @@ stdenv.mkDerivation rec {
# but it's better to disable tests than loose ASLR on i686
doCheck = !stdenv.isi686;
meta = {
meta = with stdenv.lib; {
description = "ATSC A/52 stream decoder";
homepage = "http://liba52.sourceforge.net/";
platforms = stdenv.lib.platforms.unix;
license = stdenv.lib.licenses.gpl2;
homepage = "https://liba52.sourceforge.net/";
platforms = platforms.unix;
license = licenses.gpl2Plus;
};
}

View file

@ -1,42 +1,28 @@
{ stdenv
, fetchFromGitHub
, fetchpatch
, fetchFromGitLab
, cmake
}:
stdenv.mkDerivation rec {
pname = "bcg729";
version = "1.0.4";
version = "1.1.1";
src = fetchFromGitHub {
owner = "BelledonneCommunications";
src = fetchFromGitLab {
domain = "gitlab.linphone.org";
owner = "public";
group = "BC";
repo = pname;
rev = version;
sha256 = "05s0c5ps3a763y0v34wg5zghj0cdjnq4ch7g81848xxry7q90fwa";
sha256 = "1hal6b3w6f8y5r1wa0xzj8sj2jjndypaxyw62q50p63garp2h739";
};
patches = [
(fetchpatch {
url = "https://github.com/BelledonneCommunications/bcg729/commit/a5907daf1b111e4ad7aab4f558f57e2af1e37e55.patch";
sha256 = "0445syfwj4w4chh8ak80rq77iqcr27924n1ld5snshk3d21nxd64";
})
(fetchpatch {
url = "https://github.com/BelledonneCommunications/bcg729/commit/697bf6653a8c7421f0e821ee8d42471246e6850f.patch";
sha256 = "1h3gf5sj2sg5cs5iv1lcav3lkqmd5jf4agvjzz83l89wd5f5hp5l";
})
(fetchpatch {
url = "https://github.com/BelledonneCommunications/bcg729/commit/d63ce04a93711820d9a6985b1d11d8d91ed8e6b6.patch";
sha256 = "1piwf63ci2gma6jd6b4adkvxirysvazf0vklb5pc6vx1g93nkgxs";
})
];
nativeBuildInputs = [ cmake ];
meta = with stdenv.lib; {
description = "Opensource implementation of both encoder and decoder of the ITU G729 Annex A/B speech codec";
homepage = "https://linphone.org/technical-corner/bcg729";
changelog = "https://gitlab.linphone.org/BC/public/bcg729/raw/${version}/NEWS";
license = licenses.gpl2Plus;
license = licenses.gpl3Plus;
maintainers = with maintainers; [ c0bw3b ];
platforms = platforms.all;
};

View file

@ -7,7 +7,7 @@
stdenv.mkDerivation rec {
pname = "bctoolbox";
version = "4.4.13";
version = "4.4.21";
nativeBuildInputs = [ cmake bcunit ];
buildInputs = [ mbedtls ];
@ -30,9 +30,7 @@ stdenv.mkDerivation rec {
inherit version;
description = "Utilities library for Linphone";
homepage = "https://gitlab.linphone.org/BC/public/bctoolbox";
# Still using GPLv2 but as the rest of the Linphone projects have switched
# to GPLv3, this might too, so check this when bumping the version number.
license = licenses.gpl3Only;
license = licenses.gpl3Plus;
maintainers = with maintainers; [ raskin jluttine ];
platforms = platforms.linux;
};

View file

@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "C++ library to manipulate VCard standard format";
homepage = "https://gitlab.linphone.org/BC/public/belcard";
license = licenses.lgpl21;
license = licenses.gpl3Plus;
platforms = platforms.all;
maintainers = with maintainers; [ jluttine ];
};

View file

@ -10,7 +10,7 @@
stdenv.mkDerivation rec {
pname = "belle-sip";
version = "4.4.13";
version = "4.4.21";
src = fetchFromGitLab {
domain = "gitlab.linphone.org";
@ -18,10 +18,10 @@ stdenv.mkDerivation rec {
group = "BC";
repo = pname;
rev = version;
sha256 = "1ad7sqc5y4f3gc8glwmb3rvfzapnvhg981g13x90cg4nzikjvka0";
sha256 = "0ylv1jsqnfhw23i6p3lfqqzw48lwii8zwkq3y34q0hhnngn26iiw";
};
nativeBuildInputs = [ cmake antlr3_4 ];
nativeBuildInputs = [ antlr3_4 cmake ];
buildInputs = [ zlib ];
@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = "https://linphone.org/technical-corner/belle-sip";
description = "Modern library implementing SIP (RFC 3261) transport, transaction and dialog layers";
license = licenses.gpl3;
license = licenses.gpl3Plus;
platforms = platforms.all;
maintainers = with maintainers; [ jluttine ];
};

View file

@ -6,17 +6,15 @@
stdenv.mkDerivation rec {
pname = "belr";
# Using master branch for linphone-desktop caused a chain reaction that many
# of its dependencies needed to use master branch too.
version = "unstable-2020-03-09";
version = "4.3.2";
src = fetchFromGitLab {
domain = "gitlab.linphone.org";
owner = "public";
group = "BC";
repo = pname;
rev = "326d030ca9db12525c2a6d2a65f386f36f3c2ed5";
sha256 = "1cdblb9smncq3al0crqp5651b02k1g6whlw1ib769p61gad0rs3v";
rev = version;
sha256 = "1lda0f89vas38xgmc4yvnrigmrbril3dyqxgb5jh1zfx1xczfh1q";
};
buildInputs = [ bctoolbox ];
@ -28,7 +26,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "Belledonne Communications' language recognition library";
homepage = "https://gitlab.linphone.org/BC/public/belr";
license = licenses.gpl3;
license = licenses.gpl3Plus;
platforms = platforms.all;
maintainers = with maintainers; [ jluttine ];
};

View file

@ -7,7 +7,7 @@
stdenv.mkDerivation rec {
pname = "bzrtp";
version = "4.4.0";
version = "4.4.9";
src = fetchFromGitLab {
domain = "gitlab.linphone.org";
@ -29,9 +29,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "An opensource implementation of ZRTP keys exchange protocol";
homepage = "https://gitlab.linphone.org/BC/public/bzrtp";
# They have switched to GPLv3 on git HEAD so probably the next release will
# be GPL3.
license = licenses.lgpl21;
license = licenses.gpl3Plus;
platforms = platforms.all;
maintainers = with maintainers; [ jluttine ];
};

View file

@ -1,28 +1,28 @@
{ stdenv, fetchFromGitHub, alsaLib }:
stdenv.mkDerivation {
name = "flite-2.1.0";
stdenv.mkDerivation rec {
pname = "flite";
version = "2.2";
src = fetchFromGitHub {
owner = "festvox";
repo = "flite";
rev = "d673f65b2c4a8cd3da7447079309a6dc4bcf1a5e";
sha256 = "1kx43jvdln370590gfjhxxz3chxfi6kq18504wmdpljib2l0grjq";
owner = "festvox";
repo = "flite";
rev = "v${version}";
sha256 = "1n0p81jzndzc1rzgm66kw9ls189ricy5v1ps11y0p2fk1p56kbjf";
};
buildInputs = [ alsaLib ];
buildInputs = stdenv.lib.optionals stdenv.isLinux [ alsaLib ];
configureFlags = [
"--enable-shared"
"--with-audio=alsa"
];
] ++ stdenv.lib.optionals stdenv.isLinux [ "--with-audio=alsa" ];
enableParallelBuilding = true;
meta = {
meta = with stdenv.lib; {
description = "A small, fast run-time speech synthesis engine";
homepage = "http://www.festvox.org/flite/";
license = stdenv.lib.licenses.free;
platforms = stdenv.lib.platforms.linux;
license = licenses.bsdOriginal;
platforms = platforms.all;
};
}

View file

@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
pname = "intel-media-driver";
version = "20.4.3";
version = "20.4.5";
src = fetchFromGitHub {
owner = "intel";
repo = "media-driver";
rev = "intel-media-${version}";
sha256 = "04a0hcw9f8fr96xpc1inc19mncssqzxmjba9cdvvh71n8j7n3yyw";
sha256 = "149xkhhp8q06c1jzxjs24lnbfrlvf19m0hcwld593vv4arfpbpmf";
};
cmakeFlags = [

Some files were not shown because too many files have changed in this diff Show more