Merge master into staging-next
This commit is contained in:
commit
7350c52b9b
82 changed files with 977 additions and 371 deletions
41
.github/workflows/merge-staging.yml
vendored
41
.github/workflows/merge-staging.yml
vendored
|
@ -1,41 +0,0 @@
|
||||||
name: "merge staging(-next)"
|
|
||||||
|
|
||||||
on:
|
|
||||||
schedule:
|
|
||||||
# * is a special character in YAML so you have to quote this string
|
|
||||||
# Merge every 6 hours
|
|
||||||
- cron: '0 */6 * * *'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
sync-branch:
|
|
||||||
if: github.repository_owner == 'NixOS'
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
|
|
||||||
- name: Merge master into staging-next
|
|
||||||
id: staging_next
|
|
||||||
uses: devmasx/merge-branch@v1.3.1
|
|
||||||
with:
|
|
||||||
type: now
|
|
||||||
from_branch: master
|
|
||||||
target_branch: staging-next
|
|
||||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
- name: Merge staging-next into staging
|
|
||||||
id: staging
|
|
||||||
uses: devmasx/merge-branch@v1.3.1
|
|
||||||
with:
|
|
||||||
type: now
|
|
||||||
from_branch: staging-next
|
|
||||||
target_branch: staging
|
|
||||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
- name: Comment on failure
|
|
||||||
uses: peter-evans/create-or-update-comment@v1
|
|
||||||
if: ${{ failure() }}
|
|
||||||
with:
|
|
||||||
issue-number: 105153
|
|
||||||
body: |
|
|
||||||
An automatic merge${{ (steps.staging_next.outcome == 'failure' && ' from master to staging-next') || ((steps.staging.outcome == 'failure' && ' from staging-next to staging') || '') }} [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
|
|
||||||
|
|
49
.github/workflows/periodic-merge-24h.yml
vendored
Normal file
49
.github/workflows/periodic-merge-24h.yml
vendored
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
# This action periodically merges base branches into staging branches.
|
||||||
|
# This is done to
|
||||||
|
# * prevent conflicts or rather resolve them early
|
||||||
|
# * make all potential breakage happen on the staging branch
|
||||||
|
# * and make sure that all major rebuilds happen before the staging
|
||||||
|
# branch get’s merged back into its base branch.
|
||||||
|
|
||||||
|
name: "Periodic Merges (24h)"
|
||||||
|
|
||||||
|
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
# * is a special character in YAML so you have to quote this string
|
||||||
|
# Merge every 6 hours
|
||||||
|
- cron: '0 0 * * *'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
periodic-merge:
|
||||||
|
if: github.repository_owner == 'NixOS'
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
# don't fail fast, so that all pairs are tried
|
||||||
|
fail-fast: false
|
||||||
|
# certain branches need to be merged in order, like master->staging-next->staging
|
||||||
|
# and disabling parallelism ensures the order of the pairs below.
|
||||||
|
max-parallel: 1
|
||||||
|
matrix:
|
||||||
|
pairs:
|
||||||
|
- from: master
|
||||||
|
into: haskell-updates
|
||||||
|
name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
|
||||||
|
uses: devmasx/merge-branch@v1.3.1
|
||||||
|
with:
|
||||||
|
type: now
|
||||||
|
from_branch: ${{ matrix.pairs.from }}
|
||||||
|
target_branch: ${{ matrix.pairs.into }}
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Comment on failure
|
||||||
|
uses: peter-evans/create-or-update-comment@v1
|
||||||
|
if: ${{ failure() }}
|
||||||
|
with:
|
||||||
|
issue-number: 105153
|
||||||
|
body: |
|
||||||
|
Periodic merge from `${{ matrix.pairs.from }}` into `${{ matrix.pairs.into }}` has [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
|
55
.github/workflows/periodic-merge-6h.yml
vendored
Normal file
55
.github/workflows/periodic-merge-6h.yml
vendored
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
# This action periodically merges base branches into staging branches.
|
||||||
|
# This is done to
|
||||||
|
# * prevent conflicts or rather resolve them early
|
||||||
|
# * make all potential breakage happen on the staging branch
|
||||||
|
# * and make sure that all major rebuilds happen before the staging
|
||||||
|
# branch get’s merged back into its base branch.
|
||||||
|
|
||||||
|
name: "Periodic Merges (6h)"
|
||||||
|
|
||||||
|
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
# * is a special character in YAML so you have to quote this string
|
||||||
|
# Merge every 6 hours
|
||||||
|
- cron: '0 */6 * * *'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
periodic-merge:
|
||||||
|
if: github.repository_owner == 'NixOS'
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
# don't fail fast, so that all pairs are tried
|
||||||
|
fail-fast: false
|
||||||
|
# certain branches need to be merged in order, like master->staging-next->staging
|
||||||
|
# and disabling parallelism ensures the order of the pairs below.
|
||||||
|
max-parallel: 1
|
||||||
|
matrix:
|
||||||
|
pairs:
|
||||||
|
- from: master
|
||||||
|
into: staging-next
|
||||||
|
- from: staging-next
|
||||||
|
into: staging
|
||||||
|
- from: release-21.05
|
||||||
|
into: staging-next-21.05
|
||||||
|
- from: staging-next-21.05
|
||||||
|
into: staging-21.05
|
||||||
|
name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
|
||||||
|
uses: devmasx/merge-branch@v1.3.1
|
||||||
|
with:
|
||||||
|
type: now
|
||||||
|
from_branch: ${{ matrix.pairs.from }}
|
||||||
|
target_branch: ${{ matrix.pairs.into }}
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Comment on failure
|
||||||
|
uses: peter-evans/create-or-update-comment@v1
|
||||||
|
if: ${{ failure() }}
|
||||||
|
with:
|
||||||
|
issue-number: 105153
|
||||||
|
body: |
|
||||||
|
Periodic merge from `${{ matrix.pairs.from }}` into `${{ matrix.pairs.into }}` has [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
|
31
doc/languages-frameworks/hy.section.md
Normal file
31
doc/languages-frameworks/hy.section.md
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
# Hy {#sec-language-hy}
|
||||||
|
|
||||||
|
## Installation {#ssec-hy-installation}
|
||||||
|
|
||||||
|
### Installation without packages {#installation-without-packages}
|
||||||
|
|
||||||
|
You can install `hy` via nix-env or by adding it to `configuration.nix` by reffering to it as a `hy` attribute. This kind of installation adds `hy` to your environment and it succesfully works with `python3`.
|
||||||
|
|
||||||
|
::: {.caution}
|
||||||
|
Packages that are installed with your python derivation, are not accesible by `hy` this way.
|
||||||
|
:::
|
||||||
|
|
||||||
|
### Installation with packages {#installation-with-packages}
|
||||||
|
|
||||||
|
Creating `hy` derivation with custom `python` packages is really simple and similar to the way that python does it. Attribute `hy` provides function `withPackages` that creates custom `hy` derivation with specified packages.
|
||||||
|
|
||||||
|
For example if you want to create shell with `matplotlib` and `numpy`, you can do it like so:
|
||||||
|
|
||||||
|
```ShellSession
|
||||||
|
$ nix-shell -p "hy.withPackages (ps: with ps; [ numpy matplotlib ])"
|
||||||
|
```
|
||||||
|
|
||||||
|
Or if you want to extend your `configuration.nix`:
|
||||||
|
```nix
|
||||||
|
{ # ...
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
(hy.withPackages (py-packages: with py-packages; [ numpy matplotlib ]))
|
||||||
|
];
|
||||||
|
}
|
||||||
|
```
|
|
@ -16,6 +16,7 @@
|
||||||
<xi:include href="gnome.section.xml" />
|
<xi:include href="gnome.section.xml" />
|
||||||
<xi:include href="go.section.xml" />
|
<xi:include href="go.section.xml" />
|
||||||
<xi:include href="haskell.section.xml" />
|
<xi:include href="haskell.section.xml" />
|
||||||
|
<xi:include href="hy.section.xml" />
|
||||||
<xi:include href="idris.section.xml" />
|
<xi:include href="idris.section.xml" />
|
||||||
<xi:include href="ios.section.xml" />
|
<xi:include href="ios.section.xml" />
|
||||||
<xi:include href="java.section.xml" />
|
<xi:include href="java.section.xml" />
|
||||||
|
|
|
@ -10,74 +10,51 @@ let
|
||||||
description = "dataset/template options";
|
description = "dataset/template options";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Default values from https://github.com/jimsalterjrs/sanoid/blob/master/sanoid.defaults.conf
|
|
||||||
|
|
||||||
commonOptions = {
|
commonOptions = {
|
||||||
hourly = mkOption {
|
hourly = mkOption {
|
||||||
description = "Number of hourly snapshots.";
|
description = "Number of hourly snapshots.";
|
||||||
type = types.ints.unsigned;
|
type = with types; nullOr ints.unsigned;
|
||||||
default = 48;
|
default = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
daily = mkOption {
|
daily = mkOption {
|
||||||
description = "Number of daily snapshots.";
|
description = "Number of daily snapshots.";
|
||||||
type = types.ints.unsigned;
|
type = with types; nullOr ints.unsigned;
|
||||||
default = 90;
|
default = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
monthly = mkOption {
|
monthly = mkOption {
|
||||||
description = "Number of monthly snapshots.";
|
description = "Number of monthly snapshots.";
|
||||||
type = types.ints.unsigned;
|
type = with types; nullOr ints.unsigned;
|
||||||
default = 6;
|
default = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
yearly = mkOption {
|
yearly = mkOption {
|
||||||
description = "Number of yearly snapshots.";
|
description = "Number of yearly snapshots.";
|
||||||
type = types.ints.unsigned;
|
type = with types; nullOr ints.unsigned;
|
||||||
default = 0;
|
default = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
autoprune = mkOption {
|
autoprune = mkOption {
|
||||||
description = "Whether to automatically prune old snapshots.";
|
description = "Whether to automatically prune old snapshots.";
|
||||||
type = types.bool;
|
type = with types; nullOr bool;
|
||||||
default = true;
|
default = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
autosnap = mkOption {
|
autosnap = mkOption {
|
||||||
description = "Whether to automatically take snapshots.";
|
description = "Whether to automatically take snapshots.";
|
||||||
type = types.bool;
|
type = with types; nullOr bool;
|
||||||
default = true;
|
default = null;
|
||||||
};
|
|
||||||
|
|
||||||
settings = mkOption {
|
|
||||||
description = ''
|
|
||||||
Free-form settings for this template/dataset. See
|
|
||||||
<link xlink:href="https://github.com/jimsalterjrs/sanoid/blob/master/sanoid.defaults.conf"/>
|
|
||||||
for allowed values.
|
|
||||||
'';
|
|
||||||
type = datasetSettingsType;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
commonConfig = config: {
|
datasetOptions = rec {
|
||||||
settings = {
|
use_template = mkOption {
|
||||||
hourly = mkDefault config.hourly;
|
|
||||||
daily = mkDefault config.daily;
|
|
||||||
monthly = mkDefault config.monthly;
|
|
||||||
yearly = mkDefault config.yearly;
|
|
||||||
autoprune = mkDefault config.autoprune;
|
|
||||||
autosnap = mkDefault config.autosnap;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
datasetOptions = {
|
|
||||||
useTemplate = mkOption {
|
|
||||||
description = "Names of the templates to use for this dataset.";
|
description = "Names of the templates to use for this dataset.";
|
||||||
type = (types.listOf (types.enum (attrNames cfg.templates))) // {
|
type = types.listOf (types.enum (attrNames cfg.templates));
|
||||||
description = "list of template names";
|
|
||||||
};
|
|
||||||
default = [];
|
default = [];
|
||||||
};
|
};
|
||||||
|
useTemplate = use_template;
|
||||||
|
|
||||||
recursive = mkOption {
|
recursive = mkOption {
|
||||||
description = "Whether to recursively snapshot dataset children.";
|
description = "Whether to recursively snapshot dataset children.";
|
||||||
|
@ -85,19 +62,12 @@ let
|
||||||
default = false;
|
default = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
processChildrenOnly = mkOption {
|
process_children_only = mkOption {
|
||||||
description = "Whether to only snapshot child datasets if recursing.";
|
description = "Whether to only snapshot child datasets if recursing.";
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = false;
|
||||||
};
|
};
|
||||||
};
|
processChildrenOnly = process_children_only;
|
||||||
|
|
||||||
datasetConfig = config: {
|
|
||||||
settings = {
|
|
||||||
use_template = mkDefault config.useTemplate;
|
|
||||||
recursive = mkDefault config.recursive;
|
|
||||||
process_children_only = mkDefault config.processChildrenOnly;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Extract pool names from configured datasets
|
# Extract pool names from configured datasets
|
||||||
|
@ -109,11 +79,11 @@ let
|
||||||
else generators.mkValueStringDefault {} v;
|
else generators.mkValueStringDefault {} v;
|
||||||
|
|
||||||
mkKeyValue = k: v: if v == null then ""
|
mkKeyValue = k: v: if v == null then ""
|
||||||
|
else if k == "processChildrenOnly" then ""
|
||||||
|
else if k == "useTemplate" then ""
|
||||||
else generators.mkKeyValueDefault { inherit mkValueString; } "=" k v;
|
else generators.mkKeyValueDefault { inherit mkValueString; } "=" k v;
|
||||||
in generators.toINI { inherit mkKeyValue; } cfg.settings;
|
in generators.toINI { inherit mkKeyValue; } cfg.settings;
|
||||||
|
|
||||||
configDir = pkgs.writeTextDir "sanoid.conf" configFile;
|
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
|
||||||
# Interface
|
# Interface
|
||||||
|
@ -135,19 +105,21 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
datasets = mkOption {
|
datasets = mkOption {
|
||||||
type = types.attrsOf (types.submodule ({ config, ... }: {
|
type = types.attrsOf (types.submodule ({config, options, ...}: {
|
||||||
|
freeformType = datasetSettingsType;
|
||||||
options = commonOptions // datasetOptions;
|
options = commonOptions // datasetOptions;
|
||||||
config = mkMerge [ (commonConfig config) (datasetConfig config) ];
|
config.use_template = mkAliasDefinitions (options.useTemplate or {});
|
||||||
|
config.process_children_only = mkAliasDefinitions (options.processChildrenOnly or {});
|
||||||
}));
|
}));
|
||||||
default = {};
|
default = {};
|
||||||
description = "Datasets to snapshot.";
|
description = "Datasets to snapshot.";
|
||||||
};
|
};
|
||||||
|
|
||||||
templates = mkOption {
|
templates = mkOption {
|
||||||
type = types.attrsOf (types.submodule ({ config, ... }: {
|
type = types.attrsOf (types.submodule {
|
||||||
|
freeformType = datasetSettingsType;
|
||||||
options = commonOptions;
|
options = commonOptions;
|
||||||
config = commonConfig config;
|
});
|
||||||
}));
|
|
||||||
default = {};
|
default = {};
|
||||||
description = "Templates for datasets.";
|
description = "Templates for datasets.";
|
||||||
};
|
};
|
||||||
|
@ -177,8 +149,8 @@ in {
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.sanoid.settings = mkMerge [
|
services.sanoid.settings = mkMerge [
|
||||||
(mapAttrs' (d: v: nameValuePair ("template_" + d) v.settings) cfg.templates)
|
(mapAttrs' (d: v: nameValuePair ("template_" + d) v) cfg.templates)
|
||||||
(mapAttrs (d: v: v.settings) cfg.datasets)
|
(mapAttrs (d: v: v) cfg.datasets)
|
||||||
];
|
];
|
||||||
|
|
||||||
systemd.services.sanoid = {
|
systemd.services.sanoid = {
|
||||||
|
@ -191,7 +163,7 @@ in {
|
||||||
ExecStart = lib.escapeShellArgs ([
|
ExecStart = lib.escapeShellArgs ([
|
||||||
"${pkgs.sanoid}/bin/sanoid"
|
"${pkgs.sanoid}/bin/sanoid"
|
||||||
"--cron"
|
"--cron"
|
||||||
"--configdir" configDir
|
"--configdir" (pkgs.writeTextDir "sanoid.conf" configFile)
|
||||||
] ++ cfg.extraArgs);
|
] ++ cfg.extraArgs);
|
||||||
ExecStopPost = map (pool: lib.escapeShellArgs [
|
ExecStopPost = map (pool: lib.escapeShellArgs [
|
||||||
"+/run/booted-system/sw/bin/zfs" "unallow" "sanoid" pool
|
"+/run/booted-system/sw/bin/zfs" "unallow" "sanoid" pool
|
||||||
|
|
|
@ -453,6 +453,7 @@ in
|
||||||
{ ExecStart =
|
{ ExecStart =
|
||||||
(optionalString cfg.startWhenNeeded "-") +
|
(optionalString cfg.startWhenNeeded "-") +
|
||||||
"${cfgc.package}/bin/sshd " + (optionalString cfg.startWhenNeeded "-i ") +
|
"${cfgc.package}/bin/sshd " + (optionalString cfg.startWhenNeeded "-i ") +
|
||||||
|
"-D " + # don't detach into a daemon process
|
||||||
"-f /etc/ssh/sshd_config";
|
"-f /etc/ssh/sshd_config";
|
||||||
KillMode = "process";
|
KillMode = "process";
|
||||||
} // (if cfg.startWhenNeeded then {
|
} // (if cfg.startWhenNeeded then {
|
||||||
|
|
|
@ -34,7 +34,7 @@ in {
|
||||||
systemd.packages = [ cfg.package ];
|
systemd.packages = [ cfg.package ];
|
||||||
systemd.services.tailscaled = {
|
systemd.services.tailscaled = {
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
path = [ pkgs.openresolv ];
|
path = [ pkgs.openresolv pkgs.procps ];
|
||||||
serviceConfig.Environment = [
|
serviceConfig.Environment = [
|
||||||
"PORT=${toString cfg.port}"
|
"PORT=${toString cfg.port}"
|
||||||
''"FLAGS=--tun ${lib.escapeShellArg cfg.interfaceName}"''
|
''"FLAGS=--tun ${lib.escapeShellArg cfg.interfaceName}"''
|
||||||
|
|
|
@ -30,6 +30,9 @@ in
|
||||||
package = lib.mkOption {
|
package = lib.mkOption {
|
||||||
type = lib.types.package;
|
type = lib.types.package;
|
||||||
default = pkgs.discourse;
|
default = pkgs.discourse;
|
||||||
|
apply = p: p.override {
|
||||||
|
plugins = lib.unique (p.enabledPlugins ++ cfg.plugins);
|
||||||
|
};
|
||||||
defaultText = "pkgs.discourse";
|
defaultText = "pkgs.discourse";
|
||||||
description = ''
|
description = ''
|
||||||
The discourse package to use.
|
The discourse package to use.
|
||||||
|
@ -731,8 +734,6 @@ in
|
||||||
|
|
||||||
cp -r ${cfg.package}/share/discourse/config.dist/* /run/discourse/config/
|
cp -r ${cfg.package}/share/discourse/config.dist/* /run/discourse/config/
|
||||||
cp -r ${cfg.package}/share/discourse/public.dist/* /run/discourse/public/
|
cp -r ${cfg.package}/share/discourse/public.dist/* /run/discourse/public/
|
||||||
cp -r ${cfg.package}/share/discourse/plugins.dist/* /run/discourse/plugins/
|
|
||||||
${lib.concatMapStringsSep "\n" (p: "ln -sf ${p} /run/discourse/plugins/") cfg.plugins}
|
|
||||||
ln -sf /var/lib/discourse/uploads /run/discourse/public/uploads
|
ln -sf /var/lib/discourse/uploads /run/discourse/public/uploads
|
||||||
ln -sf /var/lib/discourse/backups /run/discourse/public/backups
|
ln -sf /var/lib/discourse/backups /run/discourse/public/backups
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,7 @@ in {
|
||||||
|
|
||||||
autosnap = true;
|
autosnap = true;
|
||||||
};
|
};
|
||||||
datasets."pool/sanoid".useTemplate = [ "test" ];
|
datasets."pool/sanoid".use_template = [ "test" ];
|
||||||
extraArgs = [ "--verbose" ];
|
extraArgs = [ "--verbose" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,9 @@
|
||||||
# Attributes inherit from specific versions
|
# Attributes inherit from specific versions
|
||||||
, version, src, meta, sourceRoot
|
, version, src, meta, sourceRoot
|
||||||
, executableName, longName, shortName, pname, updateScript
|
, executableName, longName, shortName, pname, updateScript
|
||||||
|
# sourceExecutableName is the name of the binary in the source archive, over
|
||||||
|
# which we have no control
|
||||||
|
, sourceExecutableName ? executableName
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -77,12 +80,12 @@ let
|
||||||
'' + (if system == "x86_64-darwin" then ''
|
'' + (if system == "x86_64-darwin" then ''
|
||||||
mkdir -p "$out/Applications/${longName}.app" $out/bin
|
mkdir -p "$out/Applications/${longName}.app" $out/bin
|
||||||
cp -r ./* "$out/Applications/${longName}.app"
|
cp -r ./* "$out/Applications/${longName}.app"
|
||||||
ln -s "$out/Applications/${longName}.app/Contents/Resources/app/bin/${executableName}" $out/bin/${executableName}
|
ln -s "$out/Applications/${longName}.app/Contents/Resources/app/bin/${sourceExecutableName}" $out/bin/${executableName}
|
||||||
'' else ''
|
'' else ''
|
||||||
mkdir -p $out/lib/vscode $out/bin
|
mkdir -p $out/lib/vscode $out/bin
|
||||||
cp -r ./* $out/lib/vscode
|
cp -r ./* $out/lib/vscode
|
||||||
|
|
||||||
ln -s $out/lib/vscode/bin/${executableName} $out/bin
|
ln -s $out/lib/vscode/bin/${sourceExecutableName} $out/bin/${executableName}
|
||||||
|
|
||||||
mkdir -p $out/share/applications
|
mkdir -p $out/share/applications
|
||||||
ln -s $desktopItem/share/applications/${executableName}.desktop $out/share/applications/${executableName}.desktop
|
ln -s $desktopItem/share/applications/${executableName}.desktop $out/share/applications/${executableName}.desktop
|
||||||
|
|
|
@ -25,6 +25,7 @@ in
|
||||||
version = "1.57.1";
|
version = "1.57.1";
|
||||||
pname = "vscode";
|
pname = "vscode";
|
||||||
|
|
||||||
|
sourceExecutableName = "code";
|
||||||
executableName = "code" + lib.optionalString isInsiders "-insiders";
|
executableName = "code" + lib.optionalString isInsiders "-insiders";
|
||||||
longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders";
|
longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders";
|
||||||
shortName = "Code" + lib.optionalString isInsiders " - Insiders";
|
shortName = "Code" + lib.optionalString isInsiders " - Insiders";
|
||||||
|
|
|
@ -1,20 +1,28 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, rustPlatform, libiconv }:
|
{ lib, stdenv, fetchFromGitHub, rustPlatform, libiconv, installShellFiles }:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "flavours";
|
pname = "flavours";
|
||||||
version = "0.4.0";
|
version = "0.5.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Misterio77";
|
owner = "Misterio77";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-rDy859jg+F8XC4sJogIgdn1FoT8cf7S+KORt+7kboAc=";
|
sha256 = "1bgi6p7l0bh9k4vkwvngk7q19ynia0z1ninb1cq8qnwwpll6kbya";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ ]
|
buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
|
||||||
++ lib.optionals stdenv.isDarwin [ libiconv ];
|
|
||||||
|
|
||||||
cargoSha256 = "sha256-I8ZH35L2CVLy6ypmdOPd8VEG/sQeGaHyT1HWNdwyZVo=";
|
cargoSha256 = "07hwxhfcbqbwb3hz18w92h1lhdiwwy7abhwpimzx7syyavp4rmn4";
|
||||||
|
|
||||||
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
installShellCompletion --cmd flavours \
|
||||||
|
--zsh <($out/bin/flavours --completions zsh) \
|
||||||
|
--fish <($out/bin/flavours --completions fish) \
|
||||||
|
--bash <($out/bin/flavours --completions bash)
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "An easy to use base16 scheme manager/builder that integrates with any workflow";
|
description = "An easy to use base16 scheme manager/builder that integrates with any workflow";
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "hugo";
|
pname = "hugo";
|
||||||
version = "0.84.2";
|
version = "0.84.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "gohugoio";
|
owner = "gohugoio";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-NE4vXtczzcL5f0/aDYeGnleBwsDBTzojSaek/LzowFo=";
|
sha256 = "sha256-3SbF4JsanNup0JmtEoZlyu3SvMn01r+nhnPgIi/W8pA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-ImXTOtN6kQL7Q8IBlmK7+i47cWtyZT0xcnQdCw3NvWM=";
|
vendorSha256 = "sha256-ImXTOtN6kQL7Q8IBlmK7+i47cWtyZT0xcnQdCw3NvWM=";
|
||||||
|
|
|
@ -44,6 +44,7 @@ let
|
||||||
inherit version;
|
inherit version;
|
||||||
sha256 = "63509b41d158ae5b7f67eb4ad20fecbb4eee99434e73e140354dc3ff8e09716f";
|
sha256 = "63509b41d158ae5b7f67eb4ad20fecbb4eee99434e73e140354dc3ff8e09716f";
|
||||||
};
|
};
|
||||||
|
propagatedBuildInputs = [ self.six ];
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,22 +8,22 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "reddsaver";
|
pname = "reddsaver";
|
||||||
version = "0.3.2";
|
version = "0.3.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "manojkarthick";
|
owner = "manojkarthick";
|
||||||
repo = "reddsaver";
|
repo = "reddsaver";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0ffci3as50f55n1v36hji4n0b3lkch5ylc75awjz65jz2gd2y2j4";
|
sha256 = "1czsy1bb0ja650sndwzq9rcbbhcci7s7ablw0agaynhi403shavv";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "1xf26ldgfinzpakcp65w52fdl3arsm053vfnq7gk2fwnq55cjwl0";
|
cargoSha256 = "0wr6y7mfffaqdh6i5nqhx692dih159121sm6k0i37wcdvxhvd51z";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
buildInputs = [ openssl ]
|
buildInputs = [ openssl ]
|
||||||
++ lib.optional stdenv.isDarwin Security;
|
++ lib.optional stdenv.isDarwin Security;
|
||||||
|
|
||||||
# package does not contain tests as of v0.3.2
|
# package does not contain tests as of v0.3.3
|
||||||
docCheck = false;
|
docCheck = false;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -175,18 +175,6 @@ let
|
||||||
sha256 = "1bxdhxmiy6h4acq26lq43x2mxx6rawmfmlgsh5j7w8kyhkw5af0c";
|
sha256 = "1bxdhxmiy6h4acq26lq43x2mxx6rawmfmlgsh5j7w8kyhkw5af0c";
|
||||||
revert = true;
|
revert = true;
|
||||||
})
|
})
|
||||||
# To fix build errors with the older system FFmpeg:
|
|
||||||
(githubPatch {
|
|
||||||
# unbundle: add libavcodec/packet.h to shim headers
|
|
||||||
commit = "e4d228ec30607b06bf3fed77497abef89c29966a";
|
|
||||||
sha256 = "02jg2bdmgjcpmk6alb72jc93wy3nf2fpa72hb4aarq337i2mwn4v";
|
|
||||||
})
|
|
||||||
(githubPatch {
|
|
||||||
# Roll src/third_party/ffmpeg/ 7e1d53a09..cf7ee6598 (1000 commits)
|
|
||||||
commit = "3ec3b2992238d4b4764f99f04605e154688c7990";
|
|
||||||
sha256 = "1fwb154s5qcis490rvcvm14zrmaj59g5lg9zg8ada36vw9hycbrf";
|
|
||||||
revert = true;
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -31,15 +31,15 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dev": {
|
"dev": {
|
||||||
"version": "93.0.4549.3",
|
"version": "93.0.4557.4",
|
||||||
"sha256": "0bkr67n1d75ayd1d9sa57c99j85r83gadzfs8iw7kwiha9g0mjgp",
|
"sha256": "06397k5mkrrdrmd7icyvd1ifnmhincgw5nskgc3m436qzzifsab9",
|
||||||
"sha256bin64": "1hac6m668nrdzvfqx3vyc74pnx8lf973m1jxnm3cfy83g7wynphz",
|
"sha256bin64": "1q2c2dhx1yya6vhr82asf7h2zrv6kjzjv1a0zlfxkp3i6lnivgrd",
|
||||||
"deps": {
|
"deps": {
|
||||||
"gn": {
|
"gn": {
|
||||||
"version": "2021-06-18",
|
"version": "2021-06-25",
|
||||||
"url": "https://gn.googlesource.com/gn",
|
"url": "https://gn.googlesource.com/gn",
|
||||||
"rev": "170c2dba1e0c0299fe8c6a441caf2f2352a42ae0",
|
"rev": "4d207c94eab41f09c9a8505eb47f3d2919e47943",
|
||||||
"sha256": "1ylx8a5fxq7aciqs0mx7fld763sqkqn39lb9k951w6gksm15lrn3"
|
"sha256": "1jfgksa7rifh3ynnmd7m8xxggwxckz0jnwjaq9m5xapksb89hbn1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -4,16 +4,18 @@ let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform;
|
||||||
in
|
in
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "stern";
|
pname = "stern";
|
||||||
version = "1.14.0";
|
version = "1.19.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "stern";
|
owner = "stern";
|
||||||
repo = "stern";
|
repo = "stern";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-8l/Tr+IxR3yPmt9hI70XuUQ4YEYzRTMLbo8BsngoU60=";
|
sha256 = "sha256-jgmURvc1did3YgtqWlAzFbWxc3jHHylOfCVOLeAC7V8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-pvFT4A7bDBvBf1odyv3z4inw1/IsvOA+++OPbfNjzxM=";
|
vendorSha256 = "sha256-p8WoFDwABXcO54WKP5bszoht2JdjHlRJjbG8cMyNo6A=";
|
||||||
|
|
||||||
|
subPackages = [ "." ];
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
|
|
@ -20,4 +20,6 @@
|
||||||
weechat-autosort = callPackage ./weechat-autosort { };
|
weechat-autosort = callPackage ./weechat-autosort { };
|
||||||
|
|
||||||
weechat-otr = callPackage ./weechat-otr { };
|
weechat-otr = callPackage ./weechat-otr { };
|
||||||
|
|
||||||
|
weechat-go = callPackage ./weechat-go { };
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
{ lib, stdenv, fetchurl, weechat }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "weechat-go";
|
||||||
|
version = "2.7";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/weechat/scripts/raw/414cff3ee605ba204b607742430a21443c035b08/python/go.py";
|
||||||
|
sha256 = "0bnbfpj1qg4yzwbikh1aw5ajc8l44lkb0y0m6mz8grpf5bxk5cwm";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontUnpack = true;
|
||||||
|
|
||||||
|
passthru.scripts = [ "go.py" ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
install -D $src $out/share/go.py
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
inherit (weechat.meta) platforms;
|
||||||
|
description = "go.py is a weechat script to quickly jump to different buffers";
|
||||||
|
license = licenses.gpl3Plus;
|
||||||
|
maintainers = with maintainers; [ govanify ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -9,18 +9,18 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "shellhub-agent";
|
pname = "shellhub-agent";
|
||||||
version = "0.7.1";
|
version = "0.7.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "shellhub-io";
|
owner = "shellhub-io";
|
||||||
repo = "shellhub";
|
repo = "shellhub";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0fgkjv7p2p0k58ifs77qfy0ni2yhrmk8rqyysjxq0im6j3f3az11";
|
sha256 = "02ka7acynkwkml2pavlv4j5vkm6x5aq5sfxgydv26qzs39f1wdgc";
|
||||||
};
|
};
|
||||||
|
|
||||||
modRoot = "./agent";
|
modRoot = "./agent";
|
||||||
|
|
||||||
vendorSha256 = "1avl5xvav9y2vni5w3ksvrcz67x2kkadqw9p1cfq5rkjny1c2jrg";
|
vendorSha256 = "18z3vwcwkyj6hcvl35qmj034237h9l18dvcbx1hxry7qdwv807c9";
|
||||||
|
|
||||||
buildFlagsArray = [ "-ldflags=-s -w -X main.AgentVersion=v${version}" ];
|
buildFlagsArray = [ "-ldflags=-s -w -X main.AgentVersion=v${version}" ];
|
||||||
|
|
||||||
|
|
|
@ -4,13 +4,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "git-repo";
|
pname = "git-repo";
|
||||||
version = "2.15.4";
|
version = "2.16";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "android";
|
owner = "android";
|
||||||
repo = "tools_repo";
|
repo = "tools_repo";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1ayw2pz9falcsi528q63z3w7npzkk7y8z258danqh41j6q9871js";
|
sha256 = "sha256-F36MuqgVkKM2RCIGEGJmL3/KpZy3eDRZ7WWUE15mTfU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Fix 'NameError: name 'ssl' is not defined'
|
# Fix 'NameError: name 'ssl' is not defined'
|
||||||
|
|
|
@ -18,6 +18,7 @@ index f6d8fa3..5f0657d 100644
|
||||||
+ "${LIBOBS_INCLUDE_DIR}/../UI/obs-frontend-api")
|
+ "${LIBOBS_INCLUDE_DIR}/../UI/obs-frontend-api")
|
||||||
+
|
+
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/version.h.in ${CMAKE_CURRENT_SOURCE_DIR}/version.h)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/version.h.in ${CMAKE_CURRENT_SOURCE_DIR}/version.h)
|
||||||
|
|
||||||
set(move-transition_HEADERS
|
set(move-transition_HEADERS
|
||||||
@@ -38,4 +49,10 @@ target_link_libraries(move-transition
|
@@ -38,4 +49,10 @@ target_link_libraries(move-transition
|
||||||
libobs)
|
libobs)
|
|
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
||||||
cp ${obs-studio.src}/cmake/external/FindLibobs.cmake FindLibobs.cmake
|
cp ${obs-studio.src}/cmake/external/FindLibobs.cmake FindLibobs.cmake
|
||||||
'';
|
'';
|
||||||
|
|
||||||
patches = [ ./0001-Use-FindLibobs.cmake.patch ];
|
patches = [ ./obs-move-transition-use-FindLibobs.cmake.patch ];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace move-source-filter.c --replace '<../UI/obs-frontend-api/obs-frontend-api.h>' '<obs-frontend-api.h>'
|
substituteInPlace move-source-filter.c --replace '<../UI/obs-frontend-api/obs-frontend-api.h>' '<obs-frontend-api.h>'
|
||||||
|
|
|
@ -12,19 +12,20 @@
|
||||||
, pixman
|
, pixman
|
||||||
, udev
|
, udev
|
||||||
, libevdev
|
, libevdev
|
||||||
|
, libinput
|
||||||
, libX11
|
, libX11
|
||||||
, libGL
|
, libGL
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "river";
|
pname = "river";
|
||||||
version = "unstable-2021-06-06";
|
version = "unstable-2021-06-27";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ifreund";
|
owner = "ifreund";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "0e9dc089d14e2b5c923d483c62d342af29493cf0";
|
rev = "39578db1344ca298f2bb2fe2278a35108d5f2b66";
|
||||||
sha256 = "sha256-2rIZYr9Y+IBrox5MVrPpHeI8OVSXHsMZmcCagsX56lU=";
|
sha256 = "sha256-DQroN+FV7sq0PyczERZgnW73YKAVvj2JJQjfzidlBI8=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -38,6 +39,7 @@ stdenv.mkDerivation rec {
|
||||||
pixman
|
pixman
|
||||||
udev
|
udev
|
||||||
libevdev
|
libevdev
|
||||||
|
libinput
|
||||||
libX11
|
libX11
|
||||||
libGL
|
libGL
|
||||||
];
|
];
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
{ mkXfceDerivation, lib, python3, intltool, gettext,
|
||||||
|
gtk3, libxfce4ui, libxfce4util, pango, harfbuzz, gdk-pixbuf, atk }:
|
||||||
|
|
||||||
|
let
|
||||||
|
pythonEnv = python3.withPackages(ps: [ ps.pygobject3 ]);
|
||||||
|
makeTypelibPath = lib.makeSearchPathOutput "lib/girepository-1.0" "lib/girepository-1.0";
|
||||||
|
in mkXfceDerivation {
|
||||||
|
category = "apps";
|
||||||
|
pname = "xfce4-panel-profiles";
|
||||||
|
version = "1.0.13";
|
||||||
|
|
||||||
|
sha256 = "sha256-B3Q5d3KBN5m8wY82CIbIugJC8nNS+OcgKchn+TGrDhc=";
|
||||||
|
|
||||||
|
nativeBuildInputs = [ intltool gettext ];
|
||||||
|
propagatedBuildInputs = [ pythonEnv ];
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
./configure --prefix=$out
|
||||||
|
'';
|
||||||
|
|
||||||
|
postFixup = ''
|
||||||
|
wrapProgram $out/bin/xfce4-panel-profiles \
|
||||||
|
--set GI_TYPELIB_PATH ${makeTypelibPath [ gtk3 libxfce4ui libxfce4util pango harfbuzz gdk-pixbuf atk ]}
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Simple application to manage Xfce panel layouts";
|
||||||
|
};
|
||||||
|
}
|
|
@ -93,6 +93,8 @@ lib.makeScope pkgs.newScope (self: with self; {
|
||||||
|
|
||||||
xfburn = callPackage ./applications/xfburn { };
|
xfburn = callPackage ./applications/xfburn { };
|
||||||
|
|
||||||
|
xfce4-panel-profiles = callPackage ./applications/xfce4-panel-profiles { };
|
||||||
|
|
||||||
#### ART
|
#### ART
|
||||||
|
|
||||||
xfce4-icon-theme = callPackage ./art/xfce4-icon-theme { };
|
xfce4-icon-theme = callPackage ./art/xfce4-icon-theme { };
|
||||||
|
|
|
@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
|
||||||
for f in $out/bin/*
|
for f in $out/bin/*
|
||||||
do
|
do
|
||||||
wrapProgram $f \
|
wrapProgram $f \
|
||||||
--prefix PATH : ${stdenv.cc}/bin
|
--prefix PATH : ${lib.makeBinPath [ stdenv.cc ]}
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
40
pkgs/development/interpreters/hy/builder.nix
Normal file
40
pkgs/development/interpreters/hy/builder.nix
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
{ lib
|
||||||
|
, python3Packages
|
||||||
|
, hyDefinedPythonPackages /* Packages like with python.withPackages */
|
||||||
|
, ...
|
||||||
|
}:
|
||||||
|
python3Packages.buildPythonApplication rec {
|
||||||
|
pname = "hy";
|
||||||
|
version = "1.0a1";
|
||||||
|
|
||||||
|
src = python3Packages.fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "sha256-lCrbvbkeutSNmvvn/eHpTnJwPb5aEH7hWTXYSE+AJmU=";
|
||||||
|
};
|
||||||
|
|
||||||
|
checkInputs = with python3Packages; [ flake8 pytest ];
|
||||||
|
|
||||||
|
propagatedBuildInputs = with python3Packages; [
|
||||||
|
appdirs
|
||||||
|
astor
|
||||||
|
clint
|
||||||
|
colorama
|
||||||
|
fastentrypoints
|
||||||
|
funcparserlib
|
||||||
|
rply
|
||||||
|
pygments
|
||||||
|
] ++ (hyDefinedPythonPackages python3Packages);
|
||||||
|
|
||||||
|
# Hy does not include tests in the source distribution from PyPI, so only test executable.
|
||||||
|
checkPhase = ''
|
||||||
|
$out/bin/hy --help > /dev/null
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "A LISP dialect embedded in Python";
|
||||||
|
homepage = "https://hylang.org/";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ nixy mazurel ];
|
||||||
|
platforms = platforms.all;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,37 +1,15 @@
|
||||||
{ lib, python3Packages }:
|
{ lib
|
||||||
|
, callPackage
|
||||||
python3Packages.buildPythonApplication rec {
|
, hyDefinedPythonPackages ? python-packages: [] /* Packages like with python.withPackages */
|
||||||
pname = "hy";
|
}:
|
||||||
version = "0.19.0";
|
let
|
||||||
|
withPackages = (
|
||||||
src = python3Packages.fetchPypi {
|
python-packages: callPackage ./builder.nix {
|
||||||
inherit pname version;
|
hyDefinedPythonPackages = python-packages;
|
||||||
sha256 = "05k05qmiiysiwdc05sxmanwhv1crfwbb3l8swxfisbzbvmv1snis";
|
}
|
||||||
};
|
);
|
||||||
|
in
|
||||||
checkInputs = with python3Packages; [ flake8 pytest ];
|
(withPackages hyDefinedPythonPackages) // {
|
||||||
|
# Export withPackages function for hy customization
|
||||||
propagatedBuildInputs = with python3Packages; [
|
inherit withPackages;
|
||||||
appdirs
|
|
||||||
astor
|
|
||||||
clint
|
|
||||||
colorama
|
|
||||||
fastentrypoints
|
|
||||||
funcparserlib
|
|
||||||
rply
|
|
||||||
pygments
|
|
||||||
];
|
|
||||||
|
|
||||||
# Hy does not include tests in the source distribution from PyPI, so only test executable.
|
|
||||||
checkPhase = ''
|
|
||||||
$out/bin/hy --help > /dev/null
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "A LISP dialect embedded in Python";
|
|
||||||
homepage = "http://hylang.org/";
|
|
||||||
license = licenses.mit;
|
|
||||||
maintainers = with maintainers; [ nixy ];
|
|
||||||
platforms = platforms.all;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,11 +4,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "virglrenderer";
|
pname = "virglrenderer";
|
||||||
version = "0.8.2";
|
version = "0.9.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://gitlab.freedesktop.org/virgl/virglrenderer/-/archive/virglrenderer-${version}/virglrenderer-virglrenderer-${version}.tar.bz2";
|
url = "https://gitlab.freedesktop.org/virgl/virglrenderer/-/archive/virglrenderer-${version}/virglrenderer-virglrenderer-${version}.tar.bz2";
|
||||||
sha256 = "07vfzg99wq92yg2phza9jc0zvps34yy9gc8v4hibqchdl77fmspx";
|
sha256 = "1h76a1ylhh4niq33sa5knx033sr4k2816vibh4m58j54y7qc6346";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ libGLU epoxy libX11 libdrm mesa ];
|
buildInputs = [ libGLU epoxy libX11 libdrm mesa ];
|
||||||
|
|
|
@ -1,24 +1,42 @@
|
||||||
{ lib
|
{ lib
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, python
|
, pytestCheckHook
|
||||||
|
, pygments
|
||||||
|
, pythonOlder
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aiocoap";
|
pname = "aiocoap";
|
||||||
version = "0.4b3";
|
version = "0.4.1";
|
||||||
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "chrysn";
|
owner = "chrysn";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1zjg475xgvi19rqg7jmfgy5nfabq50aph0231p9jba211ps7cmxw";
|
sha256 = "0k7ii2l3n139f8712ja6w3z73xiwlfsjgdc4k5c514ni2w6w2yjc";
|
||||||
};
|
};
|
||||||
|
|
||||||
checkPhase = ''
|
propagatedBuildInputs = [
|
||||||
${python.interpreter} -m aiocoap.cli.defaults
|
pygments
|
||||||
${python.interpreter} -m unittest discover -v
|
];
|
||||||
'';
|
|
||||||
|
checkInputs = [
|
||||||
|
pytestCheckHook
|
||||||
|
];
|
||||||
|
|
||||||
|
disabledTestPaths = [
|
||||||
|
# Don't test the plugins
|
||||||
|
"tests/test_tls.py"
|
||||||
|
"tests/test_reverseproxy.py"
|
||||||
|
"tests/test_oscore_plugtest.py"
|
||||||
|
];
|
||||||
|
|
||||||
|
disabledTests = [
|
||||||
|
# Communication is not properly mocked
|
||||||
|
"test_uri_parser"
|
||||||
|
];
|
||||||
|
|
||||||
pythonImportsCheck = [ "aiocoap" ];
|
pythonImportsCheck = [ "aiocoap" ];
|
||||||
|
|
||||||
|
|
43
pkgs/development/python-modules/aiomusiccast/default.nix
Normal file
43
pkgs/development/python-modules/aiomusiccast/default.nix
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
{ lib
|
||||||
|
, buildPythonPackage
|
||||||
|
, pythonOlder
|
||||||
|
, fetchFromGitHub
|
||||||
|
, poetry-core
|
||||||
|
, aiohttp
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "aiomusiccast";
|
||||||
|
version = "0.8.0";
|
||||||
|
|
||||||
|
format = "pyproject";
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.8";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "vigonotion";
|
||||||
|
repo = "aiomusiccast";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "1x55w2vhb5mgvlg19cs887xd7fg0cwnp6hb34vajp80q4yff9xk5";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
poetry-core
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
aiohttp
|
||||||
|
];
|
||||||
|
|
||||||
|
# upstream has no tests
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
pythonImportsCheck = [ "aiomusiccast" ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Companion library for musiccast devices intended for the Home Assistant integration";
|
||||||
|
homepage = "https://github.com/vigonotion/aiomusiccast";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ dotlambda ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,7 +1,6 @@
|
||||||
{ lib
|
{ lib
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, fetchpatch
|
|
||||||
, poetry-core
|
, poetry-core
|
||||||
, python
|
, python
|
||||||
, pythonOlder
|
, pythonOlder
|
||||||
|
@ -9,7 +8,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "async-dns";
|
pname = "async-dns";
|
||||||
version = "1.1.9";
|
version = "1.1.10";
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
|
@ -17,23 +16,13 @@ buildPythonPackage rec {
|
||||||
owner = "gera2ld";
|
owner = "gera2ld";
|
||||||
repo = "async_dns";
|
repo = "async_dns";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1z8j0s3dwcyavarhx41q75k1cmfzmwiqdh4svv3v15np26cywyag";
|
sha256 = "1yxmdlf2n66kp2mprsd4bvfsf63l4c4cfkjm2rm063pmlifz2fvj";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
poetry-core
|
poetry-core
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Switch to poetry-core, https://github.com/gera2ld/async_dns/pull/22
|
|
||||||
# Can be remove for async-dns>1.1.9
|
|
||||||
(fetchpatch {
|
|
||||||
name = "switch-to-poetry-core.patch";
|
|
||||||
url = "https://github.com/gera2ld/async_dns/commit/25fee497aae3bde0ddf9f8804d249a27edbe607e.patch";
|
|
||||||
sha256 = "0w4zlppnp1a2q1wasc95ymqx3djswl32y5nw6fvz3nn8jg4gc743";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
export HOME=$TMPDIR
|
export HOME=$TMPDIR
|
||||||
# Test needs network access
|
# Test needs network access
|
||||||
|
|
|
@ -2,30 +2,25 @@
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, fetchPypi
|
, fetchPypi
|
||||||
, pythonAtLeast
|
, pythonAtLeast
|
||||||
, fetchpatch
|
|
||||||
, chardet
|
, chardet
|
||||||
, attrs
|
, attrs
|
||||||
, commoncode
|
, commoncode
|
||||||
, pytestCheckHook
|
, pytestCheckHook
|
||||||
|
, setuptools-scm
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "debian-inspector";
|
pname = "debian-inspector";
|
||||||
version = "0.9.10";
|
version = "21.5.25";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
pname = "debian_inspector";
|
pname = "debian_inspector";
|
||||||
inherit version;
|
inherit version;
|
||||||
sha256 = "fd29a02b925a4de0d7bb00c29bb05f19715a304bc10ef7b9ad06a93893dc3a8c";
|
sha256 = "1d3xaqw00kav85nk29qm2yqb73bkyqf185fs1q0vgd7bnap9wqaw";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = lib.optionals (pythonAtLeast "3.9") [
|
nativeBuildInputs = [
|
||||||
# https://github.com/nexB/debian-inspector/pull/15
|
setuptools-scm
|
||||||
# fixes tests on Python 3.9
|
|
||||||
(fetchpatch {
|
|
||||||
name = "drop-encoding-argument.patch";
|
|
||||||
url = "https://github.com/nexB/debian-inspector/commit/ff991cdb788671ca9b81f1602b70a439248fd1aa.patch";
|
|
||||||
sha256 = "bm3k7vb9+Rm6+YicQEeDOOUVut8xpDaNavG+t2oLZkI=";
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
|
|
||||||
dontConfigure = true;
|
dontConfigure = true;
|
||||||
|
|
|
@ -4,15 +4,16 @@
|
||||||
, plugincode
|
, plugincode
|
||||||
, p7zip
|
, p7zip
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "extractcode-7z";
|
pname = "extractcode-7z";
|
||||||
version = "21.4.4";
|
version = "21.5.31";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "nexB";
|
owner = "nexB";
|
||||||
repo = "scancode-plugins";
|
repo = "scancode-plugins";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "xnUGDMS34iMVMGo/nZwRarGzzbj3X4Rt+YHvvKpmy6A=";
|
sha256 = "02qinla281fc6pmg5xzsrmqnf9js76f2qcbf98zq7m2dkn70as4w";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = "source/builtins/extractcode_7z-linux";
|
sourceRoot = "source/builtins/extractcode_7z-linux";
|
||||||
|
|
|
@ -15,13 +15,13 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "extractcode-libarchive";
|
pname = "extractcode-libarchive";
|
||||||
version = "21.4.4";
|
version = "21.5.31";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "nexB";
|
owner = "nexB";
|
||||||
repo = "scancode-plugins";
|
repo = "scancode-plugins";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "xnUGDMS34iMVMGo/nZwRarGzzbj3X4Rt+YHvvKpmy6A=";
|
sha256 = "02qinla281fc6pmg5xzsrmqnf9js76f2qcbf98zq7m2dkn70as4w";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = "source/builtins/extractcode_libarchive-linux";
|
sourceRoot = "source/builtins/extractcode_libarchive-linux";
|
||||||
|
|
|
@ -7,14 +7,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "guppy3";
|
pname = "guppy3";
|
||||||
version = "3.1.0";
|
version = "3.1.1";
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "zhuyifei1999";
|
owner = "zhuyifei1999";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0yjsn8najbic4f50nj6jzhzrhj1bw6918w0gihdkzhqynwgqi64m";
|
sha256 = "14iwah1i4dcn74zjj9sq3av1yh9q5nvgqwccnn71blp7gxcnxnvh";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ tkinter ];
|
propagatedBuildInputs = [ tkinter ];
|
||||||
|
|
|
@ -35,8 +35,14 @@ buildPythonPackage rec {
|
||||||
yara-python
|
yara-python
|
||||||
];
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace requirements.txt \
|
||||||
|
--replace "pefile==2019.4.18" "pefile"
|
||||||
|
'';
|
||||||
|
|
||||||
# Project has no tests. They will come with the next release
|
# Project has no tests. They will come with the next release
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
pythonImportsCheck = [ "malduck" ];
|
pythonImportsCheck = [ "malduck" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -1,18 +1,19 @@
|
||||||
{ lib, buildPythonPackage, fetchFromGitHub, geopandas, descartes, matplotlib, networkx, numpy
|
{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder, geopandas, matplotlib, networkx, numpy
|
||||||
, pandas, requests, Rtree, shapely, folium, scikit-learn, scipy}:
|
, pandas, requests, Rtree, shapely, folium, scikit-learn, scipy, gdal, rasterio}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "osmnx";
|
pname = "osmnx";
|
||||||
version = "0.9";
|
version = "1.1.1";
|
||||||
|
disabled = pythonOlder "3.6";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "gboeing";
|
owner = "gboeing";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1k3y5kl4k93vxaxyanc040x44s2fyyc3m1ndy2j3kg0037z8ad4z";
|
sha256 = "0dkv3fnlq23d7d30lhdf4a313lxy3a5qfldidvszs1z9n16ycnwb";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ geopandas descartes matplotlib networkx numpy pandas requests Rtree shapely folium scikit-learn scipy ];
|
propagatedBuildInputs = [ geopandas matplotlib networkx numpy pandas requests Rtree shapely folium scikit-learn scipy gdal rasterio ];
|
||||||
|
|
||||||
# requires network
|
# requires network
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
|
@ -1,24 +1,34 @@
|
||||||
{ buildPythonPackage
|
{ lib
|
||||||
|
, buildPythonPackage
|
||||||
, future
|
, future
|
||||||
, fetchPypi
|
, fetchFromGitHub
|
||||||
, lib
|
, setuptools-scm
|
||||||
|
, pythonOlder
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pefile";
|
pname = "pefile";
|
||||||
version = "2019.4.18";
|
version = "2021.5.24";
|
||||||
|
disabled = pythonOlder "3.6";
|
||||||
|
|
||||||
propagatedBuildInputs = [ future ];
|
src = fetchFromGitHub {
|
||||||
|
owner = "erocarrera";
|
||||||
src = fetchPypi {
|
repo = pname;
|
||||||
inherit pname version;
|
rev = "v${version}";
|
||||||
sha256 = "a5d6e8305c6b210849b47a6174ddf9c452b2888340b8177874b862ba6c207645";
|
sha256 = "0qdy88dvy29ixsyfqdcvf3w6rz09vpimk0568i09v1ayhs52p62k";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Test data encrypted.
|
nativeBuildInputs = [
|
||||||
|
setuptools-scm
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
future
|
||||||
|
];
|
||||||
|
|
||||||
|
# Test data encrypted
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
# Verify import still works.
|
|
||||||
pythonImportsCheck = [ "pefile" ];
|
pythonImportsCheck = [ "pefile" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pyahocorasick";
|
pname = "pyahocorasick";
|
||||||
version = "1.4.0";
|
version = "1.4.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "WojciechMula";
|
owner = "WojciechMula";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0plm9x2gziayjsl7flsgn1z8qx88c9vqm4fs1wq7dv7fr188liik";
|
sha256 = "13x3718if28l50474xrz1b9709kvnvdg3nzm6y8bh7mc9a4zyss5";
|
||||||
};
|
};
|
||||||
|
|
||||||
checkInputs = [ pytestCheckHook ];
|
checkInputs = [ pytestCheckHook ];
|
||||||
|
|
34
pkgs/development/python-modules/pyfreedompro/default.nix
Normal file
34
pkgs/development/python-modules/pyfreedompro/default.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{ lib
|
||||||
|
, buildPythonPackage
|
||||||
|
, pythonOlder
|
||||||
|
, fetchPypi
|
||||||
|
, aiohttp
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "pyfreedompro";
|
||||||
|
version = "1.1.0";
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.6";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "92812070a0c74761fa0c8cac98ddbe0bca781c8de80e2b08dbd04492e831c172";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
aiohttp
|
||||||
|
];
|
||||||
|
|
||||||
|
# upstream has no tests
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
pythonImportsCheck = [ "aiohttp" ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Python library for Freedompro API";
|
||||||
|
homepage = "https://github.com/stefano055415/pyfreedompro";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ dotlambda ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pysyncobj";
|
pname = "pysyncobj";
|
||||||
version = "0.3.7";
|
version = "0.3.8";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bakwc";
|
owner = "bakwc";
|
||||||
repo = "PySyncObj";
|
repo = "PySyncObj";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0i7gjapaggkfvys4rgd4krpmh6mxwpzv30ngiwb6ddgp8jx0nzxk";
|
sha256 = "sha256-T7ecy5/1eF0pYaOv74SBEp6V6Z23E2b9lo5Q/gig3Cw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Tests require network features
|
# Tests require network features
|
||||||
|
|
|
@ -10,12 +10,12 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pytest-cases";
|
pname = "pytest-cases";
|
||||||
version = "3.6.1";
|
version = "3.6.2";
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "2009845554d3169dca99a7397d9904e5dbb58726c7417e8c308dda86f8966311";
|
sha256 = "1hipm73s97dx37la57aif1x7myidirfslr1k6apvwyc2929y2lsk";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "pytibber";
|
pname = "pytibber";
|
||||||
version = "0.18.0";
|
version = "0.19.0";
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||||
owner = "Danielhiversen";
|
owner = "Danielhiversen";
|
||||||
repo = "pyTibber";
|
repo = "pyTibber";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-612BBDgVcdpOsEl2Hc+oCDFmSPGjHvfmVr7i7zdfB/o=";
|
sha256 = "sha256-9xKt6OspdM7zWbVzjtvDPYuGyIW3K6ioASt53LOgdvk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -2,23 +2,24 @@
|
||||||
, cython, setuptools
|
, cython, setuptools
|
||||||
, numpy, affine, attrs, cligj, click-plugins, snuggs, gdal
|
, numpy, affine, attrs, cligj, click-plugins, snuggs, gdal
|
||||||
, pytest, pytestcov, packaging, hypothesis, boto3, mock
|
, pytest, pytestcov, packaging, hypothesis, boto3, mock
|
||||||
|
, certifi, shapely
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "rasterio";
|
pname = "rasterio";
|
||||||
version = "1.1.5";
|
version = "1.2.6";
|
||||||
|
|
||||||
# Pypi doesn't ship the tests, so we fetch directly from GitHub
|
# Pypi doesn't ship the tests, so we fetch directly from GitHub
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mapbox";
|
owner = "mapbox";
|
||||||
repo = "rasterio";
|
repo = "rasterio";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "168b6hmx026jsvhnq6s5k0qfhzda02mmx1alax6wqk16mk63mqcz";
|
sha256 = "sha256-rf2qdUhbS4Z2+mvlN1RzZvlgTgjqiBoQzry4z5QLSUc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
checkInputs = [ boto3 pytest pytestcov packaging hypothesis ] ++ lib.optional (!isPy3k) mock;
|
checkInputs = [ boto3 pytest pytestcov packaging hypothesis shapely ] ++ lib.optional (!isPy3k) mock;
|
||||||
nativeBuildInputs = [ cython gdal ];
|
nativeBuildInputs = [ cython gdal ];
|
||||||
propagatedBuildInputs = [ gdal numpy attrs affine cligj click-plugins snuggs setuptools ];
|
propagatedBuildInputs = [ certifi gdal numpy attrs affine cligj click-plugins snuggs setuptools ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Python package to read and write geospatial raster data";
|
description = "Python package to read and write geospatial raster data";
|
||||||
|
|
|
@ -1,36 +1,28 @@
|
||||||
{ lib
|
{ lib
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, requests
|
|
||||||
, future
|
, future
|
||||||
, kinparse
|
, kinparse
|
||||||
, enum34
|
|
||||||
, pyspice
|
, pyspice
|
||||||
, graphviz
|
, graphviz
|
||||||
, pillow
|
|
||||||
, cffi
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "skidl";
|
pname = "skidl";
|
||||||
version = "unstable-2020-09-15";
|
version = "1.0.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "xesscorp";
|
owner = "xesscorp";
|
||||||
repo = "skidl";
|
repo = "skidl";
|
||||||
rev = "551bdb92a50c0894b0802c0a89b4cb62a5b4038f";
|
rev = version;
|
||||||
sha256 = "1g65cyxpkqshgsggav2q3f76rbj5pzh7sacyhmhzvfz4zfarkcxk";
|
sha256 = "1m0hllvmr5nkl4zy8yyzfgw9zmbrrzd5pw87ahd2mq68fjpcaqq5";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
requests
|
|
||||||
future
|
future
|
||||||
kinparse
|
kinparse
|
||||||
enum34
|
|
||||||
pyspice
|
pyspice
|
||||||
graphviz
|
graphviz
|
||||||
pillow
|
|
||||||
cffi
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Checks require availability of the kicad symbol libraries.
|
# Checks require availability of the kicad symbol libraries.
|
||||||
|
@ -38,8 +30,8 @@ buildPythonPackage rec {
|
||||||
pythonImportsCheck = [ "skidl" ];
|
pythonImportsCheck = [ "skidl" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "SKiDL is a module that extends Python with the ability to design electronic circuits";
|
description = "Module that extends Python with the ability to design electronic circuits";
|
||||||
homepage = "https://xesscorp.github.io/skidl/docs/_site/";
|
homepage = "https://xess.com/skidl/docs/_site/";
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
maintainers = with maintainers; [ matthuszagh ];
|
maintainers = with maintainers; [ matthuszagh ];
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,40 +0,0 @@
|
||||||
From d944d8fa6cb6d1667f3e4c4e0cff4c4b2a7c0a30 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Cole Helbling <cole.e.helbling@outlook.com>
|
|
||||||
Date: Fri, 7 May 2021 11:00:46 -0700
|
|
||||||
Subject: [PATCH] Replace `debut` with `debian-inspector`
|
|
||||||
|
|
||||||
---
|
|
||||||
requirements.in | 2 +-
|
|
||||||
tern/analyze/common.py | 4 ++--
|
|
||||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/requirements.in b/requirements.in
|
|
||||||
index edd90ab..5135841 100644
|
|
||||||
--- a/requirements.in
|
|
||||||
+++ b/requirements.in
|
|
||||||
@@ -12,6 +12,6 @@ requests
|
|
||||||
stevedore
|
|
||||||
pbr
|
|
||||||
dockerfile-parse
|
|
||||||
-debut
|
|
||||||
+debian-inspector
|
|
||||||
regex
|
|
||||||
GitPython
|
|
||||||
diff --git a/tern/analyze/common.py b/tern/analyze/common.py
|
|
||||||
index 6962404..0f5e77d 100644
|
|
||||||
--- a/tern/analyze/common.py
|
|
||||||
+++ b/tern/analyze/common.py
|
|
||||||
@@ -19,8 +19,8 @@ from tern.utils import cache
|
|
||||||
from tern.utils import constants
|
|
||||||
from tern.utils import general
|
|
||||||
from tern.utils import rootfs
|
|
||||||
-from debut import debcon
|
|
||||||
-from debut import copyright as debut_copyright
|
|
||||||
+from debian_inspector import debcon
|
|
||||||
+from debian_inspector import copyright as debut_copyright
|
|
||||||
|
|
||||||
# global logger
|
|
||||||
logger = logging.getLogger(constants.logger_name)
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
, prettytable
|
, prettytable
|
||||||
, idna
|
, idna
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "tern";
|
pname = "tern";
|
||||||
version = "2.6.1";
|
version = "2.6.1";
|
||||||
|
@ -22,14 +23,6 @@ buildPythonPackage rec {
|
||||||
sha256 = "749c18ef493ebe3ac28624b2b26c6e38f77de2afd6a6579d2c92393d8fbdbd46";
|
sha256 = "749c18ef493ebe3ac28624b2b26c6e38f77de2afd6a6579d2c92393d8fbdbd46";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
|
||||||
# debut was renamed to debian-inspector
|
|
||||||
# https://github.com/tern-tools/tern/pull/962
|
|
||||||
# NOTE: Has to be in-tree because the upstream patch doesn't apply cleanly
|
|
||||||
# to the PyPi source.
|
|
||||||
./0001-Replace-debut-with-debian-inspector.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
cp requirements.{in,txt}
|
cp requirements.{in,txt}
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -1,30 +1,22 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, installShellFiles
|
, installShellFiles
|
||||||
, python3
|
, python3
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
python3.pkgs.buildPythonApplication rec {
|
||||||
pname = "flawfinder";
|
pname = "flawfinder";
|
||||||
version = "2.0.15";
|
version = "2.0.18";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://dwheeler.com/flawfinder/flawfinder-${version}.tar.gz";
|
url = "https://dwheeler.com/flawfinder/flawfinder-${version}.tar.gz";
|
||||||
sha256 = "01j4szy8gwvikrfzfayfayjnc1za0jxsnxp5fsa6d06kn69wyr8a";
|
sha256 = "1hk2y13fd2a5gf42a1hk45hw6pbls715wi9k1yh3c3wyhvbyylba";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
# Project is using a combination of bash/Python for the tests
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
buildInputs = [ python3 ];
|
pythonImportsCheck = [ "flawfinder" ];
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
mkdir -p $out/bin
|
|
||||||
cp ${pname} $out/bin
|
|
||||||
installManPage flawfinder.1
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Tool to examines C/C++ source code for security flaws";
|
description = "Tool to examines C/C++ source code for security flaws";
|
||||||
|
|
40
pkgs/development/tools/kustomize/3.nix
Normal file
40
pkgs/development/tools/kustomize/3.nix
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
{ lib, buildGoModule, fetchFromGitHub }:
|
||||||
|
|
||||||
|
buildGoModule rec {
|
||||||
|
pname = "kustomize_3";
|
||||||
|
version = "3.10.0";
|
||||||
|
# rev is the commit of the tag, mainly for kustomize version command output
|
||||||
|
rev = "602ad8aa98e2e17f6c9119e027a09757e63c8bec";
|
||||||
|
|
||||||
|
ldflags = let t = "sigs.k8s.io/kustomize/api/provenance"; in [
|
||||||
|
"-s -w"
|
||||||
|
"-X ${t}.version=${version}"
|
||||||
|
"-X ${t}.gitCommit=${rev}"
|
||||||
|
];
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "kubernetes-sigs";
|
||||||
|
repo = "kustomize";
|
||||||
|
rev = "kustomize/v${version}";
|
||||||
|
sha256 = "sha256-ESIykbAKXdv8zM9be0zEJ71rBAzZby0aTg25NlCsIOM=";
|
||||||
|
};
|
||||||
|
|
||||||
|
doCheck = true;
|
||||||
|
|
||||||
|
# avoid finding test and development commands
|
||||||
|
sourceRoot = "source/kustomize";
|
||||||
|
|
||||||
|
vendorSha256 = "sha256-xLeetcmzvpILLLMhMx7oahWLxguFjG3qbYpeeWpFUlw=";
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Customization of kubernetes YAML configurations";
|
||||||
|
longDescription = ''
|
||||||
|
kustomize lets you customize raw, template-free YAML files for
|
||||||
|
multiple purposes, leaving the original YAML untouched and usable
|
||||||
|
as is.
|
||||||
|
'';
|
||||||
|
homepage = "https://github.com/kubernetes-sigs/kustomize";
|
||||||
|
license = licenses.asl20;
|
||||||
|
maintainers = with maintainers; [ carlosdagos vdemeester zaninime Chili-Man saschagrunert ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -58,8 +58,8 @@ let
|
||||||
inherit version;
|
inherit version;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://dl.xonotic.org/xonotic-${version}.zip";
|
url = "https://dl.xonotic.org/xonotic-${version}-source.zip";
|
||||||
sha256 = "sha256-oi9yMPSGxYJbVc/a3XM5nJsPrpjJ4IHdisduygg1mtU=";
|
sha256 = "0axxw04fyz6jlfqd0kp7hdrqa0li31sx1pbipf2j5qp9wvqicsay";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ unzip ];
|
nativeBuildInputs = [ unzip ];
|
||||||
|
@ -120,7 +120,7 @@ let
|
||||||
in rec {
|
in rec {
|
||||||
xonotic-data = fetchzip {
|
xonotic-data = fetchzip {
|
||||||
name = "xonotic-data";
|
name = "xonotic-data";
|
||||||
url = "https://dl.xonotic.org/xonotic-data-${version}.zip";
|
url = "https://dl.xonotic.org/xonotic-${version}.zip";
|
||||||
sha256 = "1ygkh0v68y4sd1w5vpk8dgb65h5jm599hwszdfgjp3ax4d3ml81x";
|
sha256 = "1ygkh0v68y4sd1w5vpk8dgb65h5jm599hwszdfgjp3ax4d3ml81x";
|
||||||
extraPostFetch = ''
|
extraPostFetch = ''
|
||||||
cd $out
|
cd $out
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "firejail";
|
pname = "firejail";
|
||||||
version = "0.9.64.4";
|
version = "0.9.66";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "netblue30";
|
owner = "netblue30";
|
||||||
repo = "firejail";
|
repo = "firejail";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-q/XL8cznHlUXdubUEptEAVma1jRUqFb5XcLAV0RVCzs=";
|
sha256 = "sha256-oKstTiGt0r4wePaZ9u1o78GZ1XWJ27aS0BdLxmfYk9Q=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ which ];
|
buildInputs = [ which ];
|
||||||
|
|
|
@ -11,15 +11,15 @@ let
|
||||||
in
|
in
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "pomerium";
|
pname = "pomerium";
|
||||||
version = "0.14.4";
|
version = "0.14.7";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "pomerium";
|
owner = "pomerium";
|
||||||
repo = "pomerium";
|
repo = "pomerium";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256:097csr8f43cn0iq030ajvvpwnwcfmjxyyk6pcisdy937axlrzska";
|
hash = "sha256:1jb96jk5qmary4fi1z9zwmppdyskj0qb6qii8s8mwazjjxqj1z2s";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256:0n45xvwjiqyh41dsm4z1rnkgkycf5wfmacm804hqnd5rz7xk2shf";
|
vendorSha256 = "sha256:1daabi9qc9nx8bafn26iw6rv4vx2xpd0nnk06265aqaksx26db0s";
|
||||||
subPackages = [
|
subPackages = [
|
||||||
"cmd/pomerium"
|
"cmd/pomerium"
|
||||||
"cmd/pomerium-cli"
|
"cmd/pomerium-cli"
|
||||||
|
|
|
@ -12,11 +12,11 @@ let
|
||||||
in
|
in
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "matrix-synapse";
|
pname = "matrix-synapse";
|
||||||
version = "1.37.0";
|
version = "1.37.1";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-BWGbfDBB1jX0PJSR8WCZE3FE1pDs0fRg8/fML3FsJHA=";
|
sha256 = "sha256-KxDHJrKm/QUZtOzI6MEpIUb4hTtxtIPLFuD1as3j4EA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
{ stdenv, makeWrapper, runCommandNoCC, lib, nixosTests, writeShellScript
|
{ stdenv, makeWrapper, runCommandNoCC, lib, nixosTests, writeShellScript
|
||||||
, fetchFromGitHub, bundlerEnv, ruby, replace, gzip, gnutar, git, cacert
|
, fetchFromGitHub, bundlerEnv, callPackage
|
||||||
, util-linux, gawk, imagemagick, optipng, pngquant, libjpeg, jpegoptim
|
|
||||||
, gifsicle, libpsl, redis, postgresql, which, brotli, procps, rsync
|
, ruby, replace, gzip, gnutar, git, cacert, util-linux, gawk
|
||||||
, nodePackages, v8
|
, imagemagick, optipng, pngquant, libjpeg, jpegoptim, gifsicle, libpsl
|
||||||
|
, redis, postgresql, which, brotli, procps, rsync, nodePackages, v8
|
||||||
|
|
||||||
|
, plugins ? []
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -46,6 +49,35 @@ let
|
||||||
UNICORN_LISTENER = "/run/discourse/sockets/unicorn.sock";
|
UNICORN_LISTENER = "/run/discourse/sockets/unicorn.sock";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
mkDiscoursePlugin =
|
||||||
|
{ name ? null
|
||||||
|
, pname ? null
|
||||||
|
, version ? null
|
||||||
|
, meta ? null
|
||||||
|
, bundlerEnvArgs ? {}
|
||||||
|
, src
|
||||||
|
, ...
|
||||||
|
}@args:
|
||||||
|
let
|
||||||
|
rubyEnv = bundlerEnv (bundlerEnvArgs // {
|
||||||
|
inherit name pname version ruby;
|
||||||
|
});
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation (builtins.removeAttrs args [ "bundlerEnvArgs" ] // {
|
||||||
|
inherit name pname version src meta;
|
||||||
|
pluginName = if name != null then name else "${pname}-${version}";
|
||||||
|
phases = [ "unpackPhase" "installPhase" ];
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
mkdir -p $out
|
||||||
|
cp -r * $out/
|
||||||
|
'' + lib.optionalString (bundlerEnvArgs != {}) ''
|
||||||
|
ln -sf ${rubyEnv}/lib/ruby/gems $out/gems
|
||||||
|
'' + ''
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
|
||||||
rake = runCommandNoCC "discourse-rake" {
|
rake = runCommandNoCC "discourse-rake" {
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
} ''
|
} ''
|
||||||
|
@ -121,6 +153,12 @@ let
|
||||||
nodePackages.uglify-js
|
nodePackages.uglify-js
|
||||||
];
|
];
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Use the Ruby API version in the plugin gem path, to match the
|
||||||
|
# one constructed by bundlerEnv
|
||||||
|
./plugin_gem_api_version.patch
|
||||||
|
];
|
||||||
|
|
||||||
# We have to set up an environment that is close enough to
|
# We have to set up an environment that is close enough to
|
||||||
# production ready or the assets:precompile task refuses to
|
# production ready or the assets:precompile task refuses to
|
||||||
# run. This means that Redis and PostgreSQL has to be running and
|
# run. This means that Redis and PostgreSQL has to be running and
|
||||||
|
@ -148,6 +186,8 @@ let
|
||||||
mkdir $NIX_BUILD_TOP/tmp_home
|
mkdir $NIX_BUILD_TOP/tmp_home
|
||||||
export HOME=$NIX_BUILD_TOP/tmp_home
|
export HOME=$NIX_BUILD_TOP/tmp_home
|
||||||
|
|
||||||
|
${lib.concatMapStringsSep "\n" (p: "ln -sf ${p} plugins/${p.pluginName or ""}") plugins}
|
||||||
|
|
||||||
export RAILS_ENV=production
|
export RAILS_ENV=production
|
||||||
|
|
||||||
bundle exec rake db:migrate >/dev/null
|
bundle exec rake db:migrate >/dev/null
|
||||||
|
@ -195,6 +235,14 @@ let
|
||||||
# Log Unicorn messages to the journal and make request timeout
|
# Log Unicorn messages to the journal and make request timeout
|
||||||
# configurable
|
# configurable
|
||||||
./unicorn_logging_and_timeout.patch
|
./unicorn_logging_and_timeout.patch
|
||||||
|
|
||||||
|
# Use the Ruby API version in the plugin gem path, to match the
|
||||||
|
# one constructed by bundlerEnv
|
||||||
|
./plugin_gem_api_version.patch
|
||||||
|
|
||||||
|
# Use mv instead of rename, since rename doesn't work across
|
||||||
|
# device boundaries
|
||||||
|
./use_mv_instead_of_rename.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -203,8 +251,6 @@ let
|
||||||
# warnings and means we don't have to link back to lib from the
|
# warnings and means we don't have to link back to lib from the
|
||||||
# state directory.
|
# state directory.
|
||||||
find config -type f -execdir sed -Ei "s,(\.\./)+(lib|app)/,$out/share/discourse/\2/," {} \;
|
find config -type f -execdir sed -Ei "s,(\.\./)+(lib|app)/,$out/share/discourse/\2/," {} \;
|
||||||
|
|
||||||
${replace}/bin/replace-literal -f -r -e 'File.rename(temp_destination, destination)' "FileUtils.mv(temp_destination, destination)" .
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
|
@ -212,7 +258,6 @@ let
|
||||||
|
|
||||||
mv config config.dist
|
mv config config.dist
|
||||||
mv public public.dist
|
mv public public.dist
|
||||||
mv plugins plugins.dist
|
|
||||||
|
|
||||||
runHook postBuild
|
runHook postBuild
|
||||||
'';
|
'';
|
||||||
|
@ -230,6 +275,7 @@ let
|
||||||
ln -sf /run/discourse/public $out/share/discourse/public
|
ln -sf /run/discourse/public $out/share/discourse/public
|
||||||
ln -sf /run/discourse/plugins $out/share/discourse/plugins
|
ln -sf /run/discourse/plugins $out/share/discourse/plugins
|
||||||
ln -sf ${assets} $out/share/discourse/public.dist/assets
|
ln -sf ${assets} $out/share/discourse/public.dist/assets
|
||||||
|
${lib.concatMapStringsSep "\n" (p: "ln -sf ${p} $out/share/discourse/plugins/${p.pluginName or ""}") plugins}
|
||||||
|
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
@ -243,7 +289,9 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
inherit rubyEnv runtimeEnv runtimeDeps rake;
|
inherit rubyEnv runtimeEnv runtimeDeps rake mkDiscoursePlugin;
|
||||||
|
enabledPlugins = plugins;
|
||||||
|
plugins = callPackage ./plugins/all-plugins.nix { inherit mkDiscoursePlugin; };
|
||||||
ruby = rubyEnv.wrappedRuby;
|
ruby = rubyEnv.wrappedRuby;
|
||||||
tests = nixosTests.discourse;
|
tests = nixosTests.discourse;
|
||||||
};
|
};
|
||||||
|
|
13
pkgs/servers/web-apps/discourse/plugin_gem_api_version.patch
Normal file
13
pkgs/servers/web-apps/discourse/plugin_gem_api_version.patch
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
diff --git a/lib/plugin_gem.rb b/lib/plugin_gem.rb
|
||||||
|
index 855d1aca2c..8115623547 100644
|
||||||
|
--- a/lib/plugin_gem.rb
|
||||||
|
+++ b/lib/plugin_gem.rb
|
||||||
|
@@ -4,7 +4,7 @@ module PluginGem
|
||||||
|
def self.load(path, name, version, opts = nil)
|
||||||
|
opts ||= {}
|
||||||
|
|
||||||
|
- gems_path = File.dirname(path) + "/gems/#{RUBY_VERSION}"
|
||||||
|
+ gems_path = File.dirname(path) + "/gems/#{Gem.ruby_api_version}"
|
||||||
|
|
||||||
|
spec_path = gems_path + "/specifications"
|
||||||
|
|
12
pkgs/servers/web-apps/discourse/plugins/all-plugins.nix
Normal file
12
pkgs/servers/web-apps/discourse/plugins/all-plugins.nix
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{ mkDiscoursePlugin, newScope, fetchFromGitHub, ... }@args:
|
||||||
|
let
|
||||||
|
callPackage = newScope args;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
discourse-spoiler-alert = callPackage ./discourse-spoiler-alert {};
|
||||||
|
discourse-solved = callPackage ./discourse-solved {};
|
||||||
|
discourse-canned-replies = callPackage ./discourse-canned-replies {};
|
||||||
|
discourse-math = callPackage ./discourse-math {};
|
||||||
|
discourse-github = callPackage ./discourse-github {};
|
||||||
|
discourse-yearly-review = callPackage ./discourse-yearly-review {};
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
{ mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
|
mkDiscoursePlugin {
|
||||||
|
name = "discourse-canned-replies";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "discourse";
|
||||||
|
repo = "discourse-canned-replies";
|
||||||
|
rev = "7ee748f18a276aca42185e2079c1d4cadeecdaf8";
|
||||||
|
sha256 = "0j10kxfr6v2rdd58smg2i7iac46z74qnnjk8b91jd1svazhis1ph";
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
source 'https://rubygems.org'
|
||||||
|
gem 'sawyer', '0.8.2'
|
||||||
|
gem 'octokit', '4.21.0'
|
|
@ -0,0 +1,37 @@
|
||||||
|
GEM
|
||||||
|
remote: https://rubygems.org/
|
||||||
|
specs:
|
||||||
|
addressable (2.7.0)
|
||||||
|
public_suffix (>= 2.0.2, < 5.0)
|
||||||
|
faraday (1.4.2)
|
||||||
|
faraday-em_http (~> 1.0)
|
||||||
|
faraday-em_synchrony (~> 1.0)
|
||||||
|
faraday-excon (~> 1.1)
|
||||||
|
faraday-net_http (~> 1.0)
|
||||||
|
faraday-net_http_persistent (~> 1.1)
|
||||||
|
multipart-post (>= 1.2, < 3)
|
||||||
|
ruby2_keywords (>= 0.0.4)
|
||||||
|
faraday-em_http (1.0.0)
|
||||||
|
faraday-em_synchrony (1.0.0)
|
||||||
|
faraday-excon (1.1.0)
|
||||||
|
faraday-net_http (1.0.1)
|
||||||
|
faraday-net_http_persistent (1.1.0)
|
||||||
|
multipart-post (2.1.1)
|
||||||
|
octokit (4.21.0)
|
||||||
|
faraday (>= 0.9)
|
||||||
|
sawyer (~> 0.8.0, >= 0.5.3)
|
||||||
|
public_suffix (4.0.6)
|
||||||
|
ruby2_keywords (0.0.4)
|
||||||
|
sawyer (0.8.2)
|
||||||
|
addressable (>= 2.3.5)
|
||||||
|
faraday (> 0.8, < 2.0)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
ruby
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
octokit (= 4.21.0)
|
||||||
|
sawyer (= 0.8.2)
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
2.1.4
|
|
@ -0,0 +1,12 @@
|
||||||
|
{ mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
|
mkDiscoursePlugin {
|
||||||
|
name = "discourse-github";
|
||||||
|
bundlerEnvArgs.gemdir = ./.;
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "discourse";
|
||||||
|
repo = "discourse-github";
|
||||||
|
rev = "151e353a5a1971157c70c2e2b0f56387f212a81f";
|
||||||
|
sha256 = "00kra6zd2k1f2vwcdvxnxnammzh72f5qxcqbb94m0z6maj598wdy";
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,126 @@
|
||||||
|
{
|
||||||
|
addressable = {
|
||||||
|
dependencies = ["public_suffix"];
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "2.7.0";
|
||||||
|
};
|
||||||
|
faraday = {
|
||||||
|
dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-net_http" "faraday-net_http_persistent" "multipart-post" "ruby2_keywords"];
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "07mhk70gv453pg38md346470hknyhipdqppnplq706ll3k3lzb7v";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.4.2";
|
||||||
|
};
|
||||||
|
faraday-em_http = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "12cnqpbak4vhikrh2cdn94assh3yxza8rq2p9w2j34bqg5q4qgbs";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.0.0";
|
||||||
|
};
|
||||||
|
faraday-em_synchrony = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "1vgrbhkp83sngv6k4mii9f2s9v5lmp693hylfxp2ssfc60fas3a6";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.0.0";
|
||||||
|
};
|
||||||
|
faraday-excon = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "0h09wkb0k0bhm6dqsd47ac601qiaah8qdzjh8gvxfd376x1chmdh";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.1.0";
|
||||||
|
};
|
||||||
|
faraday-net_http = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "1fi8sda5hc54v1w3mqfl5yz09nhx35kglyx72w7b8xxvdr0cwi9j";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.0.1";
|
||||||
|
};
|
||||||
|
faraday-net_http_persistent = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "0l2c835wl7gv34xp49fhd1bl4czkpw2g3ahqsak2251iqv5589ka";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.1.0";
|
||||||
|
};
|
||||||
|
multipart-post = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "1zgw9zlwh2a6i1yvhhc4a84ry1hv824d6g2iw2chs3k5aylpmpfj";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "2.1.1";
|
||||||
|
};
|
||||||
|
octokit = {
|
||||||
|
dependencies = ["faraday" "sawyer"];
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "0ak64rb48d8z98nw6q70r6i0i3ivv61iqla40ss5l79491qfnn27";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "4.21.0";
|
||||||
|
};
|
||||||
|
public_suffix = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "1xqcgkl7bwws1qrlnmxgh8g4g9m10vg60bhlw40fplninb3ng6d9";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "4.0.6";
|
||||||
|
};
|
||||||
|
ruby2_keywords = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "15wfcqxyfgka05v2a7kpg64x57gl1y4xzvnc9lh60bqx5sf1iqrs";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "0.0.4";
|
||||||
|
};
|
||||||
|
sawyer = {
|
||||||
|
dependencies = ["addressable" "faraday"];
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "0yrdchs3psh583rjapkv33mljdivggqn99wkydkjdckcjn43j3cz";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "0.8.2";
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
{ mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
|
mkDiscoursePlugin {
|
||||||
|
name = "discourse-math";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "discourse";
|
||||||
|
repo = "discourse-math";
|
||||||
|
rev = "143ddea4558ea9a1b3fd71635bc11e055763c8e7";
|
||||||
|
sha256 = "18pq5ybl3g34i39cpixc3nszvq8gx5yji58zlbbl6428mm011cbx";
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
{ mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
|
mkDiscoursePlugin {
|
||||||
|
name = "discourse-solved";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "discourse";
|
||||||
|
repo = "discourse-solved";
|
||||||
|
rev = "179611766d53974308e6f7def21836997c3c55fc";
|
||||||
|
sha256 = "sha256:1s77h42d3bv2lqw33akxh8ss482vxnz4d7qz6xicwqfwv34qjf03";
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
{ mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
|
mkDiscoursePlugin {
|
||||||
|
name = "discourse-spoiler-alert";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "discourse";
|
||||||
|
repo = "discourse-spoiler-alert";
|
||||||
|
rev = "e200cfa571d252cab63f3d30d619b370986e4cee";
|
||||||
|
sha256 = "0ya69ix5g77wz4c9x9gmng6l25ghb5xxlx3icr6jam16q14dzc33";
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
{ mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
|
mkDiscoursePlugin {
|
||||||
|
name = "discourse-yearly-review";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "discourse";
|
||||||
|
repo = "discourse-yearly-review";
|
||||||
|
rev = "d1471bdb68945f55342e72e2c525b4f628419a50";
|
||||||
|
sha256 = "sha256:0xpl0l1vpih8xzb6y7k1lm72nj4ya99378viyhqfvpwzsn5pha2a";
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
diff --git a/lib/discourse.rb b/lib/discourse.rb
|
||||||
|
index ea2a3cbafd..66454d9157 100644
|
||||||
|
--- a/lib/discourse.rb
|
||||||
|
+++ b/lib/discourse.rb
|
||||||
|
@@ -62,7 +62,7 @@ module Discourse
|
||||||
|
fd.fsync()
|
||||||
|
end
|
||||||
|
|
||||||
|
- File.rename(temp_destination, destination)
|
||||||
|
+ FileUtils.mv(temp_destination, destination)
|
||||||
|
|
||||||
|
nil
|
||||||
|
end
|
||||||
|
@@ -76,7 +76,7 @@ module Discourse
|
||||||
|
FileUtils.mkdir_p(File.join(Rails.root, 'tmp'))
|
||||||
|
temp_destination = File.join(Rails.root, 'tmp', SecureRandom.hex)
|
||||||
|
execute_command('ln', '-s', source, temp_destination)
|
||||||
|
- File.rename(temp_destination, destination)
|
||||||
|
+ FileUtils.mv(temp_destination, destination)
|
||||||
|
|
||||||
|
nil
|
||||||
|
end
|
|
@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
|
||||||
];
|
];
|
||||||
mesonFlags = [
|
mesonFlags = [
|
||||||
"-Dxwayland_eglstream=true"
|
"-Dxwayland_eglstream=true"
|
||||||
"-Ddefault_font-path=${defaultFontPath}"
|
"-Ddefault_font_path=${defaultFontPath}"
|
||||||
"-Dxkb_bin_dir=${xkbcomp}/bin"
|
"-Dxkb_bin_dir=${xkbcomp}/bin"
|
||||||
"-Dxkb_dir=${xkeyboard_config}/etc/X11/xkb"
|
"-Dxkb_dir=${xkeyboard_config}/etc/X11/xkb"
|
||||||
"-Dxkb_output_dir=${placeholder "out"}/share/X11/xkb/compiled"
|
"-Dxkb_output_dir=${placeholder "out"}/share/X11/xkb/compiled"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ stdenv, lib, fetchurl, readline }:
|
{ stdenv, lib, fetchurl, withReadline ? true, readline }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "oil";
|
pname = "oil";
|
||||||
|
@ -17,8 +17,8 @@ stdenv.mkDerivation rec {
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildInputs = [ readline ];
|
buildInputs = lib.optional withReadline readline;
|
||||||
configureFlags = [ "--with-readline" ];
|
configureFlags = lib.optional withReadline "--with-readline";
|
||||||
|
|
||||||
# Stripping breaks the bundles by removing the zip file from the end.
|
# Stripping breaks the bundles by removing the zip file from the end.
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
|
@ -21,18 +21,18 @@ let
|
||||||
sources = name: system: {
|
sources = name: system: {
|
||||||
x86_64-darwin = {
|
x86_64-darwin = {
|
||||||
url = "${baseUrl}/${name}-darwin-x86_64.tar.gz";
|
url = "${baseUrl}/${name}-darwin-x86_64.tar.gz";
|
||||||
sha256 = "1p8iv2axb5i8xnzm58dmmahxfwplj4r115mz63cl5q0iyy12npbh";
|
sha256 = "0viiwimnk26jfi4ypkvclqqxw8anlmch10zscjw69d8x1pyqczcd";
|
||||||
};
|
};
|
||||||
|
|
||||||
x86_64-linux = {
|
x86_64-linux = {
|
||||||
url = "${baseUrl}/${name}-linux-x86_64.tar.gz";
|
url = "${baseUrl}/${name}-linux-x86_64.tar.gz";
|
||||||
sha256 = "0zcf9zabdg2r7d9vafxn4wf0j09im5lhycylf91g734zzh6vc267";
|
sha256 = "11113l8pyhq6vbsh79m5anh6ljss94zhnp33ghds9rn1gxa83hnb";
|
||||||
};
|
};
|
||||||
}.${system};
|
}.${system};
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "google-cloud-sdk";
|
pname = "google-cloud-sdk";
|
||||||
version = "345.0.0";
|
version = "347.0.0";
|
||||||
|
|
||||||
src = fetchurl (sources "${pname}-${version}" stdenv.hostPlatform.system);
|
src = fetchurl (sources "${pname}-${version}" stdenv.hostPlatform.system);
|
||||||
|
|
||||||
|
|
43
pkgs/tools/misc/complete-alias/default.nix
Normal file
43
pkgs/tools/misc/complete-alias/default.nix
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
{ lib
|
||||||
|
, fetchFromGitHub
|
||||||
|
, stdenvNoCC
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenvNoCC.mkDerivation rec {
|
||||||
|
pname = "complete-alias";
|
||||||
|
version = "1.10.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "cykerway";
|
||||||
|
repo = pname;
|
||||||
|
rev = version;
|
||||||
|
sha256 = "1s0prdnmb2qnzc8d7ddldzqa53yc10qq0lbgx2l9dzmz8pdwylyc";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
|
||||||
|
# required for the patchShebangs setup hook
|
||||||
|
chmod +x complete_alias
|
||||||
|
|
||||||
|
patchShebangs complete_alias
|
||||||
|
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cp -r complete_alias "$out"/bin
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Automagical shell alias completion";
|
||||||
|
homepage = "https://github.com/cykerway/complete-alias";
|
||||||
|
license = licenses.lgpl3Only;
|
||||||
|
maintainers = with maintainers; [ tuxinaut ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "cpufetch";
|
pname = "cpufetch";
|
||||||
version = "0.94";
|
version = "0.98";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Dr-Noob";
|
owner = "Dr-Noob";
|
||||||
repo = "cpufetch";
|
repo = "cpufetch";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1gncgkhqd8bnz254qa30yyl10qm28dwx6aif0dwrj38z5ql40ck9";
|
sha256 = "060hmkwmb5ybcrj9jfx9681zk92489kq71nl6nacn8nfqrcn3qdb";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
||||||
mkdir $out
|
mkdir $out
|
||||||
install -Dm755 cpufetch $out/bin/cpufetch
|
install -Dm755 cpufetch $out/bin/cpufetch
|
||||||
install -Dm644 LICENSE $out/share/licenses/cpufetch/LICENSE
|
install -Dm644 LICENSE $out/share/licenses/cpufetch/LICENSE
|
||||||
installManPage cpufetch.8
|
installManPage cpufetch.1
|
||||||
|
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, autoreconfHook, libnet, libpcap }:
|
{ lib, stdenv, fetchFromGitHub, autoreconfHook, libnet, libpcap }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "2.21";
|
version = "2.22";
|
||||||
pname = "arping";
|
pname = "arping";
|
||||||
|
|
||||||
buildInputs = [ libnet libpcap ];
|
buildInputs = [ libnet libpcap ];
|
||||||
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||||
owner = "ThomasHabets";
|
owner = "ThomasHabets";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "${pname}-${version}";
|
rev = "${pname}-${version}";
|
||||||
sha256 = "1i7rjn863bnq51ahbvypm1bkzhyshlm5b32yzdd9iaqyz7sa7pa7";
|
sha256 = "sha256-yFSLhhyz6i7xyJR8Ax8FnHFGNe/HE40YirkkeefBqC4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoreconfHook ];
|
nativeBuildInputs = [ autoreconfHook ];
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "dnsproxy";
|
pname = "dnsproxy";
|
||||||
version = "0.38.0";
|
version = "0.38.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "AdguardTeam";
|
owner = "AdguardTeam";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-dltCZ6g5Ta/M2N95TRkdLRr3T0YeKdkY88zE306AtDg=";
|
sha256 = "sha256-H0K38SX/mKsVjdQEa6vzx5TNRhqqomYk28+5Wl5H0sA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = null;
|
vendorSha256 = null;
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
{ lib
|
{ lib
|
||||||
, python2
|
, python3
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
}:
|
}:
|
||||||
python2.pkgs.buildPythonPackage rec {
|
|
||||||
|
python3.pkgs.buildPythonPackage rec {
|
||||||
pname = "flare-floss";
|
pname = "flare-floss";
|
||||||
version = "1.7.0";
|
version = "1.7.0";
|
||||||
|
|
||||||
|
@ -13,18 +14,17 @@ python2.pkgs.buildPythonPackage rec {
|
||||||
sha256 = "GMOA1+qM2A/Qw33kOTIINEvjsfqjWQWBXHNemh3IK8w=";
|
sha256 = "GMOA1+qM2A/Qw33kOTIINEvjsfqjWQWBXHNemh3IK8w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with python2.pkgs; [
|
propagatedBuildInputs = with python3.pkgs; [
|
||||||
pyyaml
|
pyyaml
|
||||||
simplejson
|
simplejson
|
||||||
tabulate
|
tabulate
|
||||||
vivisect
|
vivisect
|
||||||
plugnplay
|
plugnplay
|
||||||
viv-utils
|
viv-utils
|
||||||
enum34
|
|
||||||
];
|
];
|
||||||
|
|
||||||
checkInputs = [
|
checkInputs = with python3.pkgs; [
|
||||||
python2.pkgs.pytestCheckHook
|
pytestCheckHook
|
||||||
];
|
];
|
||||||
|
|
||||||
disabledTests = [
|
disabledTests = [
|
||||||
|
|
|
@ -30,11 +30,11 @@ let
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "tor";
|
pname = "tor";
|
||||||
version = "0.4.5.7";
|
version = "0.4.6.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://dist.torproject.org/${pname}-${version}.tar.gz";
|
url = "https://dist.torproject.org/${pname}-${version}.tar.gz";
|
||||||
sha256 = "0x7hhl0svfc4yh9xvq7kkzgmwjcw1ak9i0794wjg4biy2fmclzs4";
|
sha256 = "04ifi18cj4cw5lhfzgfrrc42j7qqdmbvxq24xlhj0dsmljdih8rl";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "geoip" ];
|
outputs = [ "out" "geoip" ];
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, cmake, nasm }:
|
{ lib, stdenv, fetchFromGitLab, cmake, nasm }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "svt-av1";
|
pname = "svt-av1";
|
||||||
version = "0.8.6";
|
version = "0.8.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitLab {
|
||||||
owner = "AOMediaCodec";
|
owner = "AOMediaCodec";
|
||||||
repo = "SVT-AV1";
|
repo = "SVT-AV1";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1wzamg89azi1f93wxvdy7silsgklckc754ca066k33drvyacicyw";
|
sha256 = "1xlxb6kn6hqz9dxz0nd905m4i2mwjwq1330rbabwzmg4b66cdslg";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake nasm ];
|
nativeBuildInputs = [ cmake nasm ];
|
||||||
|
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
||||||
activities.
|
activities.
|
||||||
'';
|
'';
|
||||||
inherit (src.meta) homepage;
|
inherit (src.meta) homepage;
|
||||||
changelog = "https://github.com/AOMediaCodec/SVT-AV1/blob/v${version}/CHANGELOG.md";
|
changelog = "https://gitlab.com/AOMediaCodec/SVT-AV1/-/blob/v${version}/CHANGELOG.md";
|
||||||
license = with licenses; [
|
license = with licenses; [
|
||||||
bsd2
|
bsd2
|
||||||
{
|
{
|
||||||
|
|
|
@ -13721,6 +13721,8 @@ in
|
||||||
|
|
||||||
kustomize = callPackage ../development/tools/kustomize { };
|
kustomize = callPackage ../development/tools/kustomize { };
|
||||||
|
|
||||||
|
kustomize_3 = callPackage ../development/tools/kustomize/3.nix { };
|
||||||
|
|
||||||
kustomize-sops = callPackage ../development/tools/kustomize/kustomize-sops.nix { };
|
kustomize-sops = callPackage ../development/tools/kustomize/kustomize-sops.nix { };
|
||||||
|
|
||||||
ktlint = callPackage ../development/tools/ktlint { };
|
ktlint = callPackage ../development/tools/ktlint { };
|
||||||
|
@ -23266,6 +23268,8 @@ in
|
||||||
|
|
||||||
communi = libsForQt5.callPackage ../applications/networking/irc/communi { };
|
communi = libsForQt5.callPackage ../applications/networking/irc/communi { };
|
||||||
|
|
||||||
|
complete-alias = callPackage ../tools/misc/complete-alias { };
|
||||||
|
|
||||||
confclerk = callPackage ../applications/misc/confclerk { };
|
confclerk = callPackage ../applications/misc/confclerk { };
|
||||||
|
|
||||||
copyq = libsForQt514.callPackage ../applications/misc/copyq { };
|
copyq = libsForQt514.callPackage ../applications/misc/copyq { };
|
||||||
|
|
|
@ -325,6 +325,8 @@ in {
|
||||||
|
|
||||||
aiomultiprocess = callPackage ../development/python-modules/aiomultiprocess { };
|
aiomultiprocess = callPackage ../development/python-modules/aiomultiprocess { };
|
||||||
|
|
||||||
|
aiomusiccast = callPackage ../development/python-modules/aiomusiccast { };
|
||||||
|
|
||||||
aiomysql = callPackage ../development/python-modules/aiomysql { };
|
aiomysql = callPackage ../development/python-modules/aiomysql { };
|
||||||
|
|
||||||
aionotify = callPackage ../development/python-modules/aionotify { };
|
aionotify = callPackage ../development/python-modules/aionotify { };
|
||||||
|
@ -5325,6 +5327,8 @@ in {
|
||||||
|
|
||||||
pyflick = callPackage ../development/python-modules/pyflick { };
|
pyflick = callPackage ../development/python-modules/pyflick { };
|
||||||
|
|
||||||
|
pyfreedompro = callPackage ../development/python-modules/pyfreedompro { };
|
||||||
|
|
||||||
pygti = callPackage ../development/python-modules/pygti { };
|
pygti = callPackage ../development/python-modules/pygti { };
|
||||||
|
|
||||||
pyheos = callPackage ../development/python-modules/pyheos { };
|
pyheos = callPackage ../development/python-modules/pyheos { };
|
||||||
|
|
Loading…
Reference in a new issue