dotfiles/flake.nix
2024-04-23 15:14:50 +02:00

95 lines
3.3 KiB
Nix

{
description = "dotfiles";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
inputs.flake-utils.url = "github:numtide/flake-utils";
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem
(system:
let
pkgs = import nixpkgs
{
system = system;
config = {
allowUnfree = true;
};
};
in
{
packages.lutris = pkgs.lutris.override {
extraPkgs = pkgs: [ pkgs.mangohud ];
};
packages.mopidyWithExtensions = pkgs.buildEnv {
name = "mopidy-with-extensions-${pkgs.mopidy.version}";
paths = pkgs.lib.closePropagation (with pkgs; [
(mopidy-iris.overrideAttrs (oldAttrs: rec {
src = python3Packages.fetchPypi {
pname = "Mopidy-Iris";
version = "3.64.0";
sha256 = "062x73glhn1x4wgc7zmb9y3cq15d5grgqf5drdpbp6p3cgk4s2vc";
};
}))
mopidy-local
(mopidy-mpd.overrideAttrs (oldAttrs: rec {
src = python3Packages.fetchPypi {
version = "3.3.0";
pname = "Mopidy-MPD";
sha256 = "sha256-CeLMRqj9cwBvQrOx7XHVV8MjDjwOosONVlsN2o+vTVM=";
};
}))
(mopidy-ytmusic.overrideAttrs (oldAttrs: rec {
postPatch = "";
src = python3Packages.fetchPypi {
version = "0.3.7";
pname = "Mopidy-YTMusic";
sha256 = "0gqjvi3nfzkqvbdhihzai241p1h5p037bj2475cc93xwzyyqxcrq";
};
}))
]);
pathsToLink = [ "/${pkgs.mopidyPackages.python.sitePackages}" ];
buildInputs = [ pkgs.makeWrapper ];
postBuild = ''
makeWrapper ${pkgs.mopidy}/bin/mopidy $out/bin/mopidy \
--prefix PYTHONPATH : $out/${pkgs.mopidyPackages.python.sitePackages}
'';
};
packages.conda-custom = pkgs.conda.override {
extraPkgs = with pkgs; [ glib which ];
};
devShells = {
empty = import ./dev-shells/empty.nix { pkgs = pkgs; };
empty-multi = import ./dev-shells/empty-multi.nix { pkgs = pkgs; };
empty-multi-static = import ./dev-shells/empty-multi.nix { pkgs = pkgs.pkgsStatic; };
empty-clang = import ./dev-shells/empty-clang.nix { pkgs = pkgs; };
empty-clang-multi = import ./dev-shells/empty-clang-multi.nix { pkgs = pkgs; };
basic-cmake = import ./dev-shells/basic-cmake.nix { pkgs = pkgs; };
basic-rust = import ./dev-shells/basic-rust.nix { pkgs = pkgs; };
aby = import ./dev-shells/aby.nix { pkgs = pkgs; };
spfe = import ./dev-shells/spfe.nix { pkgs = pkgs; };
zig-bootstrap = import ./dev-shells/zig-bootstrap.nix { pkgs = pkgs; };
zig = import ./dev-shells/zig.nix { pkgs = pkgs; };
};
}) // {
nixosConfigurations = {
dustbowl = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
(import ./nixos/dustbowl.nix {
nixpkgs = nixpkgs;
})
];
};
};
legacyPackages = nixpkgs.legacyPackages;
};
}