nixos-config/modules/packages.nix

142 lines
4.0 KiB
Nix
Raw Normal View History

2020-04-27 05:39:00 +04:00
{ pkgs, config, lib, inputs, ... }:
2020-02-17 17:00:59 +04:00
let
filterGit =
builtins.filterSource (type: name: name != ".git" || type != "directory");
2020-04-28 21:48:57 +04:00
system = "x86_64-linux";
old = import inputs.nixpkgs-old ({
config = config.nixpkgs.config;
localSystem = { inherit system; };
});
in {
2020-02-17 17:00:59 +04:00
nixpkgs.overlays = [
2020-04-28 21:48:57 +04:00
inputs.nix.overlay
2020-02-17 17:00:59 +04:00
(self: super:
rec {
2020-04-28 21:48:57 +04:00
nix = super.nix // {
meta = super.nix.meta // { platforms = lib.platforms.unix; };
};
nur = (import inputs.NUR {
pkgs = old;
nurpkgs = pkgs;
}).repos;
2020-02-17 17:00:59 +04:00
inherit (nur.balsoft.pkgs) termNote lambda-launcher nix-patch;
2020-04-27 05:39:00 +04:00
all-hies = import inputs.all-hies { };
2020-02-17 17:00:59 +04:00
yt-utilities =
import (self.fetchgit config.secrets.yt-utilities.source) { };
mtxclient = super.mtxclient.overrideAttrs (oa: rec {
name = "${pname}-${version}";
buildInputs = with self; [
boost170
nlohmann_json
openssl
zlib
libsodium
olm
];
pname = "mtxclient";
cmakeFlags = oa.cmakeFlags ++ [
"-DBoost_NO_BOOST_CMAKE=ON"
"-DBoost_LIBRARY_DIR_RELEASE=${pkgs.boost170}"
];
version = "0.3.0";
2020-04-27 05:39:00 +04:00
src = inputs.mtxclient;
2020-02-17 17:00:59 +04:00
});
nheko = super.nheko.overrideAttrs (oa: rec {
name = "${pname}-${version}";
buildInputs = with self; [
nlohmann_json
qt5.qtquickcontrols2
mtxclient
olm
boost170
lmdb
spdlog
cmark
qt5.qtbase
qt5.qtmultimedia
qt5.qttools
qt5.qtgraphicaleffects
];
cmakeFlags = oa.cmakeFlags ++ [
"-DBUILD_SHARED_LIBS=ON"
"-DBoost_NO_BOOST_CMAKE=ON"
"-DBoost_LIBRARY_DIR_RELEASE=${pkgs.boost170}"
];
pname = "nheko";
version = "0.7.0";
2020-04-27 05:39:00 +04:00
src = inputs.nheko;
2020-02-17 17:00:59 +04:00
});
nerdfonts = nur.balsoft.pkgs.roboto-mono-nerd;
mpd-mpris = super.mpd-mpris.overrideAttrs
(oa: { patches = [ ./mpd-mpris.patch ]; });
2020-02-17 17:00:59 +04:00
2020-04-28 21:48:57 +04:00
mobile-broadband-provider-info =
super.mobile-broadband-provider-info.overrideAttrs (oa: {
src = inputs.mobile-broadband-provider-info;
nativeBuildInputs = [ self.autoreconfHook ];
buildInputs = [ self.libxslt ];
});
inherit (old) mautrix-telegram;
2020-02-17 17:00:59 +04:00
pythonPackages = super.pythonPackages.override {
overrides = (self: super: {
pykka2 = super.pykka.overridePythonAttrs (oa: {
2020-04-27 05:39:00 +04:00
src = inputs.pykka;
2020-02-17 17:00:59 +04:00
version = "2.0.1";
name = "pykka-2.0.1";
});
backports_functools_lru_cache =
super.backports_functools_lru_cache.overrideAttrs
(oldAttrs: oldAttrs // { meta.priority = 1000; });
});
};
ebtables = old.ebtables;
} // (if config.device == "Prestigio-Laptop" then {
grub2 = super.pkgsi686Linux.grub2;
} else
{ }))
2020-04-30 15:33:26 +04:00
(self: super: builtins.mapAttrs (_: v: pkgs.callPackage v.override { }) {
inherit (import inputs.nixpkgs-mopidy {
localSystem.system = "x86_64-linux";
})
mopidy mopidy-gmusic mopidy-mpd mopidy-mpris mopidy-youtube;
})
2020-02-17 17:00:59 +04:00
];
2020-04-27 05:39:00 +04:00
nixpkgs.config = {
allowUnfree = true;
android_sdk.accept_license = true;
firefox.enablePlasmaBrowserIntegration = true;
};
environment.etc.nixpkgs.source = inputs.nixpkgs;
2020-02-17 17:00:59 +04:00
nix = rec {
nixPath = lib.mkForce [
"nixpkgs=/etc/nixpkgs"
"nixos-config=/etc/nixos/configuration.nix"
];
binaryCaches = [ "https://cache.nixos.org" "https://cache.balsoft.ru" ];
2020-02-17 17:00:59 +04:00
trustedUsers = [ "root" "balsoft" "@wheel" ];
optimise.automatic = true;
binaryCachePublicKeys =
[ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" ];
package = pkgs.nixFlakes;
2020-04-27 05:39:00 +04:00
extraOptions = ''
experimental-features = nix-command flakes
'';
2020-02-17 17:00:59 +04:00
};
}