mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-10-14 08:31:40 +03:00
Merge master into haskell-updates
This commit is contained in:
commit
263ca92849
@ -434,6 +434,7 @@ ${expr "" v}
|
|||||||
Configuration:
|
Configuration:
|
||||||
* multiline - by default is true which results in indented block-like view.
|
* multiline - by default is true which results in indented block-like view.
|
||||||
* indent - initial indent.
|
* indent - initial indent.
|
||||||
|
* asBindings - by default generate single value, but with this use attrset to set global vars.
|
||||||
|
|
||||||
Attention:
|
Attention:
|
||||||
Regardless of multiline parameter there is no trailing newline.
|
Regardless of multiline parameter there is no trailing newline.
|
||||||
@ -464,18 +465,35 @@ ${expr "" v}
|
|||||||
/* If this option is true, the output is indented with newlines for attribute sets and lists */
|
/* If this option is true, the output is indented with newlines for attribute sets and lists */
|
||||||
multiline ? true,
|
multiline ? true,
|
||||||
/* Initial indentation level */
|
/* Initial indentation level */
|
||||||
indent ? ""
|
indent ? "",
|
||||||
|
/* Interpret as variable bindings */
|
||||||
|
asBindings ? false,
|
||||||
}@args: v:
|
}@args: v:
|
||||||
with builtins;
|
with builtins;
|
||||||
let
|
let
|
||||||
innerIndent = "${indent} ";
|
innerIndent = "${indent} ";
|
||||||
introSpace = if multiline then "\n${innerIndent}" else " ";
|
introSpace = if multiline then "\n${innerIndent}" else " ";
|
||||||
outroSpace = if multiline then "\n${indent}" else " ";
|
outroSpace = if multiline then "\n${indent}" else " ";
|
||||||
innerArgs = args // { indent = innerIndent; };
|
innerArgs = args // {
|
||||||
|
indent = if asBindings then indent else innerIndent;
|
||||||
|
asBindings = false;
|
||||||
|
};
|
||||||
concatItems = concatStringsSep ",${introSpace}";
|
concatItems = concatStringsSep ",${introSpace}";
|
||||||
isLuaInline = { _type ? null, ... }: _type == "lua-inline";
|
isLuaInline = { _type ? null, ... }: _type == "lua-inline";
|
||||||
|
|
||||||
|
generatedBindings =
|
||||||
|
assert lib.assertMsg (badVarNames == []) "Bad Lua var names: ${toPretty {} badVarNames}";
|
||||||
|
libStr.concatStrings (
|
||||||
|
lib.attrsets.mapAttrsToList (key: value: "${indent}${key} = ${toLua innerArgs value}\n") v
|
||||||
|
);
|
||||||
|
|
||||||
|
# https://en.wikibooks.org/wiki/Lua_Programming/variable#Variable_names
|
||||||
|
matchVarName = match "[[:alpha:]_][[:alnum:]_]*(\\.[[:alpha:]_][[:alnum:]_]*)*";
|
||||||
|
badVarNames = filter (name: matchVarName name == null) (attrNames v);
|
||||||
in
|
in
|
||||||
if v == null then
|
if asBindings then
|
||||||
|
generatedBindings
|
||||||
|
else if v == null then
|
||||||
"nil"
|
"nil"
|
||||||
else if isInt v || isFloat v || isString v || isBool v then
|
else if isInt v || isFloat v || isString v || isBool v then
|
||||||
builtins.toJSON v
|
builtins.toJSON v
|
||||||
|
@ -8,9 +8,10 @@ with lib;
|
|||||||
option = x:
|
option = x:
|
||||||
x // { optional = true; };
|
x // { optional = true; };
|
||||||
|
|
||||||
yes = { tristate = "y"; optional = false; };
|
yes = { tristate = "y"; optional = false; };
|
||||||
no = { tristate = "n"; optional = false; };
|
no = { tristate = "n"; optional = false; };
|
||||||
module = { tristate = "m"; optional = false; };
|
module = { tristate = "m"; optional = false; };
|
||||||
|
unset = { tristate = null; optional = false; };
|
||||||
freeform = x: { freeform = x; optional = false; };
|
freeform = x: { freeform = x; optional = false; };
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -4,6 +4,11 @@
|
|||||||
with import ../default.nix;
|
with import ../default.nix;
|
||||||
|
|
||||||
let
|
let
|
||||||
|
testingThrow = expr: {
|
||||||
|
expr = (builtins.tryEval (builtins.seq expr "didn't throw"));
|
||||||
|
expected = { success = false; value = false; };
|
||||||
|
};
|
||||||
|
testingDeepThrow = expr: testingThrow (builtins.deepSeq expr expr);
|
||||||
|
|
||||||
testSanitizeDerivationName = { name, expected }:
|
testSanitizeDerivationName = { name, expected }:
|
||||||
let
|
let
|
||||||
@ -962,6 +967,41 @@ runTests {
|
|||||||
expected = ''{ 41, 43 }'';
|
expected = ''{ 41, 43 }'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
testToLuaEmptyBindings = {
|
||||||
|
expr = generators.toLua { asBindings = true; } {};
|
||||||
|
expected = "";
|
||||||
|
};
|
||||||
|
|
||||||
|
testToLuaBindings = {
|
||||||
|
expr = generators.toLua { asBindings = true; } { x1 = 41; _y = { a = 43; }; };
|
||||||
|
expected = ''
|
||||||
|
_y = {
|
||||||
|
["a"] = 43
|
||||||
|
}
|
||||||
|
x1 = 41
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
testToLuaPartialTableBindings = {
|
||||||
|
expr = generators.toLua { asBindings = true; } { "x.y" = 42; };
|
||||||
|
expected = ''
|
||||||
|
x.y = 42
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
testToLuaIndentedBindings = {
|
||||||
|
expr = generators.toLua { asBindings = true; indent = " "; } { x = { y = 42; }; };
|
||||||
|
expected = " x = {\n [\"y\"] = 42\n }\n";
|
||||||
|
};
|
||||||
|
|
||||||
|
testToLuaBindingsWithSpace = testingThrow (
|
||||||
|
generators.toLua { asBindings = true; } { "with space" = 42; }
|
||||||
|
);
|
||||||
|
|
||||||
|
testToLuaBindingsWithLeadingDigit = testingThrow (
|
||||||
|
generators.toLua { asBindings = true; } { "11eleven" = 42; }
|
||||||
|
);
|
||||||
|
|
||||||
testToLuaBasicExample = {
|
testToLuaBasicExample = {
|
||||||
expr = generators.toLua {} {
|
expr = generators.toLua {} {
|
||||||
cmd = [ "typescript-language-server" "--stdio" ];
|
cmd = [ "typescript-language-server" "--stdio" ];
|
||||||
|
@ -46,7 +46,10 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||||||
|
|
||||||
- [Cloudlog](https://www.magicbug.co.uk/cloudlog/), a web-based Amateur Radio logging application. Available as [services.cloudlog](#opt-services.cloudlog.enable).
|
- [Cloudlog](https://www.magicbug.co.uk/cloudlog/), a web-based Amateur Radio logging application. Available as [services.cloudlog](#opt-services.cloudlog.enable).
|
||||||
|
|
||||||
|
- [Deepin Desktop Environment](https://github.com/linuxdeepin/dde), an elegant, easy to use and reliable desktop environment. Available as [services.xserver.desktopManager.deepin](options.html#opt-services.xserver.desktopManager.deepin).
|
||||||
|
|
||||||
- [fzf](https://github.com/junegunn/fzf), a command line fuzzyfinder. Available as [programs.fzf](#opt-programs.fzf.fuzzyCompletion).
|
- [fzf](https://github.com/junegunn/fzf), a command line fuzzyfinder. Available as [programs.fzf](#opt-programs.fzf.fuzzyCompletion).
|
||||||
|
|
||||||
- [readarr](https://github.com/Readarr/Readarr), Book Manager and Automation (Sonarr for Ebooks). Available as [services.readarr](options.html#opt-services.readarr.enable).
|
- [readarr](https://github.com/Readarr/Readarr), Book Manager and Automation (Sonarr for Ebooks). Available as [services.readarr](options.html#opt-services.readarr.enable).
|
||||||
|
|
||||||
- [gemstash](https://github.com/rubygems/gemstash), a RubyGems.org cache and private gem server. Available as [services.gemstash](#opt-services.gemstash.enable).
|
- [gemstash](https://github.com/rubygems/gemstash), a RubyGems.org cache and private gem server. Available as [services.gemstash](#opt-services.gemstash.enable).
|
||||||
@ -137,6 +140,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||||||
|
|
||||||
- `carnix` and `cratesIO` has been removed due to being unmaintained, use alternatives such as [naersk](https://github.com/nix-community/naersk) and [crate2nix](https://github.com/kolloch/crate2nix) instead.
|
- `carnix` and `cratesIO` has been removed due to being unmaintained, use alternatives such as [naersk](https://github.com/nix-community/naersk) and [crate2nix](https://github.com/kolloch/crate2nix) instead.
|
||||||
|
|
||||||
|
- `services.asusd` configuration now uses strings instead of structured configuration, as upstream switched to the [RON](https://github.com/ron-rs/ron) configuration format. Support for structured configuration may return when [RON](https://github.com/ron-rs/ron) generation is implemented in nixpkgs.
|
||||||
|
|
||||||
- `checkInputs` have been renamed to `nativeCheckInputs`, because they behave the same as `nativeBuildInputs` when `doCheck` is set. `checkInputs` now denote a new type of dependencies, added to `buildInputs` when `doCheck` is set. As a rule of thumb, `nativeCheckInputs` are tools on `$PATH` used during the tests, and `checkInputs` are libraries which are linked to executables built as part of the tests. Similarly, `installCheckInputs` are renamed to `nativeInstallCheckInputs`, corresponding to `nativeBuildInputs`, and `installCheckInputs` are a new type of dependencies added to `buildInputs` when `doInstallCheck` is set. (Note that this change will not cause breakage to derivations with `strictDeps` unset, which are most packages except python, rust, ocaml and go packages).
|
- `checkInputs` have been renamed to `nativeCheckInputs`, because they behave the same as `nativeBuildInputs` when `doCheck` is set. `checkInputs` now denote a new type of dependencies, added to `buildInputs` when `doCheck` is set. As a rule of thumb, `nativeCheckInputs` are tools on `$PATH` used during the tests, and `checkInputs` are libraries which are linked to executables built as part of the tests. Similarly, `installCheckInputs` are renamed to `nativeInstallCheckInputs`, corresponding to `nativeBuildInputs`, and `installCheckInputs` are a new type of dependencies added to `buildInputs` when `doInstallCheck` is set. (Note that this change will not cause breakage to derivations with `strictDeps` unset, which are most packages except python, rust, ocaml and go packages).
|
||||||
|
|
||||||
- `buildDunePackage` now defaults to `strictDeps = true` which means that any library should go into `buildInputs` or `checkInputs`. Any executable that is run on the building machine should go into `nativeBuildInputs` or `nativeCheckInputs` respectively. Example of executables are `ocaml`, `findlib` and `menhir`. PPXs are libraries which are built by dune and should therefore not go into `nativeBuildInputs`.
|
- `buildDunePackage` now defaults to `strictDeps = true` which means that any library should go into `buildInputs` or `checkInputs`. Any executable that is run on the building machine should go into `nativeBuildInputs` or `nativeCheckInputs` respectively. Example of executables are `ocaml`, `findlib` and `menhir`. PPXs are libraries which are built by dune and should therefore not go into `nativeBuildInputs`.
|
||||||
@ -212,6 +217,11 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||||||
|
|
||||||
- The [services.wordpress.sites.<name>.plugins](#opt-services.wordpress.sites._name_.plugins) and [services.wordpress.sites.<name>.themes](#opt-services.wordpress.sites._name_.themes) options have been converted from sets to attribute sets to allow for consumers to specify explicit install paths via attribute name.
|
- The [services.wordpress.sites.<name>.plugins](#opt-services.wordpress.sites._name_.plugins) and [services.wordpress.sites.<name>.themes](#opt-services.wordpress.sites._name_.themes) options have been converted from sets to attribute sets to allow for consumers to specify explicit install paths via attribute name.
|
||||||
|
|
||||||
|
- [`services.nextcloud.database.createLocally`](#opt-services.nextcloud.database.createLocally) now uses socket authentication and is no longer compatible with password authentication.
|
||||||
|
- If you want the module to manage the database for you, unset [`services.nextcloud.config.dbpassFile`](#opt-services.nextcloud.config.dbpassFile) (and [`services.nextcloud.config.dbhost`](#opt-services.nextcloud.config.dbhost), if it's set).
|
||||||
|
- If your database is external, simply set [`services.nextcloud.database.createLocally`](#opt-services.nextcloud.database.createLocally) to `false`.
|
||||||
|
- If you want to use password authentication **and** create the database locally, you will have to use [`services.mysql`](#opt-services.mysql.enable) to set it up.
|
||||||
|
|
||||||
- `protonmail-bridge` package has been updated to major version 3.
|
- `protonmail-bridge` package has been updated to major version 3.
|
||||||
|
|
||||||
- Nebula now runs as a system user and group created for each nebula network, using the `CAP_NET_ADMIN` ambient capability on launch rather than starting as root. Ensure that any files each Nebula instance needs to access are owned by the correct user and group, by default `nebula-${networkName}`.
|
- Nebula now runs as a system user and group created for each nebula network, using the `CAP_NET_ADMIN` ambient capability on launch rather than starting as root. Ensure that any files each Nebula instance needs to access are owned by the correct user and group, by default `nebula-${networkName}`.
|
||||||
@ -239,6 +249,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||||||
[upstream's release notes](https://github.com/iputils/iputils/releases/tag/20221126)
|
[upstream's release notes](https://github.com/iputils/iputils/releases/tag/20221126)
|
||||||
for more details and available replacements.
|
for more details and available replacements.
|
||||||
|
|
||||||
|
- The ppp plugin `rp-pppoe.so` has been renamed to `pppoe.so` in ppp 2.4.9. Starting from ppp 2.5.0, there is no longer a alias for backwards compatiblity. Configurations that use this plugin must be updated accordingly from `plugin rp-pppoe.so` to `plugin pppoe.so`. See [upstream change](https://github.com/ppp-project/ppp/commit/610a7bd76eb1f99f22317541b35001b1e24877ed).
|
||||||
|
|
||||||
- [services.xserver.videoDrivers](options.html#opt-services.xserver.videoDrivers) now defaults to the `modesetting` driver over device-specific ones. The `radeon`, `amdgpu` and `nouveau` drivers are still available, but effectively unmaintained and not recommended for use.
|
- [services.xserver.videoDrivers](options.html#opt-services.xserver.videoDrivers) now defaults to the `modesetting` driver over device-specific ones. The `radeon`, `amdgpu` and `nouveau` drivers are still available, but effectively unmaintained and not recommended for use.
|
||||||
|
|
||||||
- To enable the HTTP3 (QUIC) protocol for a nginx virtual host, set the `quic` attribute on it to true, e.g. `services.nginx.virtualHosts.<name>.quic = true;`.
|
- To enable the HTTP3 (QUIC) protocol for a nginx virtual host, set the `quic` attribute on it to true, e.g. `services.nginx.virtualHosts.<name>.quic = true;`.
|
||||||
|
@ -413,6 +413,9 @@
|
|||||||
./services/desktops/bamf.nix
|
./services/desktops/bamf.nix
|
||||||
./services/desktops/blueman.nix
|
./services/desktops/blueman.nix
|
||||||
./services/desktops/cpupower-gui.nix
|
./services/desktops/cpupower-gui.nix
|
||||||
|
./services/desktops/deepin/dde-api.nix
|
||||||
|
./services/desktops/deepin/app-services.nix
|
||||||
|
./services/desktops/deepin/dde-daemon.nix
|
||||||
./services/desktops/dleyna-renderer.nix
|
./services/desktops/dleyna-renderer.nix
|
||||||
./services/desktops/dleyna-server.nix
|
./services/desktops/dleyna-server.nix
|
||||||
./services/desktops/espanso.nix
|
./services/desktops/espanso.nix
|
||||||
|
@ -11,6 +11,8 @@ in {
|
|||||||
|
|
||||||
enable = mkEnableOption (lib.mdDoc "Navidrome music server");
|
enable = mkEnableOption (lib.mdDoc "Navidrome music server");
|
||||||
|
|
||||||
|
package = mkPackageOptionMD pkgs "navidrome" { };
|
||||||
|
|
||||||
settings = mkOption rec {
|
settings = mkOption rec {
|
||||||
type = settingsFormat.type;
|
type = settingsFormat.type;
|
||||||
apply = recursiveUpdate default;
|
apply = recursiveUpdate default;
|
||||||
@ -36,7 +38,7 @@ in {
|
|||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = ''
|
ExecStart = ''
|
||||||
${pkgs.navidrome}/bin/navidrome --configfile ${settingsFormat.generate "navidrome.json" cfg.settings}
|
${cfg.package}/bin/navidrome --configfile ${settingsFormat.generate "navidrome.json" cfg.settings}
|
||||||
'';
|
'';
|
||||||
DynamicUser = true;
|
DynamicUser = true;
|
||||||
StateDirectory = "navidrome";
|
StateDirectory = "navidrome";
|
||||||
|
36
nixos/modules/services/desktops/deepin/app-services.nix
Normal file
36
nixos/modules/services/desktops/deepin/app-services.nix
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
maintainers = teams.deepin.members;
|
||||||
|
};
|
||||||
|
|
||||||
|
###### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
services.deepin.app-services = {
|
||||||
|
|
||||||
|
enable = mkEnableOption (lib.mdDoc "Service collection of DDE applications, including dconfig-center");
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
###### implementation
|
||||||
|
|
||||||
|
config = mkIf config.services.deepin.app-services.enable {
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.deepin.dde-app-services ];
|
||||||
|
|
||||||
|
services.dbus.packages = [ pkgs.deepin.dde-app-services ];
|
||||||
|
|
||||||
|
environment.pathsToLink = [ "/share/dsg" ];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
50
nixos/modules/services/desktops/deepin/dde-api.nix
Normal file
50
nixos/modules/services/desktops/deepin/dde-api.nix
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
maintainers = teams.deepin.members;
|
||||||
|
};
|
||||||
|
|
||||||
|
###### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
services.deepin.dde-api = {
|
||||||
|
|
||||||
|
enable = mkEnableOption (lib.mdDoc ''
|
||||||
|
Provides some dbus interfaces that is used for screen zone detecting,
|
||||||
|
thumbnail generating, and sound playing in Deepin Desktop Enviroment.
|
||||||
|
'');
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
###### implementation
|
||||||
|
|
||||||
|
config = mkIf config.services.deepin.dde-api.enable {
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.deepin.dde-api ];
|
||||||
|
|
||||||
|
services.dbus.packages = [ pkgs.deepin.dde-api ];
|
||||||
|
|
||||||
|
systemd.packages = [ pkgs.deepin.dde-api ];
|
||||||
|
|
||||||
|
environment.pathsToLink = [ "/lib/deepin-api" ];
|
||||||
|
|
||||||
|
users.groups.deepin-sound-player = { };
|
||||||
|
users.users.deepin-sound-player = {
|
||||||
|
description = "Deepin sound player";
|
||||||
|
home = "/var/lib/deepin-sound-player";
|
||||||
|
createHome = true;
|
||||||
|
group = "deepin-sound-player";
|
||||||
|
isSystemUser = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
40
nixos/modules/services/desktops/deepin/dde-daemon.nix
Normal file
40
nixos/modules/services/desktops/deepin/dde-daemon.nix
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
maintainers = teams.deepin.members;
|
||||||
|
};
|
||||||
|
|
||||||
|
###### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
services.deepin.dde-daemon = {
|
||||||
|
|
||||||
|
enable = mkEnableOption (lib.mdDoc "Daemon for handling the deepin session settings");
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
###### implementation
|
||||||
|
|
||||||
|
config = mkIf config.services.deepin.dde-daemon.enable {
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.deepin.dde-daemon ];
|
||||||
|
|
||||||
|
services.dbus.packages = [ pkgs.deepin.dde-daemon ];
|
||||||
|
|
||||||
|
services.udev.packages = [ pkgs.deepin.dde-daemon ];
|
||||||
|
|
||||||
|
systemd.packages = [ pkgs.deepin.dde-daemon ];
|
||||||
|
|
||||||
|
environment.pathsToLink = [ "/lib/deepin-daemon" ];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
@ -2,8 +2,6 @@
|
|||||||
|
|
||||||
let
|
let
|
||||||
cfg = config.services.asusd;
|
cfg = config.services.asusd;
|
||||||
json = pkgs.formats.json { };
|
|
||||||
toml = pkgs.formats.toml { };
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options = {
|
options = {
|
||||||
@ -19,55 +17,55 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
animeConfig = lib.mkOption {
|
animeConfig = lib.mkOption {
|
||||||
type = json.type;
|
type = lib.types.nullOr lib.types.str;
|
||||||
default = { };
|
default = null;
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
The content of /etc/asusd/anime.conf.
|
The content of /etc/asusd/anime.ron.
|
||||||
See https://asus-linux.org/asusctl/#anime-control.
|
See https://asus-linux.org/asusctl/#anime-control.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
asusdConfig = lib.mkOption {
|
asusdConfig = lib.mkOption {
|
||||||
type = json.type;
|
type = lib.types.nullOr lib.types.str;
|
||||||
default = { };
|
default = null;
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
The content of /etc/asusd/asusd.conf.
|
The content of /etc/asusd/asusd.ron.
|
||||||
See https://asus-linux.org/asusctl/.
|
See https://asus-linux.org/asusctl/.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
auraConfig = lib.mkOption {
|
auraConfig = lib.mkOption {
|
||||||
type = json.type;
|
type = lib.types.nullOr lib.types.str;
|
||||||
default = { };
|
default = null;
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
The content of /etc/asusd/aura.conf.
|
The content of /etc/asusd/aura.ron.
|
||||||
See https://asus-linux.org/asusctl/#led-keyboard-control.
|
See https://asus-linux.org/asusctl/#led-keyboard-control.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
profileConfig = lib.mkOption {
|
profileConfig = lib.mkOption {
|
||||||
type = lib.types.nullOr lib.types.str;
|
type = lib.types.nullOr lib.types.str;
|
||||||
default = "";
|
default = null;
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
The content of /etc/asusd/profile.conf.
|
The content of /etc/asusd/profile.ron.
|
||||||
See https://asus-linux.org/asusctl/#profiles.
|
See https://asus-linux.org/asusctl/#profiles.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
ledModesConfig = lib.mkOption {
|
fanCurvesConfig = lib.mkOption {
|
||||||
type = lib.types.nullOr toml.type;
|
type = lib.types.nullOr lib.types.str;
|
||||||
default = null;
|
default = null;
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
The content of /etc/asusd/asusd-ledmodes.toml. Leave `null` to use default settings.
|
The content of /etc/asusd/fan_curves.ron.
|
||||||
See https://asus-linux.org/asusctl/#led-keyboard-control.
|
See https://asus-linux.org/asusctl/#fan-curves.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
userLedModesConfig = lib.mkOption {
|
userLedModesConfig = lib.mkOption {
|
||||||
type = lib.types.nullOr toml.type;
|
type = lib.types.nullOr lib.types.str;
|
||||||
default = null;
|
default = null;
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
The content of /etc/asusd/asusd-user-ledmodes.toml.
|
The content of /etc/asusd/asusd-user-ledmodes.ron.
|
||||||
See https://asus-linux.org/asusctl/#led-keyboard-control.
|
See https://asus-linux.org/asusctl/#led-keyboard-control.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
@ -79,26 +77,18 @@ in
|
|||||||
|
|
||||||
environment.etc =
|
environment.etc =
|
||||||
let
|
let
|
||||||
maybeConfig = name: cfg: lib.mkIf (cfg != { }) {
|
maybeConfig = name: cfg: lib.mkIf (cfg != null) {
|
||||||
source = json.generate name cfg;
|
source = pkgs.writeText name cfg;
|
||||||
mode = "0644";
|
mode = "0644";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
"asusd/anime.conf" = maybeConfig "anime.conf" cfg.animeConfig;
|
"asusd/anime.ron" = maybeConfig "anime.ron" cfg.animeConfig;
|
||||||
"asusd/asusd.conf" = maybeConfig "asusd.conf" cfg.asusdConfig;
|
"asusd/asusd.ron" = maybeConfig "asusd.ron" cfg.asusdConfig;
|
||||||
"asusd/aura.conf" = maybeConfig "aura.conf" cfg.auraConfig;
|
"asusd/aura.ron" = maybeConfig "aura.ron" cfg.auraConfig;
|
||||||
"asusd/profile.conf" = lib.mkIf (cfg.profileConfig != null) {
|
"asusd/profile.conf" = maybeConfig "profile.ron" cfg.profileConfig;
|
||||||
source = pkgs.writeText "profile.conf" cfg.profileConfig;
|
"asusd/fan_curves.ron" = maybeConfig "fan_curves.ron" cfg.fanCurvesConfig;
|
||||||
mode = "0644";
|
"asusd/asusd_user_ledmodes.ron" = maybeConfig "asusd_user_ledmodes.ron" cfg.userLedModesConfig;
|
||||||
};
|
|
||||||
"asusd/asusd-ledmodes.toml" = {
|
|
||||||
source =
|
|
||||||
if cfg.ledModesConfig == null
|
|
||||||
then "${pkgs.asusctl}/share/asusd/data/asusd-ledmodes.toml"
|
|
||||||
else toml.generate "asusd-ledmodes.toml" cfg.ledModesConfig;
|
|
||||||
mode = "0644";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
services.dbus.enable = true;
|
services.dbus.enable = true;
|
||||||
|
@ -34,7 +34,7 @@ in {
|
|||||||
|
|
||||||
systemd.timers.fstrim = {
|
systemd.timers.fstrim = {
|
||||||
timerConfig = {
|
timerConfig = {
|
||||||
OnCalendar = cfg.interval;
|
OnCalendar = [ "" cfg.interval ];
|
||||||
};
|
};
|
||||||
wantedBy = [ "timers.target" ];
|
wantedBy = [ "timers.target" ];
|
||||||
};
|
};
|
||||||
|
@ -235,7 +235,7 @@ in {
|
|||||||
|
|
||||||
systemd.services = let
|
systemd.services = let
|
||||||
makeService = attrs: recursiveUpdate {
|
makeService = attrs: recursiveUpdate {
|
||||||
path = [ datadogPkg pkgs.python pkgs.sysstat pkgs.procps pkgs.iproute2 ];
|
path = [ datadogPkg pkgs.sysstat pkgs.procps pkgs.iproute2 ];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
User = "datadog";
|
User = "datadog";
|
||||||
|
@ -76,7 +76,7 @@ in
|
|||||||
export DATABASE_PASSWORD="$(<"${cfg.dbpassFile}")"
|
export DATABASE_PASSWORD="$(<"${cfg.dbpassFile}")"
|
||||||
'' + ''
|
'' + ''
|
||||||
export DATABASE_URL="${dbUrl}"
|
export DATABASE_URL="${dbUrl}"
|
||||||
${cfg.package}/bin/notify_push --glob-config '${config.services.nextcloud.datadir}/config/config.php'
|
${cfg.package}/bin/notify_push '${config.services.nextcloud.datadir}/config/config.php'
|
||||||
'';
|
'';
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
User = "nextcloud";
|
User = "nextcloud";
|
||||||
|
@ -12,10 +12,16 @@ major version available.
|
|||||||
|
|
||||||
Nextcloud is a PHP-based application which requires an HTTP server
|
Nextcloud is a PHP-based application which requires an HTTP server
|
||||||
([`services.nextcloud`](#opt-services.nextcloud.enable)
|
([`services.nextcloud`](#opt-services.nextcloud.enable)
|
||||||
optionally supports
|
and optionally supports
|
||||||
[`services.nginx`](#opt-services.nginx.enable))
|
[`services.nginx`](#opt-services.nginx.enable)).
|
||||||
and a database (it's recommended to use
|
|
||||||
[`services.postgresql`](#opt-services.postgresql.enable)).
|
For the database, you can set
|
||||||
|
[`services.nextcloud.config.dbtype`](#opt-services.nextcloud.config.dbtype) to
|
||||||
|
either `sqlite` (the default), `mysql`, or `pgsql`. For the last two, by
|
||||||
|
default, a local database will be created and nextcloud will connect to it via
|
||||||
|
socket; this can be disabled by setting
|
||||||
|
[`services.nextcloud.database.createLocally`](#opt-services.nextcloud.database.createLocally)
|
||||||
|
to `false`.
|
||||||
|
|
||||||
A very basic configuration may look like this:
|
A very basic configuration may look like this:
|
||||||
```
|
```
|
||||||
@ -26,30 +32,10 @@ A very basic configuration may look like this:
|
|||||||
hostName = "nextcloud.tld";
|
hostName = "nextcloud.tld";
|
||||||
config = {
|
config = {
|
||||||
dbtype = "pgsql";
|
dbtype = "pgsql";
|
||||||
dbuser = "nextcloud";
|
|
||||||
dbhost = "/run/postgresql"; # nextcloud will add /.s.PGSQL.5432 by itself
|
|
||||||
dbname = "nextcloud";
|
|
||||||
adminpassFile = "/path/to/admin-pass-file";
|
adminpassFile = "/path/to/admin-pass-file";
|
||||||
adminuser = "root";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services.postgresql = {
|
|
||||||
enable = true;
|
|
||||||
ensureDatabases = [ "nextcloud" ];
|
|
||||||
ensureUsers = [
|
|
||||||
{ name = "nextcloud";
|
|
||||||
ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
# ensure that postgres is running *before* running the setup
|
|
||||||
systemd.services."nextcloud-setup" = {
|
|
||||||
requires = ["postgresql.service"];
|
|
||||||
after = ["postgresql.service"];
|
|
||||||
};
|
|
||||||
|
|
||||||
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
@ -57,6 +57,9 @@ let
|
|||||||
|
|
||||||
inherit (config.system) stateVersion;
|
inherit (config.system) stateVersion;
|
||||||
|
|
||||||
|
mysqlLocal = cfg.database.createLocally && cfg.config.dbtype == "mysql";
|
||||||
|
pgsqlLocal = cfg.database.createLocally && cfg.config.dbtype == "pgsql";
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
@ -314,13 +317,9 @@ in {
|
|||||||
|
|
||||||
createLocally = mkOption {
|
createLocally = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = true;
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
Create the database and database user locally. Only available for
|
Create the database and database user locally.
|
||||||
mysql database.
|
|
||||||
Note that this option will use the latest version of MariaDB which
|
|
||||||
is not officially supported by Nextcloud. As for now a workaround
|
|
||||||
is used to also support MariaDB version >= 10.6.
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -352,12 +351,15 @@ in {
|
|||||||
};
|
};
|
||||||
dbhost = mkOption {
|
dbhost = mkOption {
|
||||||
type = types.nullOr types.str;
|
type = types.nullOr types.str;
|
||||||
default = "localhost";
|
default =
|
||||||
|
if pgsqlLocal then "/run/postgresql"
|
||||||
|
else if mysqlLocal then "localhost:/run/mysqld/mysqld.sock"
|
||||||
|
else "localhost";
|
||||||
|
defaultText = "localhost";
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
Database host.
|
Database host or socket path. Defaults to the correct unix socket
|
||||||
|
instead if `services.nextcloud.database.createLocally` is true and
|
||||||
Note: for using Unix authentication with PostgreSQL, this should be
|
`services.nextcloud.config.dbtype` is either `pgsql` or `mysql`.
|
||||||
set to `/run/postgresql`.
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
dbport = mkOption {
|
dbport = mkOption {
|
||||||
@ -737,8 +739,22 @@ in {
|
|||||||
}
|
}
|
||||||
|
|
||||||
{ assertions = [
|
{ assertions = [
|
||||||
{ assertion = cfg.database.createLocally -> cfg.config.dbtype == "mysql";
|
{ assertion = cfg.database.createLocally -> cfg.config.dbpassFile == null;
|
||||||
message = ''services.nextcloud.config.dbtype must be set to mysql if services.nextcloud.database.createLocally is set to true.'';
|
message = ''
|
||||||
|
Using `services.nextcloud.database.createLocally` (that now defaults
|
||||||
|
to true) with database password authentication is no longer
|
||||||
|
supported.
|
||||||
|
|
||||||
|
If you use an external database (or want to use password auth for any
|
||||||
|
other reason), set `services.nextcloud.database.createLocally` to
|
||||||
|
`false`. The database won't be managed for you (use `services.mysql`
|
||||||
|
if you want to set it up).
|
||||||
|
|
||||||
|
If you want this module to manage your nextcloud database for you,
|
||||||
|
unset `services.nextcloud.config.dbpassFile` and
|
||||||
|
`services.nextcloud.config.dbhost` to use socket authentication
|
||||||
|
instead of password.
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
]; }
|
]; }
|
||||||
|
|
||||||
@ -902,6 +918,8 @@ in {
|
|||||||
in {
|
in {
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
before = [ "phpfpm-nextcloud.service" ];
|
before = [ "phpfpm-nextcloud.service" ];
|
||||||
|
after = optional mysqlLocal "mysql.service" ++ optional pgsqlLocal "postgresql.service";
|
||||||
|
requires = optional mysqlLocal "mysql.service" ++ optional pgsqlLocal "postgresql.service";
|
||||||
path = [ occ ];
|
path = [ occ ];
|
||||||
script = ''
|
script = ''
|
||||||
${optionalString (c.dbpassFile != null) ''
|
${optionalString (c.dbpassFile != null) ''
|
||||||
@ -1007,7 +1025,7 @@ in {
|
|||||||
|
|
||||||
environment.systemPackages = [ occ ];
|
environment.systemPackages = [ occ ];
|
||||||
|
|
||||||
services.mysql = lib.mkIf cfg.database.createLocally {
|
services.mysql = lib.mkIf mysqlLocal {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = lib.mkDefault pkgs.mariadb;
|
package = lib.mkDefault pkgs.mariadb;
|
||||||
ensureDatabases = [ cfg.config.dbname ];
|
ensureDatabases = [ cfg.config.dbname ];
|
||||||
@ -1015,14 +1033,15 @@ in {
|
|||||||
name = cfg.config.dbuser;
|
name = cfg.config.dbuser;
|
||||||
ensurePermissions = { "${cfg.config.dbname}.*" = "ALL PRIVILEGES"; };
|
ensurePermissions = { "${cfg.config.dbname}.*" = "ALL PRIVILEGES"; };
|
||||||
}];
|
}];
|
||||||
initialScript = pkgs.writeText "mysql-init" ''
|
};
|
||||||
CREATE USER '${cfg.config.dbname}'@'localhost' IDENTIFIED BY '${builtins.readFile( cfg.config.dbpassFile )}';
|
|
||||||
CREATE DATABASE IF NOT EXISTS ${cfg.config.dbname};
|
services.postgresql = mkIf pgsqlLocal {
|
||||||
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER,
|
enable = true;
|
||||||
CREATE TEMPORARY TABLES ON ${cfg.config.dbname}.* TO '${cfg.config.dbuser}'@'localhost'
|
ensureDatabases = [ cfg.config.dbname ];
|
||||||
IDENTIFIED BY '${builtins.readFile( cfg.config.dbpassFile )}';
|
ensureUsers = [{
|
||||||
FLUSH privileges;
|
name = cfg.config.dbuser;
|
||||||
'';
|
ensurePermissions = { "DATABASE ${cfg.config.dbname}" = "ALL PRIVILEGES"; };
|
||||||
|
}];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.nginx.enable = mkDefault true;
|
services.nginx.enable = mkDefault true;
|
||||||
|
208
nixos/modules/services/x11/desktop-managers/deepin.nix
Normal file
208
nixos/modules/services/x11/desktop-managers/deepin.nix
Normal file
@ -0,0 +1,208 @@
|
|||||||
|
{ config, lib, pkgs, utils, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
xcfg = config.services.xserver;
|
||||||
|
cfg = xcfg.desktopManager.deepin;
|
||||||
|
|
||||||
|
nixos-gsettings-overrides = pkgs.deepin.dde-gsettings-schemas.override {
|
||||||
|
extraGSettingsOverridePackages = cfg.extraGSettingsOverridePackages;
|
||||||
|
extraGSettingsOverrides = cfg.extraGSettingsOverrides;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options = {
|
||||||
|
|
||||||
|
services.xserver.desktopManager.deepin = {
|
||||||
|
enable = mkEnableOption (lib.mdDoc "Enable Deepin desktop manager");
|
||||||
|
extraGSettingsOverrides = mkOption {
|
||||||
|
default = "";
|
||||||
|
type = types.lines;
|
||||||
|
description = lib.mdDoc "Additional gsettings overrides.";
|
||||||
|
};
|
||||||
|
extraGSettingsOverridePackages = mkOption {
|
||||||
|
default = [ ];
|
||||||
|
type = types.listOf types.path;
|
||||||
|
description = lib.mdDoc "List of packages for which gsettings are overridden.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.deepin.excludePackages = mkOption {
|
||||||
|
default = [ ];
|
||||||
|
type = types.listOf types.package;
|
||||||
|
description = lib.mdDoc "List of default packages to exclude from the configuration";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable
|
||||||
|
{
|
||||||
|
services.xserver.displayManager.sessionPackages = [ pkgs.deepin.startdde ];
|
||||||
|
services.xserver.displayManager.defaultSession = mkDefault "deepin";
|
||||||
|
|
||||||
|
# Update the DBus activation environment after launching the desktop manager.
|
||||||
|
services.xserver.displayManager.sessionCommands = ''
|
||||||
|
${lib.getBin pkgs.dbus}/bin/dbus-update-activation-environment --systemd --all
|
||||||
|
'';
|
||||||
|
|
||||||
|
hardware.bluetooth.enable = mkDefault true;
|
||||||
|
hardware.pulseaudio.enable = mkDefault true;
|
||||||
|
security.polkit.enable = true;
|
||||||
|
|
||||||
|
services.deepin.dde-daemon.enable = mkForce true;
|
||||||
|
services.deepin.dde-api.enable = mkForce true;
|
||||||
|
services.deepin.app-services.enable = mkForce true;
|
||||||
|
|
||||||
|
services.colord.enable = mkDefault true;
|
||||||
|
services.accounts-daemon.enable = mkDefault true;
|
||||||
|
services.gvfs.enable = mkDefault true;
|
||||||
|
services.gnome.glib-networking.enable = mkDefault true;
|
||||||
|
services.gnome.gnome-keyring.enable = mkDefault true;
|
||||||
|
services.bamf.enable = mkDefault true;
|
||||||
|
|
||||||
|
services.xserver.libinput.enable = mkDefault true;
|
||||||
|
services.udisks2.enable = true;
|
||||||
|
services.upower.enable = mkDefault config.powerManagement.enable;
|
||||||
|
networking.networkmanager.enable = mkDefault true;
|
||||||
|
programs.dconf.enable = mkDefault true;
|
||||||
|
|
||||||
|
fonts.fonts = with pkgs; [ noto-fonts ];
|
||||||
|
xdg.mime.enable = true;
|
||||||
|
xdg.menus.enable = true;
|
||||||
|
xdg.icons.enable = true;
|
||||||
|
xdg.portal.enable = mkDefault true;
|
||||||
|
xdg.portal.extraPortals = mkDefault [
|
||||||
|
(pkgs.xdg-desktop-portal-gtk.override {
|
||||||
|
buildPortalsInGnome = false;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.sessionVariables = {
|
||||||
|
NIX_GSETTINGS_OVERRIDES_DIR = "${nixos-gsettings-overrides}/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas";
|
||||||
|
DDE_POLKIT_AGENT_PLUGINS_DIRS = [ "${pkgs.deepin.dpa-ext-gnomekeyring}/lib/polkit-1-dde/plugins" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.pathsToLink = [
|
||||||
|
"/lib/dde-dock/plugins"
|
||||||
|
"/lib/dde-control-center"
|
||||||
|
"/lib/dde-session-shell"
|
||||||
|
"/lib/dde-file-manager"
|
||||||
|
"/share/backgrounds"
|
||||||
|
"/share/wallpapers"
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.etc = {
|
||||||
|
"distribution.info".text = ''
|
||||||
|
[Distribution]
|
||||||
|
Name=NixOS
|
||||||
|
WebsiteName=www.nixos.org
|
||||||
|
Website=https://www.nixos.org
|
||||||
|
Logo=${pkgs.nixos-icons}/share/icons/hicolor/96x96/apps/nix-snowflake.png
|
||||||
|
LogoLight=${pkgs.nixos-icons}/share/icons/hicolor/32x32/apps/nix-snowflake.png
|
||||||
|
LogoTransparent=${pkgs.deepin.deepin-desktop-base}/share/pixmaps/distribution_logo_transparent.svg
|
||||||
|
'';
|
||||||
|
"deepin-installer.conf".text = ''
|
||||||
|
system_info_vendor_name="Copyright (c) 2003-2023 NixOS contributors"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d /var/lib/AccountsService 0775 root root - -"
|
||||||
|
"C /var/lib/AccountsService/icons 0775 root root - ${pkgs.deepin.dde-account-faces}/var/lib/AccountsService/icons"
|
||||||
|
];
|
||||||
|
|
||||||
|
security.pam.services.dde-lock.text = ''
|
||||||
|
# original at {dde-session-shell}/etc/pam.d/dde-lock
|
||||||
|
auth substack login
|
||||||
|
account include login
|
||||||
|
password substack login
|
||||||
|
session include login
|
||||||
|
'';
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; with deepin;
|
||||||
|
let
|
||||||
|
requiredPackages = [
|
||||||
|
pciutils # for dtkcore/startdde
|
||||||
|
xdotool # for dde-daemon
|
||||||
|
glib # for gsettings program / gdbus
|
||||||
|
gtk3 # for gtk-launch program
|
||||||
|
xdg-user-dirs # Update user dirs
|
||||||
|
util-linux # runuser
|
||||||
|
polkit_gnome
|
||||||
|
librsvg # dde-api use rsvg-convert
|
||||||
|
lshw # for dtkcore
|
||||||
|
libsForQt5.kde-gtk-config # deepin-api/gtk-thumbnailer need
|
||||||
|
libsForQt5.kglobalaccel
|
||||||
|
xsettingsd # lightdm-deepin-greeter
|
||||||
|
qt5platform-plugins
|
||||||
|
deepin-pw-check
|
||||||
|
deepin-turbo
|
||||||
|
|
||||||
|
dde-account-faces
|
||||||
|
deepin-icon-theme
|
||||||
|
deepin-sound-theme
|
||||||
|
deepin-gtk-theme
|
||||||
|
deepin-wallpapers
|
||||||
|
|
||||||
|
startdde
|
||||||
|
dde-dock
|
||||||
|
dde-launcher
|
||||||
|
dde-session-ui
|
||||||
|
dde-session-shell
|
||||||
|
dde-file-manager
|
||||||
|
dde-control-center
|
||||||
|
dde-network-core
|
||||||
|
dde-clipboard
|
||||||
|
dde-calendar
|
||||||
|
dde-polkit-agent
|
||||||
|
dpa-ext-gnomekeyring
|
||||||
|
deepin-desktop-schemas
|
||||||
|
deepin-terminal
|
||||||
|
dde-kwin
|
||||||
|
deepin-kwin
|
||||||
|
];
|
||||||
|
optionalPackages = [
|
||||||
|
onboard # dde-dock plugin
|
||||||
|
deepin-camera
|
||||||
|
deepin-calculator
|
||||||
|
deepin-compressor
|
||||||
|
deepin-editor
|
||||||
|
deepin-picker
|
||||||
|
deepin-draw
|
||||||
|
deepin-album
|
||||||
|
deepin-image-viewer
|
||||||
|
deepin-music
|
||||||
|
deepin-movie-reborn
|
||||||
|
deepin-system-monitor
|
||||||
|
deepin-screen-recorder
|
||||||
|
deepin-shortcut-viewer
|
||||||
|
];
|
||||||
|
in
|
||||||
|
requiredPackages
|
||||||
|
++ utils.removePackagesByName optionalPackages config.environment.deepin.excludePackages;
|
||||||
|
|
||||||
|
services.dbus.packages = with pkgs.deepin; [
|
||||||
|
dde-dock
|
||||||
|
dde-launcher
|
||||||
|
dde-session-ui
|
||||||
|
dde-session-shell
|
||||||
|
dde-file-manager
|
||||||
|
dde-control-center
|
||||||
|
dde-calendar
|
||||||
|
dde-clipboard
|
||||||
|
dde-kwin
|
||||||
|
deepin-kwin
|
||||||
|
deepin-pw-check
|
||||||
|
];
|
||||||
|
|
||||||
|
systemd.packages = with pkgs.deepin; [
|
||||||
|
dde-launcher
|
||||||
|
dde-file-manager
|
||||||
|
dde-calendar
|
||||||
|
dde-clipboard
|
||||||
|
deepin-kwin
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -21,7 +21,7 @@ in
|
|||||||
./none.nix ./xterm.nix ./phosh.nix ./xfce.nix ./plasma5.nix ./lumina.nix
|
./none.nix ./xterm.nix ./phosh.nix ./xfce.nix ./plasma5.nix ./lumina.nix
|
||||||
./lxqt.nix ./enlightenment.nix ./gnome.nix ./retroarch.nix ./kodi.nix
|
./lxqt.nix ./enlightenment.nix ./gnome.nix ./retroarch.nix ./kodi.nix
|
||||||
./mate.nix ./pantheon.nix ./surf-display.nix ./cde.nix
|
./mate.nix ./pantheon.nix ./surf-display.nix ./cde.nix
|
||||||
./cinnamon.nix ./budgie.nix
|
./cinnamon.nix ./budgie.nix ./deepin.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
|
@ -171,6 +171,7 @@ in {
|
|||||||
cups-pdf = handleTest ./cups-pdf.nix {};
|
cups-pdf = handleTest ./cups-pdf.nix {};
|
||||||
custom-ca = handleTest ./custom-ca.nix {};
|
custom-ca = handleTest ./custom-ca.nix {};
|
||||||
croc = handleTest ./croc.nix {};
|
croc = handleTest ./croc.nix {};
|
||||||
|
deepin = handleTest ./deepin.nix {};
|
||||||
deluge = handleTest ./deluge.nix {};
|
deluge = handleTest ./deluge.nix {};
|
||||||
dendrite = handleTest ./matrix/dendrite.nix {};
|
dendrite = handleTest ./matrix/dendrite.nix {};
|
||||||
dex-oidc = handleTest ./dex-oidc.nix {};
|
dex-oidc = handleTest ./dex-oidc.nix {};
|
||||||
|
57
nixos/tests/deepin.nix
Normal file
57
nixos/tests/deepin.nix
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
||||||
|
name = "deepin";
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
maintainers = teams.deepin.members;
|
||||||
|
};
|
||||||
|
|
||||||
|
nodes.machine = { ... }: {
|
||||||
|
imports = [
|
||||||
|
./common/user-account.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
services.xserver.enable = true;
|
||||||
|
|
||||||
|
services.xserver.displayManager = {
|
||||||
|
lightdm.enable = true;
|
||||||
|
autoLogin = {
|
||||||
|
enable = true;
|
||||||
|
user = "alice";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.xserver.desktopManager.deepin.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = { nodes, ... }:
|
||||||
|
let
|
||||||
|
user = nodes.machine.users.users.alice;
|
||||||
|
in
|
||||||
|
''
|
||||||
|
with subtest("Wait for login"):
|
||||||
|
machine.wait_for_x()
|
||||||
|
machine.wait_for_file("${user.home}/.Xauthority")
|
||||||
|
machine.succeed("xauth merge ${user.home}/.Xauthority")
|
||||||
|
|
||||||
|
with subtest("Check that logging in has given the user ownership of devices"):
|
||||||
|
machine.succeed("getfacl -p /dev/snd/timer | grep -q ${user.name}")
|
||||||
|
|
||||||
|
with subtest("Check if DDE wm chooser actually start"):
|
||||||
|
machine.wait_until_succeeds("pgrep -f dde-wm-chooser")
|
||||||
|
machine.wait_for_window("dde-wm-chooser")
|
||||||
|
machine.execute("pkill dde-wm-chooser")
|
||||||
|
|
||||||
|
|
||||||
|
with subtest("Check if Deepin session components actually start"):
|
||||||
|
machine.wait_until_succeeds("pgrep -f dde-session-daemon")
|
||||||
|
machine.wait_for_window("dde-session-daemon")
|
||||||
|
machine.wait_until_succeeds("pgrep -f dde-desktop")
|
||||||
|
machine.wait_for_window("dde-desktop")
|
||||||
|
|
||||||
|
with subtest("Open deepin-terminal"):
|
||||||
|
machine.succeed("su - ${user.name} -c 'DISPLAY=:0 deepin-terminal >&2 &'")
|
||||||
|
machine.wait_for_window("deepin-terminal")
|
||||||
|
machine.sleep(20)
|
||||||
|
machine.screenshot("screen")
|
||||||
|
'';
|
||||||
|
})
|
@ -1,6 +1,11 @@
|
|||||||
import ../make-test-python.nix ({ pkgs, ...}: let
|
import ../make-test-python.nix ({ pkgs, ...}: let
|
||||||
adminpass = "hunter2";
|
username = "custom_admin_username";
|
||||||
adminuser = "custom-admin-username";
|
# This will be used both for redis and postgresql
|
||||||
|
pass = "hunter2";
|
||||||
|
# Don't do this at home, use a file outside of the nix store instead
|
||||||
|
passFile = toString (pkgs.writeText "pass-file" ''
|
||||||
|
${pass}
|
||||||
|
'');
|
||||||
in {
|
in {
|
||||||
name = "nextcloud-with-declarative-redis";
|
name = "nextcloud-with-declarative-redis";
|
||||||
meta = with pkgs.lib.maintainers; {
|
meta = with pkgs.lib.maintainers; {
|
||||||
@ -22,15 +27,15 @@ in {
|
|||||||
redis = true;
|
redis = true;
|
||||||
memcached = false;
|
memcached = false;
|
||||||
};
|
};
|
||||||
|
# This test also validates that we can use an "external" database
|
||||||
|
database.createLocally = false;
|
||||||
config = {
|
config = {
|
||||||
dbtype = "pgsql";
|
dbtype = "pgsql";
|
||||||
dbname = "nextcloud";
|
dbname = "nextcloud";
|
||||||
dbuser = "nextcloud";
|
dbuser = username;
|
||||||
dbhost = "/run/postgresql";
|
dbpassFile = passFile;
|
||||||
inherit adminuser;
|
adminuser = username;
|
||||||
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
|
adminpassFile = passFile;
|
||||||
${adminpass}
|
|
||||||
'');
|
|
||||||
};
|
};
|
||||||
secretFile = "/etc/nextcloud-secrets.json";
|
secretFile = "/etc/nextcloud-secrets.json";
|
||||||
|
|
||||||
@ -52,20 +57,20 @@ in {
|
|||||||
|
|
||||||
systemd.services.nextcloud-setup= {
|
systemd.services.nextcloud-setup= {
|
||||||
requires = ["postgresql.service"];
|
requires = ["postgresql.service"];
|
||||||
after = [
|
after = [ "postgresql.service" ];
|
||||||
"postgresql.service"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
services.postgresql = {
|
services.postgresql = {
|
||||||
enable = true;
|
enable = true;
|
||||||
ensureDatabases = [ "nextcloud" ];
|
|
||||||
ensureUsers = [
|
|
||||||
{ name = "nextcloud";
|
|
||||||
ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
systemd.services.postgresql.postStart = pkgs.lib.mkAfter ''
|
||||||
|
password=$(cat ${passFile})
|
||||||
|
${config.services.postgresql.package}/bin/psql <<EOF
|
||||||
|
CREATE ROLE ${username} WITH LOGIN PASSWORD '$password' CREATEDB;
|
||||||
|
CREATE DATABASE nextcloud;
|
||||||
|
GRANT ALL PRIVILEGES ON DATABASE nextcloud TO ${username};
|
||||||
|
EOF
|
||||||
|
'';
|
||||||
|
|
||||||
# This file is meant to contain secret options which should
|
# This file is meant to contain secret options which should
|
||||||
# not go into the nix store. Here it is just used to set the
|
# not go into the nix store. Here it is just used to set the
|
||||||
@ -86,8 +91,8 @@ in {
|
|||||||
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
|
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
|
||||||
export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/webdav/"
|
export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/webdav/"
|
||||||
export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
|
export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
|
||||||
export RCLONE_CONFIG_NEXTCLOUD_USER="${adminuser}"
|
export RCLONE_CONFIG_NEXTCLOUD_USER="${username}"
|
||||||
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${adminpass})"
|
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${pass})"
|
||||||
"''${@}"
|
"''${@}"
|
||||||
'';
|
'';
|
||||||
copySharedFile = pkgs.writeScript "copy-shared-file" ''
|
copySharedFile = pkgs.writeScript "copy-shared-file" ''
|
||||||
|
@ -26,24 +26,13 @@ in {
|
|||||||
redis = false;
|
redis = false;
|
||||||
memcached = true;
|
memcached = true;
|
||||||
};
|
};
|
||||||
database.createLocally = true;
|
|
||||||
config = {
|
config = {
|
||||||
dbtype = "mysql";
|
dbtype = "mysql";
|
||||||
dbname = "nextcloud";
|
|
||||||
dbuser = "nextcloud";
|
|
||||||
dbhost = "127.0.0.1";
|
|
||||||
dbport = 3306;
|
|
||||||
dbpassFile = "${pkgs.writeText "dbpass" "hunter2" }";
|
|
||||||
# Don't inherit adminuser since "root" is supposed to be the default
|
# Don't inherit adminuser since "root" is supposed to be the default
|
||||||
adminpassFile = "${pkgs.writeText "adminpass" adminpass}"; # Don't try this at home!
|
adminpassFile = "${pkgs.writeText "adminpass" adminpass}"; # Don't try this at home!
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.nextcloud-setup= {
|
|
||||||
requires = ["mysql.service"];
|
|
||||||
after = ["mysql.service"];
|
|
||||||
};
|
|
||||||
|
|
||||||
services.memcached.enable = true;
|
services.memcached.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -27,9 +27,6 @@ in {
|
|||||||
};
|
};
|
||||||
config = {
|
config = {
|
||||||
dbtype = "pgsql";
|
dbtype = "pgsql";
|
||||||
dbname = "nextcloud";
|
|
||||||
dbuser = "nextcloud";
|
|
||||||
dbhost = "/run/postgresql";
|
|
||||||
inherit adminuser;
|
inherit adminuser;
|
||||||
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
|
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
|
||||||
${adminpass}
|
${adminpass}
|
||||||
@ -48,23 +45,6 @@ in {
|
|||||||
|
|
||||||
services.redis.servers."nextcloud".enable = true;
|
services.redis.servers."nextcloud".enable = true;
|
||||||
services.redis.servers."nextcloud".port = 6379;
|
services.redis.servers."nextcloud".port = 6379;
|
||||||
|
|
||||||
systemd.services.nextcloud-setup= {
|
|
||||||
requires = ["postgresql.service"];
|
|
||||||
after = [
|
|
||||||
"postgresql.service"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
services.postgresql = {
|
|
||||||
enable = true;
|
|
||||||
ensureDatabases = [ "nextcloud" ];
|
|
||||||
ensureUsers = [
|
|
||||||
{ name = "nextcloud";
|
|
||||||
ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ import ./make-test-python.nix (
|
|||||||
"ppp/pppoe-server-options".text = ''
|
"ppp/pppoe-server-options".text = ''
|
||||||
lcp-echo-interval 10
|
lcp-echo-interval 10
|
||||||
lcp-echo-failure 2
|
lcp-echo-failure 2
|
||||||
plugin rp-pppoe.so
|
plugin pppoe.so
|
||||||
require-chap
|
require-chap
|
||||||
nobsdcomp
|
nobsdcomp
|
||||||
noccp
|
noccp
|
||||||
@ -43,7 +43,7 @@ import ./make-test-python.nix (
|
|||||||
enable = true;
|
enable = true;
|
||||||
peers.test = {
|
peers.test = {
|
||||||
config = ''
|
config = ''
|
||||||
plugin rp-pppoe.so eth1
|
plugin pppoe.so eth1
|
||||||
name "flynn"
|
name "flynn"
|
||||||
noipdefault
|
noipdefault
|
||||||
persist
|
persist
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
, pkg-config
|
, pkg-config
|
||||||
, ronn
|
, ronn
|
||||||
, substituteAll
|
, substituteAll
|
||||||
|
, buildPackages
|
||||||
, mbrolaSupport ? true
|
, mbrolaSupport ? true
|
||||||
, mbrola
|
, mbrola
|
||||||
, pcaudiolibSupport ? true
|
, pcaudiolibSupport ? true
|
||||||
@ -49,6 +50,14 @@ stdenv.mkDerivation rec {
|
|||||||
"--with-mbrola=${if mbrolaSupport then "yes" else "no"}"
|
"--with-mbrola=${if mbrolaSupport then "yes" else "no"}"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# ref https://github.com/void-linux/void-packages/blob/3cf863f894b67b3c93e23ac7830ca46b697d308a/srcpkgs/espeak-ng/template#L29-L31
|
||||||
|
postConfigure = lib.optionalString (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
|
||||||
|
substituteInPlace Makefile \
|
||||||
|
--replace 'ESPEAK_DATA_PATH=$(CURDIR) src/espeak-ng' 'ESPEAK_DATA_PATH=$(CURDIR) ${lib.getExe buildPackages.espeak-ng}' \
|
||||||
|
--replace 'espeak-ng-data/%_dict: src/espeak-ng' 'espeak-ng-data/%_dict: ${lib.getExe buildPackages.espeak-ng}' \
|
||||||
|
--replace '../src/espeak-ng --compile' "${lib.getExe buildPackages.espeak-ng} --compile"
|
||||||
|
'';
|
||||||
|
|
||||||
postInstall = lib.optionalString stdenv.isLinux ''
|
postInstall = lib.optionalString stdenv.isLinux ''
|
||||||
patchelf --set-rpath "$(patchelf --print-rpath $out/bin/espeak-ng)" $out/bin/speak-ng
|
patchelf --set-rpath "$(patchelf --print-rpath $out/bin/espeak-ng)" $out/bin/speak-ng
|
||||||
wrapProgram $out/bin/espeak-ng \
|
wrapProgram $out/bin/espeak-ng \
|
||||||
|
@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "sha256-BSJu3jB7b5G2ThXBUHUNnBGl55EXe3nIzdBdgfOWDSM=";
|
sha256 = "sha256-BSJu3jB7b5G2ThXBUHUNnBGl55EXe3nIzdBdgfOWDSM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" "man" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ buildPackages.stdenv.cc pkg-config cmake ];
|
nativeBuildInputs = [ buildPackages.stdenv.cc pkg-config cmake ];
|
||||||
|
|
||||||
buildInputs = [ glib libsndfile libjack2 ]
|
buildInputs = [ glib libsndfile libjack2 ]
|
||||||
|
@ -13,13 +13,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "ft2-clone";
|
pname = "ft2-clone";
|
||||||
version = "1.66";
|
version = "1.67";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "8bitbubsy";
|
owner = "8bitbubsy";
|
||||||
repo = "ft2-clone";
|
repo = "ft2-clone";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-glLgjZFWvz/bJe9R8KTDu4+778dueC9tw3nVKF3xcps=";
|
sha256 = "sha256-v/yGHWd/hhE2jDdAQhyQbZOuHSS0FSG4WlVe8Oc6tMc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Adapt the linux-only CMakeLists to darwin (more reliable than make-macos.sh)
|
# Adapt the linux-only CMakeLists to darwin (more reliable than make-macos.sh)
|
||||||
|
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
|||||||
hash = "sha256-HKd9Omml/4RbegU294P+5VThBBE5prl49q/hT1gUrRo=";
|
hash = "sha256-HKd9Omml/4RbegU294P+5VThBBE5prl49q/hT1gUrRo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" ] ++ lib.optional withConplay "conplay";
|
outputs = [ "out" "dev" "man" ] ++ lib.optional withConplay "conplay";
|
||||||
|
|
||||||
nativeBuildInputs = lib.optionals (!libOnly) (
|
nativeBuildInputs = lib.optionals (!libOnly) (
|
||||||
lib.optionals withConplay [ makeWrapper ]
|
lib.optionals withConplay [ makeWrapper ]
|
||||||
|
@ -16,13 +16,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "mympd";
|
pname = "mympd";
|
||||||
version = "10.3.0";
|
version = "10.3.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "jcorporation";
|
owner = "jcorporation";
|
||||||
repo = "myMPD";
|
repo = "myMPD";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-iO/Ogh3G67GYoputrxAiA1i0fAon2NDrgPCMYxxn/o4=";
|
sha256 = "sha256-KQf+Szr/AunL/roCtRPiC771P2A3POXPFlXUhbNej6g=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -16,13 +16,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "pipecontrol";
|
pname = "pipecontrol";
|
||||||
version = "0.2.8";
|
version = "0.2.10";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "portaloffreedom";
|
owner = "portaloffreedom";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-x33L/oLgJFiHp19FzinVuGT9k73wOhdSaTTemq52ZVg=";
|
sha256 = "sha256-MSm9rW41x8qvPuDermOPIYpxgblk5hlKIQsUEAvCzMo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -5,16 +5,16 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "lightning-loop";
|
pname = "lightning-loop";
|
||||||
version = "0.20.0-beta";
|
version = "0.23.0-beta";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "lightninglabs";
|
owner = "lightninglabs";
|
||||||
repo = "loop";
|
repo = "loop";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1nx7i4i96982z756r79655hjf0yyz5l9lqjkvyvb62pbzqgm6my8";
|
sha256 = "sha256-nYDu451BS5gV4pbV9Pp+S7oKsLGzgVu1a9Df7651e4c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "0gp89fw6g8mz2ifn9wcbj84dgm736cspfxj2x34b524l2d8wz3lb";
|
vendorSha256 = "sha256-6bRg6is1g/eRCr82tHMXTWVFv2S0d2h/J3w1gpentjo=";
|
||||||
|
|
||||||
subPackages = [ "cmd/loop" "cmd/loopd" ];
|
subPackages = [ "cmd/loop" "cmd/loopd" ];
|
||||||
|
|
||||||
|
@ -81,6 +81,8 @@ in
|
|||||||
|
|
||||||
voicemacs = callPackage ./manual-packages/voicemacs { };
|
voicemacs = callPackage ./manual-packages/voicemacs { };
|
||||||
|
|
||||||
|
wat-mode = callPackage ./manual-packages/wat-mode { };
|
||||||
|
|
||||||
yes-no = callPackage ./manual-packages/yes-no { };
|
yes-no = callPackage ./manual-packages/yes-no { };
|
||||||
|
|
||||||
youtube-dl = callPackage ./manual-packages/youtube-dl { };
|
youtube-dl = callPackage ./manual-packages/youtube-dl { };
|
||||||
|
@ -0,0 +1,23 @@
|
|||||||
|
# Manually packaged until it is upstreamed to melpa
|
||||||
|
# See https://github.com/devonsparks/wat-mode/issues/1
|
||||||
|
{ lib, trivialBuild, fetchFromGitHub, fetchpatch, emacs }:
|
||||||
|
|
||||||
|
trivialBuild rec {
|
||||||
|
pname = "wat-mode";
|
||||||
|
version = "unstable-2022-07-13";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "devonsparks";
|
||||||
|
repo = pname;
|
||||||
|
rev = "46b4df83e92c585295d659d049560dbf190fe501";
|
||||||
|
hash = "sha256-jV5V3TRY+D3cPSz3yFwVWn9yInhGOYIaUTPEhsOBxto=";
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/devonsparks/wat-mode";
|
||||||
|
description = "An Emacs major mode for WebAssembly's text format";
|
||||||
|
license = licenses.gpl3Only;
|
||||||
|
maintainers = with maintainers; [ nagy ];
|
||||||
|
inherit (emacs.meta) platforms;
|
||||||
|
};
|
||||||
|
}
|
@ -41,13 +41,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "gnome-builder";
|
pname = "gnome-builder";
|
||||||
version = "44.1";
|
version = "44.2";
|
||||||
|
|
||||||
outputs = [ "out" "devdoc" ];
|
outputs = [ "out" "devdoc" ];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
|
||||||
sha256 = "+Tmn+VtLbh0EvY20vpygtnsqp2W4bGP03yP9s6ftzz4=";
|
sha256 = "z6aJx40/AiMcp0cVV99MZIKASio08nHDXRqWLX8XKbA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -125,6 +125,8 @@ in
|
|||||||
export VIMRUNTIME=$PWD/runtime
|
export VIMRUNTIME=$PWD/runtime
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
separateDebugInfo = true;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Vim text editor fork focused on extensibility and agility";
|
description = "Vim text editor fork focused on extensibility and agility";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
|
@ -1807,11 +1807,16 @@ let
|
|||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "vscode-clangd";
|
name = "vscode-clangd";
|
||||||
publisher = "llvm-vs-code-extensions";
|
publisher = "llvm-vs-code-extensions";
|
||||||
version = "0.1.23";
|
version = "0.1.24";
|
||||||
sha256 = "125incws4n688irqii3s2a1cznj0kvkbhv3sa8585chj5g4zvmfy";
|
sha256 = "sha256-yOpsYjjwHRXxbiHDPgrtswUtgbQAo+3RgN2s6UYe9mg=";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
|
description = "C/C++ completion, navigation, and insights";
|
||||||
|
downloadPage = "https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.vscode-clangd";
|
||||||
|
homepage = "https://github.com/clangd/vscode-clangd";
|
||||||
|
changelog = "https://marketplace.visualstudio.com/items/llvm-vs-code-extensions.vscode-clangd/changelog";
|
||||||
license = lib.licenses.mit;
|
license = lib.licenses.mit;
|
||||||
|
maintainers = [ lib.maintainers.wackbyte ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -7,16 +7,16 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "lf";
|
pname = "lf";
|
||||||
version = "28";
|
version = "29";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "gokcehan";
|
owner = "gokcehan";
|
||||||
repo = "lf";
|
repo = "lf";
|
||||||
rev = "r${version}";
|
rev = "r${version}";
|
||||||
hash = "sha256-VEXWjpdUP5Kabimp9kKoLR7/FlE39MAroRBl9au2TI8=";
|
hash = "sha256-kch+FQAO/Xn3GFXOzBTV1VUeJ+0CnDj/GmzxPUO5dlo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-oIIyQbw42+B6T6Qn6nIV62Xr+8ms3tatfFI8ocYNr0A=";
|
vendorHash = "sha256-z34WN4z9reBbwITLm7igQscmIVuoRpdAvZ4QMNGAPaE=";
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
@ -6,14 +6,18 @@
|
|||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "veusz";
|
pname = "veusz";
|
||||||
version = "3.3.1";
|
version = "3.6.2";
|
||||||
|
|
||||||
src = python3Packages.fetchPypi {
|
src = python3Packages.fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "4ClgYwiU21wHDve2q9cItSAVb9hbR2F+fJc8znGI8OA=";
|
sha256 = "whcaxF5LMEJNj8NSYeLpnb5uJboRl+vCQ1WxBrJjldE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ wrapQtAppsHook python3Packages.sip_4 ];
|
nativeBuildInputs = [
|
||||||
|
wrapQtAppsHook
|
||||||
|
python3Packages.sip
|
||||||
|
python3Packages.tomli
|
||||||
|
];
|
||||||
|
|
||||||
buildInputs = [ qtbase ];
|
buildInputs = [ qtbase ];
|
||||||
|
|
||||||
@ -24,22 +28,17 @@ python3Packages.buildPythonApplication rec {
|
|||||||
wrapQtApp "$out/bin/veusz"
|
wrapQtApp "$out/bin/veusz"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# Since sip 6 (we use sip 4 here, but pyqt5 is built with sip 6), sip files are
|
# pyqt_setuptools.py uses the platlib path from sysconfig, but NixOS doesn't
|
||||||
# placed in a different directory layout and --sip-dir won't work anymore.
|
# really have a corresponding path, so patching the location of PyQt5 inplace
|
||||||
# --sip-dir expects a directory with a PyQt5 subdirectory (where sip files are located),
|
|
||||||
# but the new directory layout places sip files in a subdirectory named 'bindings'.
|
|
||||||
# To workaround this, we patch the full path into pyqtdistutils.py.
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace pyqtdistutils.py \
|
substituteInPlace pyqt_setuptools.py \
|
||||||
--replace "'-I', pyqt5_include_dir," "'-I', '${python3Packages.pyqt5}/${python3Packages.python.sitePackages}/PyQt5/bindings',"
|
--replace "get_path('platlib')" "'${python3Packages.pyqt5}/${python3Packages.python.sitePackages}'"
|
||||||
patchShebangs tests/runselftest.py
|
patchShebangs tests/runselftest.py
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# you can find these options at
|
# you can find these options at
|
||||||
# https://github.com/veusz/veusz/blob/53b99dffa999f2bc41fdc5335d7797ae857c761f/pyqtdistutils.py#L71
|
# https://github.com/veusz/veusz/blob/53b99dffa999f2bc41fdc5335d7797ae857c761f/pyqtdistutils.py#L71
|
||||||
# --sip-dir cannot be used here for the reasons explained above
|
|
||||||
setupPyBuildFlags = [
|
setupPyBuildFlags = [
|
||||||
"--qt-include-dir=${qtbase.dev}/include"
|
|
||||||
# veusz tries to find a libinfix and fails without one
|
# veusz tries to find a libinfix and fails without one
|
||||||
# but we simply don't need a libinfix, so set it to empty here
|
# but we simply don't need a libinfix, so set it to empty here
|
||||||
"--qt-libinfix="
|
"--qt-libinfix="
|
||||||
|
59
pkgs/applications/misc/arianna/default.nix
Normal file
59
pkgs/applications/misc/arianna/default.nix
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
{ lib
|
||||||
|
, mkDerivation
|
||||||
|
, fetchFromGitLab
|
||||||
|
, cmake
|
||||||
|
, extra-cmake-modules
|
||||||
|
, pkg-config
|
||||||
|
, baloo
|
||||||
|
, kfilemetadata
|
||||||
|
, kirigami2
|
||||||
|
, kirigami-addons
|
||||||
|
, kquickcharts
|
||||||
|
, plasma-framework
|
||||||
|
, qqc2-desktop-style
|
||||||
|
, qtbase
|
||||||
|
, qtquickcontrols2
|
||||||
|
, qtwebsockets
|
||||||
|
, qtwebengine
|
||||||
|
}:
|
||||||
|
|
||||||
|
mkDerivation rec {
|
||||||
|
pname = "arianna";
|
||||||
|
version = "1.0.0";
|
||||||
|
|
||||||
|
src = fetchFromGitLab {
|
||||||
|
domain = "invent.kde.org";
|
||||||
|
owner = "graphics";
|
||||||
|
repo = "arianna";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-X3PDGWsQ8Alj5fisZC1tTHQDLPmjtiLw0X9gMvh5KFI=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
cmake
|
||||||
|
extra-cmake-modules
|
||||||
|
pkg-config
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
baloo
|
||||||
|
kfilemetadata
|
||||||
|
kirigami2
|
||||||
|
kirigami-addons
|
||||||
|
kquickcharts
|
||||||
|
plasma-framework
|
||||||
|
qqc2-desktop-style
|
||||||
|
qtbase
|
||||||
|
qtquickcontrols2
|
||||||
|
qtwebsockets
|
||||||
|
qtwebengine
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "An Epub Reader for Plasma and Plasma Mobile";
|
||||||
|
homepage = "https://invent.kde.org/graphics/arianna";
|
||||||
|
license = licenses.gpl3Plus;
|
||||||
|
platforms = platforms.unix;
|
||||||
|
maintainers = with maintainers; [ Thra11 ];
|
||||||
|
};
|
||||||
|
}
|
@ -3,13 +3,13 @@
|
|||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "AusweisApp2";
|
pname = "AusweisApp2";
|
||||||
version = "1.26.3";
|
version = "1.26.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Governikus";
|
owner = "Governikus";
|
||||||
repo = "AusweisApp2";
|
repo = "AusweisApp2";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-YI9/rMoe5Waw2e/tObvu+wi9dkmhEoG9v3ZQzkn4QH4=";
|
hash = "sha256-l/sPqXkr4rSMEbPi/ahl/74RYqNrjcb28v6/scDrh1w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkg-config ];
|
nativeBuildInputs = [ cmake pkg-config ];
|
||||||
|
@ -23,13 +23,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec{
|
stdenv.mkDerivation rec{
|
||||||
pname = "corectrl";
|
pname = "corectrl";
|
||||||
version = "1.3.3";
|
version = "1.3.5";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "corectrl";
|
owner = "corectrl";
|
||||||
repo = "corectrl";
|
repo = "corectrl";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-WgtLDAjywHd9++7DvPfpfEXGbBQWx8kQxseIadho1YE=";
|
sha256 = "sha256-HETD2+acxJf30iC6UwRXD/onFYo3ki4RwAAVs4NbSAw=";
|
||||||
};
|
};
|
||||||
patches = [
|
patches = [
|
||||||
./polkit-dir.patch
|
./polkit-dir.patch
|
||||||
|
26
pkgs/applications/misc/serial-studio/default.nix
Normal file
26
pkgs/applications/misc/serial-studio/default.nix
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
{ lib, stdenv, fetchFromGitHub, qmake, qtquickcontrols2, qtserialport, qtsvg, wrapQtAppsHook }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "serial-studio";
|
||||||
|
version = "1.1.7";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Serial-Studio";
|
||||||
|
repo = "Serial-Studio";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-Tsd1PGB7cO8h3HDifOtB8jsnj+fS4a/o5nfLoohVLM4=";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ qmake wrapQtAppsHook ];
|
||||||
|
|
||||||
|
buildInputs = [ qtquickcontrols2 qtserialport qtsvg ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Multi-purpose serial data visualization & processing program";
|
||||||
|
homepage = "https://serial-studio.github.io/";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ sikmir ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
@ -1,2 +1,3 @@
|
|||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
gem 'taskjuggler'
|
gem 'taskjuggler'
|
||||||
|
gem 'webrick'
|
||||||
|
@ -26,12 +26,14 @@ GEM
|
|||||||
timeout (0.3.2)
|
timeout (0.3.2)
|
||||||
tins (1.32.1)
|
tins (1.32.1)
|
||||||
sync
|
sync
|
||||||
|
webrick (1.8.1)
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
ruby
|
x86_64-linux
|
||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
taskjuggler
|
taskjuggler
|
||||||
|
webrick
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.4.12
|
2.4.12
|
||||||
|
@ -127,4 +127,14 @@
|
|||||||
};
|
};
|
||||||
version = "1.32.1";
|
version = "1.32.1";
|
||||||
};
|
};
|
||||||
|
webrick = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "13qm7s0gr2pmfcl7dxrmq38asaza4w0i2n9my4yzs499j731wh8r";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.8.1";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -55,7 +55,7 @@
|
|||||||
buildFun:
|
buildFun:
|
||||||
|
|
||||||
let
|
let
|
||||||
python3WithPackages = python3.withPackages(ps: with ps; [
|
python3WithPackages = python3.pythonForBuild.withPackages(ps: with ps; [
|
||||||
ply jinja2 setuptools
|
ply jinja2 setuptools
|
||||||
]);
|
]);
|
||||||
clangFormatPython3 = fetchurl {
|
clangFormatPython3 = fetchurl {
|
||||||
@ -129,6 +129,7 @@ let
|
|||||||
python3WithPackages perl
|
python3WithPackages perl
|
||||||
which
|
which
|
||||||
llvmPackages.bintools
|
llvmPackages.bintools
|
||||||
|
bison gperf
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
@ -142,7 +143,7 @@ let
|
|||||||
nasm
|
nasm
|
||||||
nspr nss
|
nspr nss
|
||||||
util-linux alsa-lib
|
util-linux alsa-lib
|
||||||
bison gperf libkrb5
|
libkrb5
|
||||||
glib gtk3 dbus-glib
|
glib gtk3 dbus-glib
|
||||||
libXScrnSaver libXcursor libXtst libxshmfence libGLU libGL
|
libXScrnSaver libXcursor libXtst libxshmfence libGLU libGL
|
||||||
mesa # required for libgbm
|
mesa # required for libgbm
|
||||||
@ -314,7 +315,7 @@ let
|
|||||||
|
|
||||||
# This is to ensure expansion of $out.
|
# This is to ensure expansion of $out.
|
||||||
libExecPath="${libExecPath}"
|
libExecPath="${libExecPath}"
|
||||||
${python3}/bin/python3 build/linux/unbundle/replace_gn_files.py --system-libraries ${toString gnSystemLibraries}
|
${python3.pythonForBuild}/bin/python3 build/linux/unbundle/replace_gn_files.py --system-libraries ${toString gnSystemLibraries}
|
||||||
${gnChromium}/bin/gn gen --args=${lib.escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
|
${gnChromium}/bin/gn gen --args=${lib.escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
|
||||||
|
|
||||||
# Fail if `gn gen` contains a WARNING.
|
# Fail if `gn gen` contains a WARNING.
|
||||||
|
@ -7,13 +7,13 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "cloudflared";
|
pname = "cloudflared";
|
||||||
version = "2023.4.1";
|
version = "2023.4.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cloudflare";
|
owner = "cloudflare";
|
||||||
repo = "cloudflared";
|
repo = "cloudflared";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-PG2+rEn3X1EdMUDbfrtfEjYclErMGAGTcP2g7Jz+s1A=";
|
hash = "sha256-oHiaRdTEiTcGQkYoGw8TT0KZMFR8Rkce/4+cxSXAHMM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = null;
|
vendorHash = null;
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "civo";
|
pname = "civo";
|
||||||
version = "1.0.49";
|
version = "1.0.50";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "civo";
|
owner = "civo";
|
||||||
repo = "cli";
|
repo = "cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-j9fnOM7OLnu42LM/LaO/Sw9TJtPFHjAC+QzqywbxKKo=";
|
sha256 = "sha256-w1Ozj9zmeGzuokX0LgHab5TI0WcdtY29n7w4LfOWthI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-7I4V4DVdHSvr/1ic/YT+Vttreg0tFasRNT/aFe4/0OY=";
|
vendorHash = "sha256-7I4V4DVdHSvr/1ic/YT+Vttreg0tFasRNT/aFe4/0OY=";
|
||||||
|
@ -182,11 +182,11 @@
|
|||||||
"vendorHash": "sha256-jOscYbwZ8m4smGiAy2vNhPMTAUnINkpuVRQ8E6LpWVw="
|
"vendorHash": "sha256-jOscYbwZ8m4smGiAy2vNhPMTAUnINkpuVRQ8E6LpWVw="
|
||||||
},
|
},
|
||||||
"buildkite": {
|
"buildkite": {
|
||||||
"hash": "sha256-/LTUDnE5XB8Gwbs+CroJW+3pM7opNSVQFWvRQWQjFqc=",
|
"hash": "sha256-nwGnt/+pSR1rGiXZ1RJIpekT+i0k4ZmMN27VpYCDVU0=",
|
||||||
"homepage": "https://registry.terraform.io/providers/buildkite/buildkite",
|
"homepage": "https://registry.terraform.io/providers/buildkite/buildkite",
|
||||||
"owner": "buildkite",
|
"owner": "buildkite",
|
||||||
"repo": "terraform-provider-buildkite",
|
"repo": "terraform-provider-buildkite",
|
||||||
"rev": "v0.16.0",
|
"rev": "v0.17.0",
|
||||||
"spdx": "MIT",
|
"spdx": "MIT",
|
||||||
"vendorHash": "sha256-ZXjmR1maiiLeWipXGOAGfLEuot9TsrzAX4EPRNQ5Gbo="
|
"vendorHash": "sha256-ZXjmR1maiiLeWipXGOAGfLEuot9TsrzAX4EPRNQ5Gbo="
|
||||||
},
|
},
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
let
|
let
|
||||||
pname = "rambox";
|
pname = "rambox";
|
||||||
version = "2.1.2";
|
version = "2.1.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/ramboxapp/download/releases/download/v${version}/Rambox-${version}-linux-x64.AppImage";
|
url = "https://github.com/ramboxapp/download/releases/download/v${version}/Rambox-${version}-linux-x64.AppImage";
|
||||||
sha256 = "sha256-FeW11prM9wTYA6cELF/qcITbTqJ+B+VVvzcw2W6i/CY=";
|
sha256 = "sha256-wvjCr1U+/1/GtebMNWJjizzegqZ+wWXUrmOshYtMq6o=";
|
||||||
};
|
};
|
||||||
|
|
||||||
desktopItem = (makeDesktopItem {
|
desktopItem = (makeDesktopItem {
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
(if stdenv.isDarwin then darwin.apple_sdk_11_0.clang14Stdenv else stdenv).mkDerivation rec {
|
(if stdenv.isDarwin then darwin.apple_sdk_11_0.clang14Stdenv else stdenv).mkDerivation rec {
|
||||||
pname = "signalbackup-tools";
|
pname = "signalbackup-tools";
|
||||||
version = "20230426";
|
version = "20230429";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bepaald";
|
owner = "bepaald";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-RpPn3QWsCOW1RIucBp5oqR/zwnfIwG+McqAPwo0f5lM=";
|
hash = "sha256-uOZfEZ5Wf+4lz5FxPqsockAIA/um61OZ6mvjj51BGkg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -25,13 +25,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "tangram";
|
pname = "tangram";
|
||||||
version = "2.0";
|
version = "3.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "sonnyp";
|
owner = "sonnyp";
|
||||||
repo = "Tangram";
|
repo = "Tangram";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-ocHE8IztiNm9A1hbzzHXstWpPaOau/IrQ44ccxbsGb0=";
|
hash = "sha256-6QOkvsYFgFFyxnDlA5Xpl3FnsSZOj9ooehCPOmpKe8M=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace src/meson.build --replace "/app/bin/blueprint-compiler" "blueprint-compiler"
|
substituteInPlace src/meson.build --replace "/app/bin/blueprint-compiler" "blueprint-compiler"
|
||||||
substituteInPlace {src/,}re.sonny.Tangram troll/gjspack/bin/gjspack \
|
substituteInPlace src/bin.js troll/gjspack/bin/gjspack \
|
||||||
--replace "#!/usr/bin/env -S gjs -m" "#!${gjs}/bin/gjs -m"
|
--replace "#!/usr/bin/env -S gjs -m" "#!${gjs}/bin/gjs -m"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
, configText ? ""
|
, configText ? ""
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
version = "2206";
|
version = "2303";
|
||||||
|
|
||||||
sysArch =
|
sysArch =
|
||||||
if stdenv.hostPlatform.system == "x86_64-linux" then "x64"
|
if stdenv.hostPlatform.system == "x86_64-linux" then "x64"
|
||||||
@ -19,9 +19,12 @@ let
|
|||||||
|
|
||||||
# For USB support, ensure that /var/run/vmware/<YOUR-UID>
|
# For USB support, ensure that /var/run/vmware/<YOUR-UID>
|
||||||
# exists and is owned by you. Then run vmware-usbarbitrator as root.
|
# exists and is owned by you. Then run vmware-usbarbitrator as root.
|
||||||
bins = [ "vmware-view" "vmware-view-legacy" "vmware-usbarbitrator" ];
|
bins = [
|
||||||
|
"vmware-view"
|
||||||
|
"vmware-usbarbitrator"
|
||||||
|
];
|
||||||
|
|
||||||
mainProgram = "vmware-view-legacy";
|
mainProgram = "vmware-view";
|
||||||
|
|
||||||
# This forces the default GTK theme (Adwaita) because Horizon is prone to
|
# This forces the default GTK theme (Adwaita) because Horizon is prone to
|
||||||
# UI usability issues when using non-default themes, such as Adwaita-dark.
|
# UI usability issues when using non-default themes, such as Adwaita-dark.
|
||||||
@ -36,8 +39,8 @@ let
|
|||||||
pname = "vmware-horizon-files";
|
pname = "vmware-horizon-files";
|
||||||
inherit version;
|
inherit version;
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download3.vmware.com/software/CART23FQ2_LIN_2206_TARBALL/VMware-Horizon-Client-Linux-2206-8.6.0-20094634.tar.gz";
|
url = "https://download3.vmware.com/software/CART24FQ1_LIN_2303_TARBALL/VMware-Horizon-Client-Linux-2303-8.9.0-21435420.tar.gz";
|
||||||
sha256 = "9819eae5708bf0d71156b81283e3a70100e2e22de9db827a8956ca8e83b2414a";
|
sha256 = "a4dcc6afc0be7641e10e922ccbbab0a10adbf8f2a83e4b5372dfba095091fb78";
|
||||||
};
|
};
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
@ -93,6 +96,7 @@ let
|
|||||||
pixman
|
pixman
|
||||||
vmwareHorizonClientFiles
|
vmwareHorizonClientFiles
|
||||||
xorg.libX11
|
xorg.libX11
|
||||||
|
xorg.libXau
|
||||||
xorg.libXcursor
|
xorg.libXcursor
|
||||||
xorg.libXext
|
xorg.libXext
|
||||||
xorg.libXi
|
xorg.libXi
|
||||||
|
@ -7,16 +7,16 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "seaweedfs";
|
pname = "seaweedfs";
|
||||||
version = "3.47";
|
version = "3.48";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "seaweedfs";
|
owner = "seaweedfs";
|
||||||
repo = "seaweedfs";
|
repo = "seaweedfs";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-0RDzTS/bjcXeYBWqRq/oWwI0kEmxYkT6oqCBYRi3dnQ=";
|
hash = "sha256-yD9GZnx4OvzI4Jo5BJPRsZEDeUg9pUxg1cxfCCiS6AU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-oXf+aZxf0jBiOqYzD9mTjYND0LjjQeHIZXIrqcEuyYk=";
|
vendorHash = "sha256-xmo82HgPRnrR53zKfKPadmut/vuNEM9jqbnqj0cTAuM=";
|
||||||
|
|
||||||
subPackages = [ "weed" ];
|
subPackages = [ "weed" ];
|
||||||
|
|
||||||
@ -38,8 +38,13 @@ buildGoModule rec {
|
|||||||
export GODEBUG=http2client=0
|
export GODEBUG=http2client=0
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# There are no tests.
|
preCheck = ''
|
||||||
doCheck = false;
|
# Test all targets.
|
||||||
|
unset subPackages
|
||||||
|
|
||||||
|
# Remove unmaintained tests ahd those that require additional services.
|
||||||
|
rm -rf unmaintained test/s3
|
||||||
|
'';
|
||||||
|
|
||||||
passthru.tests.version = testers.testVersion {
|
passthru.tests.version = testers.testVersion {
|
||||||
package = seaweedfs;
|
package = seaweedfs;
|
||||||
|
54
pkgs/applications/networking/trayscale/default.nix
Normal file
54
pkgs/applications/networking/trayscale/default.nix
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
{ lib
|
||||||
|
, buildGoModule
|
||||||
|
, fetchFromGitHub
|
||||||
|
, pkg-config
|
||||||
|
, wrapGAppsHook4
|
||||||
|
, tailscale
|
||||||
|
, gtk4
|
||||||
|
, gobject-introspection
|
||||||
|
, libadwaita
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildGoModule rec {
|
||||||
|
pname = "trayscale";
|
||||||
|
version = "0.9.6";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "DeedleFake";
|
||||||
|
repo = "trayscale";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-qMQ0WykBHXyXZ6GkDM5l5ki27X1h8rl3sUBooqF3234=";
|
||||||
|
};
|
||||||
|
|
||||||
|
vendorHash = "sha256-K1Za2j4kUtsktFi9DjZYXrtfsWF1r6vIbyocLUrj5IU=";
|
||||||
|
|
||||||
|
subPackages = [ "cmd/trayscale" ];
|
||||||
|
|
||||||
|
ldflags = [
|
||||||
|
"-s"
|
||||||
|
"-w"
|
||||||
|
"-X=deedles.dev/trayscale/internal/version.version=${version}"
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkg-config gobject-introspection wrapGAppsHook4 ];
|
||||||
|
buildInputs = [ gtk4 libadwaita ];
|
||||||
|
|
||||||
|
# there are no actual tests, and it takes 20 minutes to rebuild
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
sh ./dist.sh install $out
|
||||||
|
glib-compile-schemas $out/share/glib-2.0/schemas
|
||||||
|
'';
|
||||||
|
|
||||||
|
preFixup = ''
|
||||||
|
gappsWrapperArgs+=(--prefix PATH : "${tailscale}/bin")
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "An unofficial GUI wrapper around the Tailscale CLI client";
|
||||||
|
homepage = "https://github.com/DeedleFake/trayscale";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ k900 ];
|
||||||
|
};
|
||||||
|
}
|
@ -8,6 +8,7 @@
|
|||||||
, qtxmlpatterns
|
, qtxmlpatterns
|
||||||
, qtwebengine
|
, qtwebengine
|
||||||
, qca-qt5
|
, qca-qt5
|
||||||
|
, qtnetworkauth
|
||||||
# KDE
|
# KDE
|
||||||
, ki18n
|
, ki18n
|
||||||
, kxmlgui
|
, kxmlgui
|
||||||
@ -28,13 +29,13 @@
|
|||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "kbibtex";
|
pname = "kbibtex";
|
||||||
version = "0.9.3.2";
|
version = "0.10.0";
|
||||||
|
|
||||||
src = let
|
src = let
|
||||||
majorMinorPatch = lib.concatStringsSep "." (lib.take 3 (lib.splitVersion version));
|
majorMinorPatch = lib.concatStringsSep "." (lib.take 3 (lib.splitVersion version));
|
||||||
in fetchurl {
|
in fetchurl {
|
||||||
url = "mirror://kde/stable/KBibTeX/${majorMinorPatch}/kbibtex-${version}.tar.xz";
|
url = "mirror://kde/stable/KBibTeX/${majorMinorPatch}/kbibtex-${version}.tar.xz";
|
||||||
hash = "sha256-BzPCTKMiMnzz2S+jbk4ZbEudyJX5EaTDVY59te/AxFc=";
|
hash = "sha256-sSeyQKfNd8U4YZ3IgqOZs8bM13oEQopJevkG8U0JuMQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
@ -46,6 +47,7 @@ mkDerivation rec {
|
|||||||
qtxmlpatterns
|
qtxmlpatterns
|
||||||
qtwebengine
|
qtwebengine
|
||||||
qca-qt5
|
qca-qt5
|
||||||
|
qtnetworkauth
|
||||||
# TODO qtoauth
|
# TODO qtoauth
|
||||||
ki18n
|
ki18n
|
||||||
kxmlgui
|
kxmlgui
|
||||||
@ -72,5 +74,6 @@ mkDerivation rec {
|
|||||||
changelog = "https://invent.kde.org/office/kbibtex/-/raw/v${version}/ChangeLog";
|
changelog = "https://invent.kde.org/office/kbibtex/-/raw/v${version}/ChangeLog";
|
||||||
license = licenses.gpl2Plus;
|
license = licenses.gpl2Plus;
|
||||||
maintainers = with maintainers; [ dotlambda ];
|
maintainers = with maintainers; [ dotlambda ];
|
||||||
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "kitsas";
|
pname = "kitsas";
|
||||||
version = "4.0.3";
|
version = "4.0.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "artoh";
|
owner = "artoh";
|
||||||
repo = "kitupiikki";
|
repo = "kitupiikki";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-7s21++sA4enZFuDVUEAbn7InpyLx6BOwrFdsUzHWK0M=";
|
hash = "sha256-ODl1yrtrCVhuBWbA1AvHl22d+JSdySG/Gi2hlpVW3jg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
desktopItem = makeDesktopItem {
|
desktopItem = makeDesktopItem {
|
||||||
name = "zotero-${version}";
|
name = "zotero";
|
||||||
exec = "zotero -url %U";
|
exec = "zotero -url %U";
|
||||||
icon = "zotero";
|
icon = "zotero";
|
||||||
comment = meta.description;
|
comment = meta.description;
|
||||||
|
@ -8,12 +8,12 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "1.4.7";
|
version = "1.4.8";
|
||||||
pname = "flrig";
|
pname = "flrig";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz";
|
url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz";
|
||||||
sha256 = "sha256-RzyeJf3T1vKTlyU/EMXFY+ObkqKq7wJyBB8ZeKMOO1M=";
|
sha256 = "sha256-7aqjNbcAE1ATb5Zl+ziVb7O86nqlFwdpsYm9RoX51rg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "minimap2";
|
pname = "minimap2";
|
||||||
version = "2.24";
|
version = "2.25";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
repo = pname;
|
repo = pname;
|
||||||
owner = "lh3";
|
owner = "lh3";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-sEp7/Y5ifV9LTqrkhlkfykTJYMMuc+VtF7PvmIpBxUw=";
|
sha256 = "sha256-9X2wYoUH11Ys4uPArwyGsXuQLQaAwtNV/pnO9yd7Oiw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ zlib ];
|
buildInputs = [ zlib ];
|
||||||
|
1922
pkgs/applications/system/asusctl/Cargo.lock
generated
1922
pkgs/applications/system/asusctl/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -13,32 +13,31 @@
|
|||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "asusctl";
|
pname = "asusctl";
|
||||||
version = "4.5.8";
|
version = "4.6.2";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "asus-linux";
|
owner = "asus-linux";
|
||||||
repo = "asusctl";
|
repo = "asusctl";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-6AitRpyLIq5by9/rXdIC8AChMVKZmR1Eo5GTo+DtGhc=";
|
hash = "sha256-qfl8MUSHjqlSnsaudoRD9fY5TM9zgy7L7DA+pctn/nc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
cargoHash = "";
|
||||||
cargoLock = {
|
cargoLock = {
|
||||||
lockFile = ./Cargo.lock;
|
lockFile = ./Cargo.lock;
|
||||||
outputHashes = {
|
outputHashes = {
|
||||||
"ecolor-0.20.0" = "sha256-tnjFkaCWmCPGw3huQN9VOAeiH+zk3Zk9xYoRKmg2WQg=";
|
"ecolor-0.21.0" = "sha256-m7eHX6flwO21umtx3dnIuVUnNsEs3ZCyOk5Vvp/lVfI=";
|
||||||
"notify-rust-4.6.0" = "sha256-jhCgisA9f6AI9e9JQUYRtEt47gQnDv5WsdRKFoKvHJs=";
|
"notify-rust-4.6.0" = "sha256-jhCgisA9f6AI9e9JQUYRtEt47gQnDv5WsdRKFoKvHJs=";
|
||||||
"supergfxctl-5.0.2" = "sha256-zp92mWyWUEWUP4kEyHbiUyYTtp2kLv+gxkPzOu77fi8=";
|
"supergfxctl-5.1.1" = "sha256-AThaZ9dp5T/DtLPE6gZ9qgkw0xksiq+VCL9Y4G41voE=";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
files="
|
files="
|
||||||
daemon/src/config.rs
|
|
||||||
daemon/src/ctrl_anime/config.rs
|
|
||||||
daemon-user/src/daemon.rs
|
daemon-user/src/daemon.rs
|
||||||
daemon-user/src/ctrl_anime.rs
|
daemon-user/src/config.rs
|
||||||
daemon-user/src/user_config.rs
|
|
||||||
rog-control-center/src/main.rs
|
rog-control-center/src/main.rs
|
||||||
|
rog-aura/src/aura_detection.rs
|
||||||
"
|
"
|
||||||
for file in $files; do
|
for file in $files; do
|
||||||
substituteInPlace $file --replace /usr/share $out/share
|
substituteInPlace $file --replace /usr/share $out/share
|
||||||
@ -63,23 +62,7 @@ rustPlatform.buildRustPackage rec {
|
|||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
install -Dm444 -t $out/share/dbus-1/system.d/ data/asusd.conf
|
make prefix=$out install-data
|
||||||
install -Dm444 -t $out/share/rog-gui/layouts/ rog-aura/data/layouts/*
|
|
||||||
|
|
||||||
install -Dm444 -t $out/share/applications/ rog-control-center/data/rog-control-center.desktop
|
|
||||||
install -Dm444 -t $out/share/icons/hicolor/512x512/apps/ rog-control-center/data/rog-control-center.png data/icons/asus_notif_*
|
|
||||||
install -Dm444 -t $out/share/icons/hicolor/scalable/status/ data/icons/scalable/*
|
|
||||||
|
|
||||||
install -Dm444 -t $out/share/asusd/anime/asus/rog/ rog-anime/data/anime/asus/rog/Sunset.gif
|
|
||||||
install -Dm444 -t $out/share/asusd/anime/asus/gaming/ rog-anime/data/anime/asus/gaming/Controller.gif
|
|
||||||
install -Dm444 -t $out/share/asusd/anime/custom/ rog-anime/data/anime/custom/*
|
|
||||||
|
|
||||||
install -Dm444 -t $out/share/asusd/data/ data/asusd-ledmodes.toml
|
|
||||||
|
|
||||||
install -Dm444 data/asusd.rules $out/lib/udev/rules.d/99-asusd.rules
|
|
||||||
install -Dm444 -t $out/share/dbus-1/system.d/ data/asusd.conf
|
|
||||||
install -Dm444 -t $out/lib/systemd/system/ data/asusd.service
|
|
||||||
install -Dm444 -t $out/lib/systemd/user/ data/asusd-user.service
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
|
@ -1,22 +1,33 @@
|
|||||||
{ lib
|
{ lib
|
||||||
, rustPlatform
|
, rustPlatform
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
|
, fetchpatch
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, systemd
|
, systemd
|
||||||
}:
|
}:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "supergfxctl";
|
pname = "supergfxctl";
|
||||||
version = "5.0.1";
|
version = "5.1.1";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "asus-linux";
|
owner = "asus-linux";
|
||||||
repo = "supergfxctl";
|
repo = "supergfxctl";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-4q+7F8s6y+oDkBUKIBBsXZ2EtADcChdnjmABjBUnH9k=";
|
hash = "sha256-AThaZ9dp5T/DtLPE6gZ9qgkw0xksiq+VCL9Y4G41voE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-nfs9sUq9569qXsC7JYMzrRPdQQm/l4HZANlG7827K8o=";
|
# fix reported version in Cargo.lock
|
||||||
|
# submitted upstream: https://gitlab.com/asus-linux/supergfxctl/-/merge_requests/31
|
||||||
|
# FIXME: remove for next update
|
||||||
|
cargoPatches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://gitlab.com/asus-linux/supergfxctl/-/commit/8812dd208791d162881d72f785650a3344ec5151.diff";
|
||||||
|
hash = "sha256-eFFj2nIwGXHV1vMIpZvdvFPtfNLDfgqyGRt+VvB03LE=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
cargoSha256 = "sha256-gbRGUWfpCQjCxuTdQ+qwOeCDU17G3nNFkIPAgzmeL+E=";
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace data/supergfxd.service --replace /usr/bin/supergfxd $out/bin/supergfxd
|
substituteInPlace data/supergfxd.service --replace /usr/bin/supergfxd $out/bin/supergfxd
|
||||||
|
@ -2,22 +2,16 @@
|
|||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "git-cola";
|
pname = "git-cola";
|
||||||
version = "4.1.0";
|
version = "4.2.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "git-cola";
|
owner = "git-cola";
|
||||||
repo = "git-cola";
|
repo = "git-cola";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-s+acQo9b+ZQ31qXBf0m8ajXYuYEQzNybmX9nw+c0DQY=";
|
hash = "sha256-VAn4zXypOugPIVyXQ/8Yt0rCDM7hVdIY+jpmoTHqssU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# TODO: remove in the next release since upstream removed pytest-flake8
|
buildInputs = [ qt5.qtwayland ];
|
||||||
# https://github.com/git-cola/git-cola/commit/6c5c5c6c888ee1a095fc1ca5521af9a03b833205
|
|
||||||
postPatch = ''
|
|
||||||
substituteInPlace pytest.ini \
|
|
||||||
--replace "--flake8" ""
|
|
||||||
'';
|
|
||||||
|
|
||||||
propagatedBuildInputs = with python3Packages; [ git pyqt5 qtpy send2trash ];
|
propagatedBuildInputs = with python3Packages; [ git pyqt5 qtpy send2trash ];
|
||||||
nativeBuildInputs = [ gettext qt5.wrapQtAppsHook ];
|
nativeBuildInputs = [ gettext qt5.wrapQtAppsHook ];
|
||||||
nativeCheckInputs = with python3Packages; [ git pytestCheckHook ];
|
nativeCheckInputs = with python3Packages; [ git pytestCheckHook ];
|
||||||
|
@ -28,7 +28,7 @@ assert sendEmailSupport -> perlSupport;
|
|||||||
assert svnSupport -> perlSupport;
|
assert svnSupport -> perlSupport;
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "2.40.0";
|
version = "2.40.1";
|
||||||
svn = subversionClient.override { perlBindings = perlSupport; };
|
svn = subversionClient.override { perlBindings = perlSupport; };
|
||||||
gitwebPerlLibs = with perlPackages; [ CGI HTMLParser CGIFast FCGI FCGIProcManager HTMLTagCloud ];
|
gitwebPerlLibs = with perlPackages; [ CGI HTMLParser CGIFast FCGI FCGIProcManager HTMLTagCloud ];
|
||||||
in
|
in
|
||||||
@ -41,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
|
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
|
||||||
hash = "sha256-sXpZj79Ycp7xO1d0ZeuTstSE3xIBUYtwi1BE/2I79G0=";
|
hash = "sha256-SJO4uY7vyf3EsOfKJJ40AAT6p4BKQz0XQp4xHh/vIdI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" ] ++ lib.optional withManual "doc";
|
outputs = [ "out" ] ++ lib.optional withManual "doc";
|
||||||
|
@ -5,12 +5,12 @@
|
|||||||
}: stdenv.mkDerivation rec {
|
}: stdenv.mkDerivation rec {
|
||||||
|
|
||||||
pname = "vdr";
|
pname = "vdr";
|
||||||
version = "2.6.3";
|
version = "2.6.4";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "git://git.tvdr.de/vdr.git";
|
url = "git://git.tvdr.de/vdr.git";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-SDaNk8tDaO70+V7sozMGTCzpnOqa52xdEQPURkyuTt8=";
|
sha256 = "sha256-QCq+IxulrxDX+fzI+IHywboemJQnUfZrHRzP6B9qfvk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -15,16 +15,16 @@
|
|||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "youtube-tui";
|
pname = "youtube-tui";
|
||||||
version = "0.7.0";
|
version = "0.7.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Siriusmart";
|
owner = "Siriusmart";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-YQj+hmNh8rqP7bKeFDQhZIf79WG7vqg31oReb0jrmg4=";
|
hash = "sha256-Dhdtdc8LmTeg9cxKPfdxRowTsAaJXKtvJXqJHK1t3P4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-qcWuh8qaOQBBebdX3D01k5yXZfifbFC+ZP0d6bJeOr0=";
|
cargoHash = "sha256-hT3Ygn0zcQdU1iU22e5SP5ZF6S6GiZzWieBsCqViN8Y=";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
pkg-config
|
pkg-config
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "amazon-ecs-agent";
|
pname = "amazon-ecs-agent";
|
||||||
version = "1.70.2";
|
version = "1.71.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
owner = "aws";
|
owner = "aws";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
hash = "sha256-52Ty7g8SnhYAgYsE9mpmRmg4T6QifjWDIwNnJZBSPMk=";
|
hash = "sha256-+/aeLI1+VE80NdeAqc7ctZsS6i0Ymj/GXssduP8X//c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = null;
|
vendorHash = null;
|
||||||
|
26
pkgs/applications/window-managers/i3/cycle-focus.nix
Normal file
26
pkgs/applications/window-managers/i3/cycle-focus.nix
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
{ lib
|
||||||
|
, fetchFromGitHub
|
||||||
|
, rustPlatform
|
||||||
|
}:
|
||||||
|
|
||||||
|
rustPlatform.buildRustPackage {
|
||||||
|
pname = "i3-cycle-focus";
|
||||||
|
version = "unstable-2021-09-27";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "TheDoctor314";
|
||||||
|
repo = "i3-cycle-focus";
|
||||||
|
rev = "d94f22e4b8502de4ed846a211fa0c8418b3e3e89";
|
||||||
|
hash = "sha256-caZKvxOqoYgPs+Zjltj8K0/ospjkLnA4kh0rsTjeU3Y=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoHash = "sha256-9glaxThm/ovgvUWCyrycS/Oe5t8iN5P38fF5vO5awQE=";
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "A simple tool to cyclically switch between the windows on the active workspace";
|
||||||
|
homepage = "https://github.com/TheDoctor314/i3-cycle-focus";
|
||||||
|
license = licenses.unlicense;
|
||||||
|
maintainers = with maintainers; [ GaetanLepage ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
@ -15,16 +15,16 @@
|
|||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "i3status-rust";
|
pname = "i3status-rust";
|
||||||
version = "0.31.0";
|
version = "0.31.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "greshake";
|
owner = "greshake";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-xOwzNQGoa5rOEZnIt8738aGTHSWvgzN17TSc3hi+fcE=";
|
hash = "sha256-nAwAQUjoKeGaTixTdk9yIgdy4+j6t6cbvH4NpBdSyns=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-rZmqyIe/FUIard35NFr5W/18t1auSYdAV54dlEprnm8=";
|
cargoHash = "sha256-/Z6HKOMIhQm52MlPty8ED9QPPJcM7juDpQQKgJVozyU=";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config makeWrapper ];
|
nativeBuildInputs = [ pkg-config makeWrapper ];
|
||||||
|
|
||||||
|
@ -36,10 +36,14 @@ _separateDebugInfo() {
|
|||||||
# architecture than we're building for. (This happens with
|
# architecture than we're building for. (This happens with
|
||||||
# firmware blobs in QEMU.)
|
# firmware blobs in QEMU.)
|
||||||
(
|
(
|
||||||
|
if [ -f "$dst/${id:0:2}/${id:2}.debug" ]
|
||||||
|
then
|
||||||
|
echo "separate-debug-info: warning: multiple files with build id $id found, overwriting"
|
||||||
|
fi
|
||||||
$OBJCOPY --only-keep-debug "$i" "$dst/${id:0:2}/${id:2}.debug"
|
$OBJCOPY --only-keep-debug "$i" "$dst/${id:0:2}/${id:2}.debug"
|
||||||
|
|
||||||
# Also a create a symlink <original-name>.debug.
|
# Also a create a symlink <original-name>.debug.
|
||||||
ln -sfn ".build-id/${id:0:2}/${id:2}.debug" "$dst/../$(basename "$i")"
|
ln -sfn ".build-id/${id:0:2}/${id:2}.debug" "$dst/../$(basename "$i")"
|
||||||
) || rmdir -p "$dst/${id:0:2}"
|
) || rmdir -p "$dst/${id:0:2}"
|
||||||
done < <(find "$prefix" -type f -print0)
|
done < <(find "$prefix" -type f -print0 | sort -z)
|
||||||
}
|
}
|
||||||
|
@ -55,16 +55,16 @@ assert (extraParameters != null) -> set != null;
|
|||||||
|
|
||||||
buildNpmPackage rec {
|
buildNpmPackage rec {
|
||||||
pname = if set != null then "iosevka-${set}" else "iosevka";
|
pname = if set != null then "iosevka-${set}" else "iosevka";
|
||||||
version = "22.0.2";
|
version = "22.1.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "be5invis";
|
owner = "be5invis";
|
||||||
repo = "iosevka";
|
repo = "iosevka";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-cBIcf6GEJnkOvKPMWTb9dWqN9uPs4ynr6tLc7+B6f3k=";
|
hash = "sha256-aq8IKWGOOYf83ed5Z10/B+42SsI7JY5ED3AwAlk/24k=";
|
||||||
};
|
};
|
||||||
|
|
||||||
npmDepsHash = "sha256-tLdJuDFVPdnEtHdGdU7G6N+LIiINVVB5/NNFaeveK/U=";
|
npmDepsHash = "sha256-6zt7q5aGb6jaa6YBr4HqawZjf2jqNnR9xQM/abKpT04=";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
remarshal
|
remarshal
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "mobile-broadband-provider-info";
|
pname = "mobile-broadband-provider-info";
|
||||||
version = "20221107";
|
version = "20230416";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/${pname}/${version}/${pname}-${version}.tar.xz";
|
url = "mirror://gnome/sources/${pname}/${version}/${pname}-${version}.tar.xz";
|
||||||
sha256 = "sha256-2TOSVmw0epbu2V2oxmpdoN2U9BFc+zowX/JoLGTP2BA=";
|
sha256 = "sha256-4+FAqi23abKZ0d+GqJDpSKuZ1NOIMTAsRS0ft/hWiuw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -26,13 +26,13 @@ lib.checkListOfEnum "${pname}: theme tweaks" validTweaks tweaks
|
|||||||
stdenvNoCC.mkDerivation
|
stdenvNoCC.mkDerivation
|
||||||
rec {
|
rec {
|
||||||
inherit pname;
|
inherit pname;
|
||||||
version = "2024-04-08";
|
version = "2023-04-08";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
repo = "Orchis-theme";
|
repo = "Orchis-theme";
|
||||||
owner = "vinceliuice";
|
owner = "vinceliuice";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-1Yatb5BeRLu4kWm+EAiRYPvGxRNeIo63SAN3/Dp7Na8=";
|
hash = "sha256-/X4Hr2M/7pf6JxTUvPoG5VkQd+rweEPeTNe9glSLh78=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ gtk3 sassc ];
|
nativeBuildInputs = [ gtk3 sassc ];
|
||||||
|
57
pkgs/desktops/deepin/core/dde-gsettings-schemas/default.nix
Normal file
57
pkgs/desktops/deepin/core/dde-gsettings-schemas/default.nix
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, runCommand
|
||||||
|
, glib
|
||||||
|
, gtk3
|
||||||
|
, dtkcommon
|
||||||
|
, dde-dock
|
||||||
|
, startdde
|
||||||
|
, dde-launcher
|
||||||
|
, dde-session-shell
|
||||||
|
, dde-session-ui
|
||||||
|
, dde-control-center
|
||||||
|
, dde-file-manager
|
||||||
|
, deepin-desktop-schemas
|
||||||
|
, deepin-movie-reborn
|
||||||
|
, deepin-screen-recorder
|
||||||
|
, deepin-system-monitor
|
||||||
|
, extraGSettingsOverrides ? ""
|
||||||
|
, extraGSettingsOverridePackages ? [ ]
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
gsettingsOverridePackages = [
|
||||||
|
dtkcommon
|
||||||
|
dde-dock
|
||||||
|
startdde
|
||||||
|
dde-launcher
|
||||||
|
dde-session-shell
|
||||||
|
dde-session-ui
|
||||||
|
dde-control-center
|
||||||
|
dde-file-manager
|
||||||
|
deepin-desktop-schemas
|
||||||
|
deepin-movie-reborn
|
||||||
|
deepin-screen-recorder
|
||||||
|
deepin-system-monitor
|
||||||
|
] ++ extraGSettingsOverridePackages;
|
||||||
|
|
||||||
|
in
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
# TODO: Having https://github.com/NixOS/nixpkgs/issues/54150 would supersede this
|
||||||
|
runCommand "nixos-gsettings-desktop-schemas" { }
|
||||||
|
''
|
||||||
|
schema_dir=$out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
|
||||||
|
|
||||||
|
mkdir -p $schema_dir
|
||||||
|
|
||||||
|
${concatMapStrings (pkg: "cp -rvf ${glib.getSchemaPath pkg}/* $schema_dir\n") gsettingsOverridePackages}
|
||||||
|
|
||||||
|
chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
|
||||||
|
|
||||||
|
cat - > $schema_dir/nixos-defaults.gschema.override <<- EOF
|
||||||
|
${extraGSettingsOverrides}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
${glib.dev}/bin/glib-compile-schemas $schema_dir
|
||||||
|
''
|
@ -37,6 +37,7 @@ let
|
|||||||
dde-session-ui = callPackage ./core/dde-session-ui { };
|
dde-session-ui = callPackage ./core/dde-session-ui { };
|
||||||
dde-polkit-agent = callPackage ./core/dde-polkit-agent { };
|
dde-polkit-agent = callPackage ./core/dde-polkit-agent { };
|
||||||
dpa-ext-gnomekeyring = callPackage ./core/dpa-ext-gnomekeyring { };
|
dpa-ext-gnomekeyring = callPackage ./core/dpa-ext-gnomekeyring { };
|
||||||
|
dde-gsettings-schemas = callPackage ./core/dde-gsettings-schemas { };
|
||||||
|
|
||||||
#### Dtk Application
|
#### Dtk Application
|
||||||
deepin-album = callPackage ./apps/deepin-album { };
|
deepin-album = callPackage ./apps/deepin-album { };
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
|
, fetchpatch2
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, gtk3
|
, gtk3
|
||||||
, vala
|
, vala
|
||||||
@ -54,6 +55,19 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "SJFm+H3Z0pAR9eW3lpTyWItHP34ZHFnOkBPIyODjY+c=";
|
sha256 = "SJFm+H3Z0pAR9eW3lpTyWItHP34ZHFnOkBPIyODjY+c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix build with Vala 0.56.7 & 0.57+
|
||||||
|
# https://hydra.nixos.org/build/217892787
|
||||||
|
(fetchpatch2 {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/geary/-/commit/4a7ca820b1d3d6130fedf254dc5b4cd7efb58f2c.patch";
|
||||||
|
sha256 = "L63TMOkxTYu8jxX+IIc9owoa1TBmaeGXgW+8gfMtFw4=";
|
||||||
|
})
|
||||||
|
(fetchpatch2 {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/geary/-/commit/10f9c133a2ad515127d65f3bba13a0d91b75f4af.patch";
|
||||||
|
sha256 = "0yohy+FZyHW4MkImLQYNlcZyMekH7mXvO2yEuAm3fXw=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
appstream-glib
|
appstream-glib
|
||||||
desktop-file-utils
|
desktop-file-utils
|
||||||
|
@ -21,9 +21,9 @@
|
|||||||
let unwrapped = mkXfceDerivation {
|
let unwrapped = mkXfceDerivation {
|
||||||
category = "xfce";
|
category = "xfce";
|
||||||
pname = "thunar";
|
pname = "thunar";
|
||||||
version = "4.18.4";
|
version = "4.18.6";
|
||||||
|
|
||||||
sha256 = "sha256-tdk0sWUzTmYXk+dOPVOpjmODpqmhzQc9jAOCk2+yNKM=";
|
sha256 = "sha256-7SWpIBGm/YhnQSWYi5BgYjx8WCiEqxZRTagz/cY0p3E=";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
docbook_xsl
|
docbook_xsl
|
||||||
|
@ -1,17 +1,27 @@
|
|||||||
{ lib, stdenv, fetchurl, pkg-config, intltool, libxfce4util, xfce4-panel,
|
{ lib
|
||||||
libxfce4ui, gtk3, exo, gitUpdater }:
|
, stdenv
|
||||||
|
, fetchurl
|
||||||
|
, pkg-config
|
||||||
|
, intltool
|
||||||
|
, libxfce4util
|
||||||
|
, xfce4-panel
|
||||||
|
, libxfce4ui
|
||||||
|
, glib
|
||||||
|
, gtk3
|
||||||
|
, gitUpdater
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
category = "panel-plugins";
|
category = "panel-plugins";
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "xfce4-mpc-plugin";
|
pname = "xfce4-mpc-plugin";
|
||||||
version = "0.5.2";
|
version = "0.5.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
|
url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
|
||||||
sha256 = "sha256-7v54t7a5UxKzpSgUt/Yy3JKXDBs+lTXeYWMVdJv2d2A=";
|
sha256 = "sha256-BGf7TRrNmC08PguJy0EBmUaFBST/Ge0PZYqNVse3Zk0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
@ -23,8 +33,8 @@ stdenv.mkDerivation rec {
|
|||||||
libxfce4util
|
libxfce4util
|
||||||
libxfce4ui
|
libxfce4ui
|
||||||
xfce4-panel
|
xfce4-panel
|
||||||
|
glib
|
||||||
gtk3
|
gtk3
|
||||||
exo
|
|
||||||
];
|
];
|
||||||
|
|
||||||
passthru.updateScript = gitUpdater {
|
passthru.updateScript = gitUpdater {
|
||||||
|
@ -1,14 +1,27 @@
|
|||||||
{ lib, mkXfceDerivation, gtk3, libxfce4ui, libxfce4util, xfce4-panel, xfconf }:
|
{ lib
|
||||||
|
, mkXfceDerivation
|
||||||
|
, glib
|
||||||
|
, gtk3
|
||||||
|
, libxfce4ui
|
||||||
|
, libxfce4util
|
||||||
|
, xfce4-panel
|
||||||
|
}:
|
||||||
|
|
||||||
mkXfceDerivation {
|
mkXfceDerivation {
|
||||||
category = "panel-plugins";
|
category = "panel-plugins";
|
||||||
pname = "xfce4-netload-plugin";
|
pname = "xfce4-netload-plugin";
|
||||||
version = "1.4.0";
|
version = "1.4.1";
|
||||||
rev-prefix = "xfce4-netload-plugin-";
|
rev-prefix = "xfce4-netload-plugin-";
|
||||||
odd-unstable = false;
|
odd-unstable = false;
|
||||||
sha256 = "sha256-HasaMymMCPidYkaAUK4gvD+Ka7NJdFOTeq43gJ1G3jo=";
|
sha256 = "sha256-PwbyYi9EeSTKilVXlbseY2zkabcL7o2CGnk2DFFVI94=";
|
||||||
|
|
||||||
buildInputs = [ gtk3 libxfce4ui libxfce4util xfce4-panel xfconf ];
|
buildInputs = [
|
||||||
|
glib
|
||||||
|
gtk3
|
||||||
|
libxfce4ui
|
||||||
|
libxfce4util
|
||||||
|
xfce4-panel
|
||||||
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Internet load speed plugin for Xfce4 panel";
|
description = "Internet load speed plugin for Xfce4 panel";
|
||||||
|
@ -56,7 +56,7 @@ with builtins;
|
|||||||
|
|
||||||
let majorVersion = "12";
|
let majorVersion = "12";
|
||||||
version = "${majorVersion}.2.0";
|
version = "${majorVersion}.2.0";
|
||||||
disableBootstrap = !stdenv.hostPlatform.isDarwin;
|
disableBootstrap = !stdenv.hostPlatform.isDarwin && !profiledCompiler;
|
||||||
|
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
||||||
|
|
||||||
@ -288,6 +288,8 @@ lib.pipe (stdenv.mkDerivation ({
|
|||||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||||
|
|
||||||
buildFlags =
|
buildFlags =
|
||||||
|
# we do not yet have Nix-driven profiling
|
||||||
|
assert profiledCompiler -> !disableBootstrap;
|
||||||
let target =
|
let target =
|
||||||
lib.optionalString (profiledCompiler) "profiled" +
|
lib.optionalString (profiledCompiler) "profiled" +
|
||||||
lib.optionalString (targetPlatform == hostPlatform && hostPlatform == buildPlatform && !disableBootstrap) "bootstrap";
|
lib.optionalString (targetPlatform == hostPlatform && hostPlatform == buildPlatform && !disableBootstrap) "bootstrap";
|
||||||
|
@ -36,9 +36,14 @@ let
|
|||||||
"-DSPHINX_OUTPUT_MAN=ON"
|
"-DSPHINX_OUTPUT_MAN=ON"
|
||||||
"-DSPHINX_OUTPUT_HTML=OFF"
|
"-DSPHINX_OUTPUT_HTML=OFF"
|
||||||
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
|
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
|
||||||
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
|
||||||
"-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
|
"-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
|
||||||
"-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
|
"-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
|
||||||
|
# Added in LLVM15:
|
||||||
|
# `clang-tidy-confusable-chars-gen`: https://github.com/llvm/llvm-project/commit/c3574ef739fbfcc59d405985a3a4fa6f4619ecdb
|
||||||
|
# `clang-pseudo-gen`: https://github.com/llvm/llvm-project/commit/cd2292ef824591cc34cc299910a3098545c840c7
|
||||||
|
"-DCLANG_TIDY_CONFUSABLE_CHARS_GEN=${buildLlvmTools.libclang.dev}/bin/clang-tidy-confusable-chars-gen"
|
||||||
|
"-DCLANG_PSEUDO_GEN=${buildLlvmTools.libclang.dev}/bin/clang-pseudo-gen"
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
@ -60,6 +65,12 @@ let
|
|||||||
|
|
||||||
outputs = [ "out" "lib" "dev" "python" ];
|
outputs = [ "out" "lib" "dev" "python" ];
|
||||||
|
|
||||||
|
env = lib.optionalAttrs (stdenv.buildPlatform != stdenv.hostPlatform) {
|
||||||
|
# The following warning is triggered with (at least) gcc >=
|
||||||
|
# 12, but appears to occur only for cross compiles.
|
||||||
|
NIX_CFLAGS_COMPILE = "-Wno-maybe-uninitialized";
|
||||||
|
};
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
ln -sv $out/bin/clang $out/bin/cpp
|
ln -sv $out/bin/clang $out/bin/cpp
|
||||||
|
|
||||||
@ -80,7 +91,7 @@ let
|
|||||||
patchShebangs $python/bin
|
patchShebangs $python/bin
|
||||||
|
|
||||||
mkdir -p $dev/bin
|
mkdir -p $dev/bin
|
||||||
cp bin/clang-tblgen $dev/bin
|
cp bin/{clang-tblgen,clang-tidy-confusable-chars-gen,clang-pseudo-gen} $dev/bin
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
|
@ -36,9 +36,14 @@ let
|
|||||||
"-DSPHINX_OUTPUT_MAN=ON"
|
"-DSPHINX_OUTPUT_MAN=ON"
|
||||||
"-DSPHINX_OUTPUT_HTML=OFF"
|
"-DSPHINX_OUTPUT_HTML=OFF"
|
||||||
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
|
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
|
||||||
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
|
||||||
"-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
|
"-DLLVM_TABLEGEN_EXE=${buildLlvmTools.llvm}/bin/llvm-tblgen"
|
||||||
"-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
|
"-DCLANG_TABLEGEN=${buildLlvmTools.libclang.dev}/bin/clang-tblgen"
|
||||||
|
# Added in LLVM15:
|
||||||
|
# `clang-tidy-confusable-chars-gen`: https://github.com/llvm/llvm-project/commit/c3574ef739fbfcc59d405985a3a4fa6f4619ecdb
|
||||||
|
# `clang-pseudo-gen`: https://github.com/llvm/llvm-project/commit/cd2292ef824591cc34cc299910a3098545c840c7
|
||||||
|
"-DCLANG_TIDY_CONFUSABLE_CHARS_GEN=${buildLlvmTools.libclang.dev}/bin/clang-tidy-confusable-chars-gen"
|
||||||
|
"-DCLANG_PSEUDO_GEN=${buildLlvmTools.libclang.dev}/bin/clang-pseudo-gen"
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
@ -60,6 +65,12 @@ let
|
|||||||
|
|
||||||
outputs = [ "out" "lib" "dev" "python" ];
|
outputs = [ "out" "lib" "dev" "python" ];
|
||||||
|
|
||||||
|
env = lib.optionalAttrs (stdenv.buildPlatform != stdenv.hostPlatform) {
|
||||||
|
# The following warning is triggered with (at least) gcc >=
|
||||||
|
# 12, but appears to occur only for cross compiles.
|
||||||
|
NIX_CFLAGS_COMPILE = "-Wno-maybe-uninitialized";
|
||||||
|
};
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
ln -sv $out/bin/clang $out/bin/cpp
|
ln -sv $out/bin/clang $out/bin/cpp
|
||||||
|
|
||||||
@ -80,7 +91,7 @@ let
|
|||||||
patchShebangs $python/bin
|
patchShebangs $python/bin
|
||||||
|
|
||||||
mkdir -p $dev/bin
|
mkdir -p $dev/bin
|
||||||
cp bin/clang-tblgen $dev/bin
|
cp bin/{clang-tblgen,clang-tidy-confusable-chars-gen,clang-pseudo-gen} $dev/bin
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
|
@ -1,73 +0,0 @@
|
|||||||
# New rust versions should first go to staging.
|
|
||||||
# Things to check after updating:
|
|
||||||
# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
|
|
||||||
# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
|
|
||||||
# This testing can be also done by other volunteers as part of the pull
|
|
||||||
# request review, in case platforms cannot be covered.
|
|
||||||
# 2. The LLVM version used for building should match with rust upstream.
|
|
||||||
# Check the version number in the src/llvm-project git submodule in:
|
|
||||||
# https://github.com/rust-lang/rust/blob/<version-tag>/.gitmodules
|
|
||||||
# 3. Firefox and Thunderbird should still build on x86_64-linux.
|
|
||||||
|
|
||||||
{ stdenv, lib
|
|
||||||
, buildPackages
|
|
||||||
, newScope, callPackage
|
|
||||||
, CoreFoundation, Security, SystemConfiguration
|
|
||||||
, pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost
|
|
||||||
, makeRustPlatform
|
|
||||||
, llvmPackages_11
|
|
||||||
, llvmPackages_15, llvm_15
|
|
||||||
, fetchpatch
|
|
||||||
} @ args:
|
|
||||||
|
|
||||||
import ./default.nix {
|
|
||||||
rustcVersion = "1.68.2";
|
|
||||||
rustcSha256 = "sha256-kzOcI/fNTQxF21jhi0xuFtYHD0J3qtnSSS0jKUvzLpY=";
|
|
||||||
|
|
||||||
llvmSharedForBuild = pkgsBuildBuild.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
|
|
||||||
llvmSharedForHost = pkgsBuildHost.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
|
|
||||||
llvmSharedForTarget = pkgsBuildTarget.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
|
|
||||||
|
|
||||||
llvmBootstrapForDarwin = llvmPackages_11;
|
|
||||||
|
|
||||||
# For use at runtime
|
|
||||||
llvmShared = llvm_15.override { enableSharedLibraries = true; };
|
|
||||||
|
|
||||||
# Expose llvmPackages used for rustc from rustc via passthru for LTO in Firefox
|
|
||||||
llvmPackages = llvmPackages_15;
|
|
||||||
|
|
||||||
# Note: the version MUST be one version prior to the version we're
|
|
||||||
# building
|
|
||||||
bootstrapVersion = "1.67.1";
|
|
||||||
|
|
||||||
# fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
|
|
||||||
bootstrapHashes = {
|
|
||||||
i686-unknown-linux-gnu = "4fe2128cfc32687e4717da4c6cb21aa563c36802c8e695cd3537a45efc5b8729";
|
|
||||||
x86_64-unknown-linux-gnu = "652a8966436c4e97b127721d9130810e1cdc8dfdf526fad68c9c1f6281bd02a3";
|
|
||||||
x86_64-unknown-linux-musl = "6fdc9379f662f8e9edd2d23e0a3ebcda502cc9f9a381b7c7d5fa38c326a82ad1";
|
|
||||||
arm-unknown-linux-gnueabihf = "eb919ef62a084797c148574abe39f2fb1e52d20b004041090811a6d479eb6503";
|
|
||||||
armv7-unknown-linux-gnueabihf = "09614988feb6310f64eaadf609c92dba5da5ebdbb5531b43a2b18d5336296b67";
|
|
||||||
aarch64-unknown-linux-gnu = "8edee248eed4b17c09b3d7b0096944b7e5992dd1119a28429c0b6b4d39a9613c";
|
|
||||||
aarch64-unknown-linux-musl = "05d03936493c19483eec4dc63d03f9e7a13f356d1147d1b8d7fc5dbfe508b4ed";
|
|
||||||
x86_64-apple-darwin = "020702c9564f53e18ac880db77c2f6b660a24ea372e4fda3f0c1ef2f8b9c74b9";
|
|
||||||
aarch64-apple-darwin = "8b07560267ec85703a5a9397a1746170fd7013e29fcfb9ffb8daa9bbf1e3211a";
|
|
||||||
powerpc64le-unknown-linux-gnu = "1d4d8b75c72362bb6e02bf56b53af9287806c4ef08187b8d166af0557a7c0096";
|
|
||||||
riscv64gc-unknown-linux-gnu = "a1a33154aeb5498c0c24a2ba77ec63e31a40df5e0861c0afda8d5867289c5984";
|
|
||||||
mips64el-unknown-linux-gnuabi64 = "6d70fe81e4f52ce5d87bcf95b60587f43f68e6730d2def7872646a9c561017ca";
|
|
||||||
};
|
|
||||||
|
|
||||||
selectRustPackage = pkgs: pkgs.rust_1_68;
|
|
||||||
|
|
||||||
rustcPatches = [
|
|
||||||
# Fixes ICE.
|
|
||||||
# https://github.com/rust-lang/rust/pull/107688
|
|
||||||
(fetchpatch {
|
|
||||||
name = "re-erased-regions-are-local.patch";
|
|
||||||
url = "https://github.com/rust-lang/rust/commit/9d110847ab7f6aef56a8cd20cb6cea4fbcc51cd9.patch";
|
|
||||||
excludes = [ "*tests/*" ];
|
|
||||||
hash = "sha256-EZH5K1BEOOfi97xZr1xEHFP4jjvJ1+xqtRMvxBoL8pU=";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_11" "llvmPackages_15" "llvm_15"])
|
|
63
pkgs/development/compilers/rust/1_69.nix
Normal file
63
pkgs/development/compilers/rust/1_69.nix
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
# New rust versions should first go to staging.
|
||||||
|
# Things to check after updating:
|
||||||
|
# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
|
||||||
|
# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
|
||||||
|
# This testing can be also done by other volunteers as part of the pull
|
||||||
|
# request review, in case platforms cannot be covered.
|
||||||
|
# 2. The LLVM version used for building should match with rust upstream.
|
||||||
|
# Check the version number in the src/llvm-project git submodule in:
|
||||||
|
# https://github.com/rust-lang/rust/blob/<version-tag>/.gitmodules
|
||||||
|
# 3. Firefox and Thunderbird should still build on x86_64-linux.
|
||||||
|
|
||||||
|
{ stdenv, lib
|
||||||
|
, buildPackages
|
||||||
|
, newScope, callPackage
|
||||||
|
, CoreFoundation, Security, SystemConfiguration
|
||||||
|
, pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost
|
||||||
|
, makeRustPlatform
|
||||||
|
, llvmPackages_11
|
||||||
|
, llvmPackages_15, llvm_15
|
||||||
|
} @ args:
|
||||||
|
|
||||||
|
import ./default.nix {
|
||||||
|
rustcVersion = "1.69.0";
|
||||||
|
rustcSha256 = "sha256-+wWXGGetbMq703ICefWpS5n2ECSSMYe1a7XEVfo89g8=";
|
||||||
|
|
||||||
|
llvmSharedForBuild = pkgsBuildBuild.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
|
||||||
|
llvmSharedForHost = pkgsBuildHost.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
|
||||||
|
llvmSharedForTarget = pkgsBuildTarget.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
|
||||||
|
|
||||||
|
llvmBootstrapForDarwin = llvmPackages_11;
|
||||||
|
|
||||||
|
# For use at runtime
|
||||||
|
llvmShared = llvm_15.override { enableSharedLibraries = true; };
|
||||||
|
|
||||||
|
# Expose llvmPackages used for rustc from rustc via passthru for LTO in Firefox
|
||||||
|
llvmPackages = llvmPackages_15;
|
||||||
|
|
||||||
|
# Note: the version MUST be one version prior to the version we're
|
||||||
|
# building
|
||||||
|
bootstrapVersion = "1.68.2";
|
||||||
|
|
||||||
|
# fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
|
||||||
|
bootstrapHashes = {
|
||||||
|
i686-unknown-linux-gnu = "a85e1aa0831e8bd31dc8ba3e042b6dea69b4d45fd5d1111bf6fd2cc9d58dd619";
|
||||||
|
x86_64-unknown-linux-gnu = "df7c7466ef35556e855c0d35af7ff08e133040400452eb3427c53202b6731926";
|
||||||
|
x86_64-unknown-linux-musl = "bd02cbdedb4b7f2169a68dc8410e8436fab3734a3a30cab81ab21661d70c6ddd";
|
||||||
|
arm-unknown-linux-gnueabihf = "a5847f9bcbb1fb4183656b1b01e191d8e48c7bc8346ec6831318b697a2f305c6";
|
||||||
|
armv7-unknown-linux-gnueabihf = "f87e4b063b5f916b4a5057e5f544f819cee9ab5da3fe1a977cddb2170e7ba0d7";
|
||||||
|
aarch64-unknown-linux-gnu = "b24d0df852490d80791a228f18c2b75f24b1e6437e6e745f85364edab245f7fa";
|
||||||
|
aarch64-unknown-linux-musl = "e6615e72aaa3e3c9c42c35139ab253a9b738a4eab719e3e306e25026c1aa93e5";
|
||||||
|
x86_64-apple-darwin = "632540d3d83758cb048dc45fcfbc0b29f6f170161a3051be22b0a2962a566fb9";
|
||||||
|
aarch64-apple-darwin = "ab4c6add94686a0392953c588c2b61d4c03f51e855232d161dc492f286e34202";
|
||||||
|
powerpc64le-unknown-linux-gnu = "cf95658277d71bb8ae3a0fbc53099cc1397ed40e0953c026f41cde4a9619efca";
|
||||||
|
riscv64gc-unknown-linux-gnu = "befcf2d53e35ae3fe0d609d1e056bdc814bd36ce54028b8d6b8b9e38c0afcaa5";
|
||||||
|
mips64el-unknown-linux-gnuabi64 = "ee85bbfdc2fb831f067fda19881e6427c8c86571ebff16c1bd219d850969ef0a";
|
||||||
|
};
|
||||||
|
|
||||||
|
selectRustPackage = pkgs: pkgs.rust_1_69;
|
||||||
|
|
||||||
|
rustcPatches = [ ];
|
||||||
|
}
|
||||||
|
|
||||||
|
(builtins.removeAttrs args [ "pkgsBuildHost" "llvmPackages_11" "llvmPackages_15" "llvm_15"])
|
@ -1,10 +1,13 @@
|
|||||||
{ lib, writeShellScriptBin, cargo, cargo-auditable }:
|
{ lib, runCommand, makeBinaryWrapper, cargo, cargo-auditable }:
|
||||||
|
|
||||||
(writeShellScriptBin "cargo" ''
|
runCommand "auditable-${cargo.name}" {
|
||||||
export PATH="${lib.makeBinPath [ cargo cargo-auditable ]}:$PATH"
|
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||||
CARGO_AUDITABLE_IGNORE_UNSUPPORTED=1 exec cargo auditable "$@"
|
|
||||||
'') // {
|
|
||||||
meta = cargo-auditable.meta // {
|
meta = cargo-auditable.meta // {
|
||||||
mainProgram = "cargo";
|
mainProgram = "cargo";
|
||||||
};
|
};
|
||||||
}
|
} ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
makeWrapper ${cargo}/bin/cargo $out/bin/cargo \
|
||||||
|
--set CARGO_AUDITABLE_IGNORE_UNSUPPORTED 1 \
|
||||||
|
--prefix PATH : ${lib.makeBinPath [ cargo cargo-auditable ]}
|
||||||
|
''
|
||||||
|
@ -19,17 +19,16 @@ let
|
|||||||
sha256 = "189gjqzdz10xh3ybiy4ch1r98bsmkcb4hpnrmggd4y2g5kqnyx4y";
|
sha256 = "189gjqzdz10xh3ybiy4ch1r98bsmkcb4hpnrmggd4y2g5kqnyx4y";
|
||||||
};
|
};
|
||||||
|
|
||||||
"2.2.11" = {
|
# The loosely held nixpkgs convention for SBCL is to keep the last two
|
||||||
sha256 = "sha256-NgfWgBZzGICEXO1dXVXGBUzEnxkSGhUCfmxWB66Elt8=";
|
# versions.
|
||||||
};
|
# https://github.com/NixOS/nixpkgs/pull/200994#issuecomment-1315042841
|
||||||
|
|
||||||
"2.3.0" = {
|
|
||||||
sha256 = "sha256-v3Q5SXEq4Cy3ST87i1fOJBlIv2ETHjaGDdszTaFDnJc=";
|
|
||||||
};
|
|
||||||
|
|
||||||
"2.3.2" = {
|
"2.3.2" = {
|
||||||
sha256 = "sha256-RMwWLPpjMqmojHoSHRkDiCikuk9r/7d+8cexdAfLHqo=";
|
sha256 = "sha256-RMwWLPpjMqmojHoSHRkDiCikuk9r/7d+8cexdAfLHqo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
"2.3.4" = {
|
||||||
|
sha256 = "sha256-8RtHZMbqvbJ+WpxGshcgTRG82lNOc7+XBz1Xgx0gnE4=";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
in with versionMap.${version};
|
in with versionMap.${version};
|
||||||
|
@ -103,8 +103,8 @@ in rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
vala_0_56 = generic {
|
vala_0_56 = generic {
|
||||||
version = "0.56.6";
|
version = "0.56.7";
|
||||||
sha256 = "BQ6EHL/iuOfQ+zUMlQa9dVe+HNhqkMiWdl8aCaGHABM=";
|
sha256 = "PTnHWW1fqa6L/q5HZmn4EfcFe397kwhHiie2hEPYsAM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vala = vala_0_56;
|
vala = vala_0_56;
|
||||||
|
@ -3,14 +3,7 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
version = "3.3.1";
|
version = "3.3.1";
|
||||||
|
|
||||||
fullMaude = fetchurl {
|
|
||||||
url = "https://maude.cs.illinois.edu/w/images/b/bc/Full-Maude-3.2.1.zip";
|
|
||||||
sha256 = "0751b3c4619283b3f0adf1c3aac113f1d4334a3ca859ed00d66de5f5857563ec";
|
|
||||||
};
|
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
@ -51,8 +44,6 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
for n in "$out/bin/"*; do wrapProgram "$n" --suffix MAUDE_LIB ':' "$out/share/maude"; done
|
for n in "$out/bin/"*; do wrapProgram "$n" --suffix MAUDE_LIB ':' "$out/share/maude"; done
|
||||||
unzip ${fullMaude}
|
|
||||||
install -D -m 444 full-maude.maude $out/share/maude/full-maude.maude
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -288,6 +288,9 @@ in with passthru; stdenv.mkDerivation {
|
|||||||
./3.8/0001-On-all-posix-systems-not-just-Darwin-set-LDSHARED-if.patch
|
./3.8/0001-On-all-posix-systems-not-just-Darwin-set-LDSHARED-if.patch
|
||||||
# Use sysconfigdata to find headers. Fixes cross-compilation of extension modules.
|
# Use sysconfigdata to find headers. Fixes cross-compilation of extension modules.
|
||||||
./3.7/fix-finding-headers-when-cross-compiling.patch
|
./3.7/fix-finding-headers-when-cross-compiling.patch
|
||||||
|
] ++ optionals stdenv.hostPlatform.isLoongArch64 [
|
||||||
|
# https://github.com/python/cpython/issues/90656
|
||||||
|
./loongarch-support.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -0,0 +1,50 @@
|
|||||||
|
diff --git a/configure b/configure
|
||||||
|
index 8133d47f61..334c98e208 100755
|
||||||
|
--- a/configure
|
||||||
|
+++ b/configure
|
||||||
|
@@ -6215,6 +6215,20 @@ cat > conftest.c <<EOF
|
||||||
|
# else
|
||||||
|
# error unknown platform triplet
|
||||||
|
# endif
|
||||||
|
+# elif defined(__loongarch__)
|
||||||
|
+# if defined(__loongarch_lp64)
|
||||||
|
+# if defined(__loongarch_soft_float)
|
||||||
|
+ loongarch64-linux-gnusf
|
||||||
|
+# elif defined(__loongarch_single_float)
|
||||||
|
+ loongarch64-linux-gnuf32
|
||||||
|
+# elif defined(__loongarch_double_float)
|
||||||
|
+ loongarch64-linux-gnu
|
||||||
|
+# else
|
||||||
|
+# error unknown platform triplet
|
||||||
|
+# endif
|
||||||
|
+# else
|
||||||
|
+# error unknown platform triplet
|
||||||
|
+# endif
|
||||||
|
# else
|
||||||
|
# error unknown platform triplet
|
||||||
|
# endif
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index 3f20d8980d..acde94a181 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -959,6 +959,20 @@ cat > conftest.c <<EOF
|
||||||
|
hppa-linux-gnu
|
||||||
|
# elif defined(__ia64__)
|
||||||
|
ia64-linux-gnu
|
||||||
|
+# elif defined(__loongarch__)
|
||||||
|
+# if defined(__loongarch_lp64)
|
||||||
|
+# if defined(__loongarch_soft_float)
|
||||||
|
+ loongarch64-linux-gnusf
|
||||||
|
+# elif defined(__loongarch_single_float)
|
||||||
|
+ loongarch64-linux-gnuf32
|
||||||
|
+# elif defined(__loongarch_double_float)
|
||||||
|
+ loongarch64-linux-gnu
|
||||||
|
+# else
|
||||||
|
+# error unknown platform triplet
|
||||||
|
+# endif
|
||||||
|
+# else
|
||||||
|
+# error unknown platform triplet
|
||||||
|
+# endif
|
||||||
|
# elif defined(__m68k__) && !defined(__mcoldfire__)
|
||||||
|
m68k-linux-gnu
|
||||||
|
# elif defined(__mips_hard_float) && defined(__mips_isa_rev) && (__mips_isa_rev >=6) && defined(_MIPSEL)
|
@ -2,12 +2,12 @@
|
|||||||
|
|
||||||
callPackage ./generic.nix (args // rec {
|
callPackage ./generic.nix (args // rec {
|
||||||
release = "8.6";
|
release = "8.6";
|
||||||
version = "${release}.11";
|
version = "${release}.13";
|
||||||
|
|
||||||
# Note: when updating, the hash in pkgs/development/libraries/tk/8.6.nix must also be updated!
|
# Note: when updating, the hash in pkgs/development/libraries/tk/8.6.nix must also be updated!
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/tcl/tcl${version}-src.tar.gz";
|
url = "mirror://sourceforge/tcl/tcl${version}-src.tar.gz";
|
||||||
sha256 = "0n4211j80mxr6ql0xx52rig8r885rcbminfpjdb2qrw6hmk8c14c";
|
sha256 = "sha256-Q6H650EvYf8R3iz9BdKM/Dpzdi81SkF8YjcKVOLK8GY=";
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
@ -55,11 +55,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "SDL2";
|
pname = "SDL2";
|
||||||
version = "2.26.4";
|
version = "2.26.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.libsdl.org/release/${pname}-${version}.tar.gz";
|
url = "https://www.libsdl.org/release/${pname}-${version}.tar.gz";
|
||||||
sha256 = "sha256-Gg9oZJj7dorZ8/gLOQN6fQBurAk6rTnLTrzIMqiIcjE=";
|
sha256 = "sha256-rY/qPaG+ZMg8RbHTY6a0uo/WD1veOyPsc4VXCexeq/c=";
|
||||||
};
|
};
|
||||||
dontDisableStatic = if withStatic then 1 else 0;
|
dontDisableStatic = if withStatic then 1 else 0;
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
@ -170,6 +170,7 @@ stdenv.mkDerivation rec {
|
|||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A cross-platform multimedia library";
|
description = "A cross-platform multimedia library";
|
||||||
homepage = "http://www.libsdl.org/";
|
homepage = "http://www.libsdl.org/";
|
||||||
|
changelog = "https://github.com/libsdl-org/SDL/releases/tag/release-${version}";
|
||||||
license = licenses.zlib;
|
license = licenses.zlib;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
maintainers = with maintainers; [ cpages ];
|
maintainers = with maintainers; [ cpages ];
|
||||||
|
@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "sha256-TkqJGYgxYnGXT/TpWF7R73KaEj0iwIvUcxKRedyFf+s=";
|
sha256 = "sha256-TkqJGYgxYnGXT/TpWF7R73KaEj0iwIvUcxKRedyFf+s=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
||||||
buildInputs = lib.optional stdenv.isDarwin darwin.libobjc;
|
buildInputs = lib.optional stdenv.isDarwin darwin.libobjc;
|
||||||
|
@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "sha256-QEfkeofsVxB9gyISL/P7bvnbcBuG7Q3A4UoAyQAXxgE=";
|
sha256 = "sha256-QEfkeofsVxB9gyISL/P7bvnbcBuG7Q3A4UoAyQAXxgE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
buildInputs = [ zlib ];
|
buildInputs = [ zlib ];
|
||||||
|
|
||||||
|
@ -16,13 +16,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "libopenmpt";
|
pname = "libopenmpt";
|
||||||
version = "0.6.9";
|
version = "0.6.10";
|
||||||
|
|
||||||
outputs = [ "out" "dev" "bin" ];
|
outputs = [ "out" "dev" "bin" ];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz";
|
url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz";
|
||||||
sha256 = "R56XWrt9wPqcrUG90x8lXXjUPgcmVGIIBY08P897blo=";
|
sha256 = "wlvo3A2sI87AJUh+WPGV5NFPfZSu3dX+RrIcBPHOJ3Q=";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -31,6 +31,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "1npdixwxxn3s9q1f365x9n9rc5xgfz39hxf23faqvlrklgbhj0q6";
|
sha256 = "1npdixwxxn3s9q1f365x9n9rc5xgfz39hxf23faqvlrklgbhj0q6";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" "man" ];
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
# CVE-2021-36217 / CVE-2021-3502
|
# CVE-2021-36217 / CVE-2021-3502
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
@ -115,7 +117,7 @@ stdenv.mkDerivation rec {
|
|||||||
postInstall =
|
postInstall =
|
||||||
# Maintain compat for mdnsresponder
|
# Maintain compat for mdnsresponder
|
||||||
lib.optionalString withLibdnssdCompat ''
|
lib.optionalString withLibdnssdCompat ''
|
||||||
ln -s avahi-compat-libdns_sd/dns_sd.h "$out/include/dns_sd.h"
|
ln -s avahi-compat-libdns_sd/dns_sd.h "$dev/include/dns_sd.h"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.tests = {
|
passthru.tests = {
|
||||||
|
@ -7,13 +7,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "aws-c-sdkutils";
|
pname = "aws-c-sdkutils";
|
||||||
version = "0.1.8";
|
version = "0.1.9";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "awslabs";
|
owner = "awslabs";
|
||||||
repo = "aws-c-sdkutils";
|
repo = "aws-c-sdkutils";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-7aLupTbKC2I7+ylySe1xq3q6YDP9ogLlsWSKBk+jI+Q=";
|
sha256 = "sha256-iKHO8awWWB8tvYCr+/R6hhK8a/PnanYYEAJ7zNOJC3w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, fetchpatch
|
||||||
|
, eglexternalplatform
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, meson
|
, meson
|
||||||
, ninja
|
, ninja
|
||||||
@ -12,35 +14,7 @@
|
|||||||
, wayland-protocols
|
, wayland-protocols
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
stdenv.mkDerivation rec {
|
||||||
eglexternalplatform = stdenv.mkDerivation {
|
|
||||||
pname = "eglexternalplatform";
|
|
||||||
version = "1.1";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "Nvidia";
|
|
||||||
repo = "eglexternalplatform";
|
|
||||||
rev = "7c8f8e2218e46b1a4aa9538520919747f1184d86";
|
|
||||||
sha256 = "0lr5s2xa1zn220ghmbsiwgmx77l156wk54c7hybia0xpr9yr2nhb";
|
|
||||||
};
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p "$out/include/"
|
|
||||||
cp interface/eglexternalplatform.h "$out/include/"
|
|
||||||
cp interface/eglexternalplatformversion.h "$out/include/"
|
|
||||||
|
|
||||||
substituteInPlace eglexternalplatform.pc \
|
|
||||||
--replace "/usr/include/EGL" "$out/include"
|
|
||||||
mkdir -p "$out/share/pkgconfig"
|
|
||||||
cp eglexternalplatform.pc "$out/share/pkgconfig/"
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
license = licenses.mit;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
|
||||||
pname = "egl-wayland";
|
pname = "egl-wayland";
|
||||||
version = "1.1.11";
|
version = "1.1.11";
|
||||||
|
|
||||||
@ -53,6 +27,21 @@ in stdenv.mkDerivation rec {
|
|||||||
sha256 = "sha256-xb0d8spr4GoGZl/8C8BoPMPN7PAlzuQV11tEJbOQQ4U=";
|
sha256 = "sha256-xb0d8spr4GoGZl/8C8BoPMPN7PAlzuQV11tEJbOQQ4U=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# remove after next update
|
||||||
|
# https://github.com/NVIDIA/egl-wayland/pull/79
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/NVIDIA/egl-wayland/commit/13737c6af4c0a7cfef5ec9013a4382bbeb7b495c.patch";
|
||||||
|
hash = "sha256-EEqI6iJb+uv0HkhnauYNxSzny4YapTm73PLgK8A9Km8=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
# Declares an includedir but doesn't install any headers
|
||||||
|
# CMake's `pkg_check_modules(NAME wayland-eglstream IMPORTED_TARGET)` considers this an error
|
||||||
|
sed -i -e '/includedir/d' wayland-eglstream.pc.in
|
||||||
|
'';
|
||||||
|
|
||||||
depsBuildBuild = [
|
depsBuildBuild = [
|
||||||
pkg-config
|
pkg-config
|
||||||
];
|
];
|
||||||
@ -65,7 +54,6 @@ in stdenv.mkDerivation rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
eglexternalplatform
|
|
||||||
libGL
|
libGL
|
||||||
libX11
|
libX11
|
||||||
libdrm
|
libdrm
|
||||||
@ -73,12 +61,9 @@ in stdenv.mkDerivation rec {
|
|||||||
wayland-protocols
|
wayland-protocols
|
||||||
];
|
];
|
||||||
|
|
||||||
postFixup = ''
|
propagatedBuildInputs = [
|
||||||
# Doubled prefix in pc file after postbuild hook replaces includedir prefix variable with dev output path
|
eglexternalplatform
|
||||||
substituteInPlace $dev/lib/pkgconfig/wayland-eglstream.pc \
|
];
|
||||||
--replace "=$dev/$dev" "=$dev" \
|
|
||||||
--replace "Requires:" "Requires.private:"
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "The EGLStream-based Wayland external platform";
|
description = "The EGLStream-based Wayland external platform";
|
||||||
|
40
pkgs/development/libraries/eglexternalplatform/default.nix
Normal file
40
pkgs/development/libraries/eglexternalplatform/default.nix
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
{ stdenvNoCC
|
||||||
|
, lib
|
||||||
|
, fetchFromGitHub
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenvNoCC.mkDerivation rec {
|
||||||
|
pname = "eglexternalplatform";
|
||||||
|
version = "1.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Nvidia";
|
||||||
|
repo = "eglexternalplatform";
|
||||||
|
rev = "7c8f8e2218e46b1a4aa9538520919747f1184d86";
|
||||||
|
sha256 = "0lr5s2xa1zn220ghmbsiwgmx77l156wk54c7hybia0xpr9yr2nhb";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontConfigure = true;
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/include/
|
||||||
|
cp interface/* $out/include/
|
||||||
|
|
||||||
|
substituteInPlace eglexternalplatform.pc \
|
||||||
|
--replace "/usr/include/EGL" "$out/include"
|
||||||
|
install -Dm644 {.,$out/share/pkgconfig}/eglexternalplatform.pc
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "The EGL External Platform interface";
|
||||||
|
homepage = "https://github.com/NVIDIA/eglexternalplatform";
|
||||||
|
license = licenses.mit;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ hedning ];
|
||||||
|
};
|
||||||
|
}
|
@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "sha256-yehjDPnUM/POrXSQahUg0iI/ibzT+pJUhhAXRAuOsi8=";
|
sha256 = "sha256-yehjDPnUM/POrXSQahUg0iI/ibzT+pJUhhAXRAuOsi8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" ];
|
||||||
|
|
||||||
configureFlags = lib.optional exampleSupport "--enable-example";
|
configureFlags = lib.optional exampleSupport "--enable-example";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user