From 3d07413690c551d9f034c93af85ae8da5a495e14 Mon Sep 17 00:00:00 2001 From: seth Date: Sat, 20 Apr 2024 02:31:40 +0000 Subject: spring cleaning (#165) * treewide: lightly refactor everything * once_cell -> std::sync * remove build.rs we can get our target at runtime * commands::copypasta: refactor selection * drop owo_colors * reactboard: always remove author from count * commands: better handle behavior outside of guilds * ci: garnix -> gha * nix: drop flake-parts & pre-commit-hooks * nix: fix rust flags in derivation * add gha badge to readme * ci: fail when format changes are made * ci: only run on push to main * nix: fix nil script * nix: add libiconv to darwin deps * ci: disable fail-fast * nix: fix actionlint & static checks * ci: add release gates * nix: fix nil check again * ci: give release gates unique names * ci: only build static packages in docker workflow * nix: move dev outputs to subflake * fix some typos * nix: cleanup checks & dev shell * add editorconfig --- flake.nix | 85 ++++++++++++++++++++++----------------------------------------- 1 file changed, 29 insertions(+), 56 deletions(-) (limited to 'flake.nix') diff --git a/flake.nix b/flake.nix index 28c35a6..4e4ece1 100644 --- a/flake.nix +++ b/flake.nix @@ -1,62 +1,35 @@ { description = "teawie moment"; - nixConfig = { - extra-substituters = ["https://cache.garnix.io"]; - extra-trusted-public-keys = ["cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="]; - }; - - inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; - - flake-parts = { - url = "github:hercules-ci/flake-parts"; - inputs.nixpkgs-lib.follows = "nixpkgs"; - }; - - fenix = { - url = "github:nix-community/fenix"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - pre-commit-hooks-nix = { - url = "github:cachix/pre-commit-hooks.nix"; - inputs = { - nixpkgs.follows = "nixpkgs"; - nixpkgs-stable.follows = "nixpkgs"; - flake-compat.follows = ""; - }; - }; - - treefmt-nix = { - url = "github:numtide/treefmt-nix"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - procfile-nix = { - url = "github:getchoo/procfile-nix"; - inputs.nixpkgs.follows = "nixpkgs"; + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; + + outputs = { + self, + nixpkgs, + ... + }: let + systems = [ + "x86_64-linux" + "aarch64-linux" + "x86_64-darwin" + "aarch64-darwin" + ]; + + forAllSystems = fn: nixpkgs.lib.genAttrs systems (system: fn nixpkgs.legacyPackages.${system}); + in { + nixosModules.default = import ./nix/module.nix self; + + packages = forAllSystems ({ + pkgs, + system, + ... + }: { + teawiebot = pkgs.callPackage ./nix/derivation.nix {inherit self;}; + default = self.packages.${system}.teawiebot; + }); + + overlays.default = _: prev: { + teawiebot = prev.callPackage ./nix/derivation.nix {inherit self;}; }; }; - - outputs = inputs: - inputs.flake-parts.lib.mkFlake {inherit inputs;} { - imports = [ - inputs.pre-commit-hooks-nix.flakeModule - inputs.procfile-nix.flakeModule - inputs.treefmt-nix.flakeModule - - ./nix/ci.nix - ./nix/deployment - ./nix/dev.nix - ./nix/packages.nix - ]; - - systems = [ - "x86_64-linux" - "x86_64-darwin" - "aarch64-linux" - "aarch64-darwin" - ]; - }; } -- cgit v1.2.3