Wolfgang ThallerMerge branch 'gcc16'47a10bb5 months agoHistory
95 lines · 3.3 KB · Nix
RawDownload
{  description = "Description for the project";   inputs = {    nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";    multiversal.url = "github:autc04/multiversal";    multiversal.flake = false;    flake-parts.url = "github:hercules-ci/flake-parts";  };   outputs = inputs@{ flake-parts, nixpkgs, multiversal, ... }:    flake-parts.lib.mkFlake { inherit inputs; } ({ self, ... }: {      imports = [        ./nix/standalone.nix      ];       systems = [ "x86_64-linux" "aarch64-linux" "aarch64-darwin" "x86_64-darwin" ];      perSystem = { config, self', inputs', pkgs, system, ... }:        let          lib = pkgs.lib;          retroPlatforms = (import ./nix/platforms.nix) { inherit lib; };        in        {          _module.args.pkgs = import nixpkgs { inherit system; overlays = [ self.overlays.default ]; };           formatter = pkgs.nixpkgs-fmt;           legacyPackages.pkgsCross = lib.mapAttrs            (name: plat:              import nixpkgs {                inherit system;                overlays = [ self.overlays.default ];                crossSystem = plat;                config = {                   allowUnsupportedSystem = true;                 };                stdenvStages = let                   realStdenvStages = import (nixpkgs + "/pkgs/stdenv");                                    in args@{crossSystem, ...}: realStdenvStages (args // { crossSystem = plat; });              })            retroPlatforms;           devShells = {            default = pkgs.mkShell {              inputsFrom = [ pkgs.retro68.monolithic ];              nativeBuildInputs = [ pkgs.nixpkgs-fmt ];              hardeningDisable = [ "format" ];              shellHook = ''                export PATH="$PWD/build/toolchain/bin:$PATH"              '';            };          } // lib.mapAttrs            (name: cross:              cross.mkShell                {                  nativeBuildInputs = with pkgs; [                    retro68.hfsutils                    retro68.tools                    cmake                    gnumake                    ninja                  ];                  buildInputs = [ cross.retro68.console ];                } // cross)            self'.legacyPackages.pkgsCross;           packages = {            tools = pkgs.retro68.tools;            hfsutils = pkgs.retro68.hfsutils;              samples = pkgs.linkFarm "Retro68-Samples" [              { name = "m68k"; path = self'.legacyPackages.pkgsCross.m68k.retro68.samples; }              { name = "powerpc"; path = self'.legacyPackages.pkgsCross.powerpc.retro68.samples; }              { name = "carbon"; path = self'.legacyPackages.pkgsCross.carbon.retro68.samples; }            ];          } // lib.mapAttrs'            (name: cross: lib.nameValuePair "samples-${name}" cross.retro68.samples)            self'.legacyPackages.pkgsCross;        };      flake = {        overlays.default =          nixpkgs.lib.composeManyExtensions [            ((import nix/overlay.nix) {              multiversal_src =                if builtins.pathExists ./multiversal/make-multiverse.rb                then ./multiversal                else multiversal;            })            (import nix/universal.nix)            (import nix/samples.nix)          ];      };    });}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t