Simple tool for automatic file management
at master 1.7 kB view raw
1# SPDX-FileCopyrightText: 2024 Łukasz Niemier <#@hauleth.dev> 2# 3# SPDX-License-Identifier: EUPL-1.2 4{ 5 inputs = { 6 nixpkgs.url = "flake:nixpkgs"; 7 systems.url = "github:nix-systems/default"; 8 flake-parts.url = "github:hercules-ci/flake-parts"; 9 fenix = { 10 url = "github:nix-community/fenix"; 11 inputs.nixpkgs.follows = "nixpkgs"; 12 }; 13 nickel.url = "github:tweag/nickel/stable"; 14 devenv.url = "github:cachix/devenv"; 15 }; 16 17 nixConfig = { 18 extra-trusted-public-keys = "devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="; 19 extra-substituters = "https://devenv.cachix.org"; 20 }; 21 22 outputs = {flake-parts, ...} @ inputs: 23 flake-parts.lib.mkFlake {inherit inputs;} { 24 imports = [ 25 inputs.devenv.flakeModule 26 ]; 27 28 systems = import inputs.systems; 29 30 perSystem = { 31 self', 32 pkgs, 33 inputs', 34 ... 35 }: { 36 formatter = pkgs.alejandra; 37 38 packages = { 39 default = self'.packages.ptsd; 40 ptsd = pkgs.callPackage ./nix/ptsd.nix {}; 41 }; 42 43 devenv.shells.default = { 44 languages.rust = { 45 enable = true; 46 }; 47 48 packages = 49 [ 50 pkgs.scdoc 51 pkgs.cargo-nextest 52 pkgs.cargo-outdated 53 pkgs.reuse 54 inputs'.nickel.packages.default 55 ] 56 ++ pkgs.lib.lists.optionals pkgs.stdenv.isDarwin (let 57 inherit (pkgs.darwin.apple_sdk) frameworks; 58 in [ 59 frameworks.Foundation 60 pkgs.libiconv 61 pkgs.darwin.libobjc 62 ]); 63 }; 64 }; 65 }; 66}