You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The flake in question is from a private repo, but here's a copy:
{inputs={nixpkgs.url="github:nixos/nixpkgs/nixpkgs-unstable";flake-parts.url="github:hercules-ci/flake-parts";};outputs=inputs:
inputs.flake-parts.lib.mkFlake{inheritinputs;}{systems=["x86_64-linux"];# iconv doesn't work on macOSperSystem={pkgs,lib, ... }: {formatter=pkgs.nixpkgs-fmt;apps.default.program=lib.getExe(pkgs.writeShellApplication{//snipfields});devShells.default=pkgs.mkShell{packages=[pkgs.httrackpkgs.wget];};};};}
Notice the systems = [ "x86_64-linux" ] - which means running om show won't show anything. Perhaps it should still show other systems. Maybe spit out an error saying no output for current system, and that the user can run om show . --all-systems to display for all systems? Need to figure out UX.
The text was updated successfully, but these errors were encountered:
The method tree.get_by_path(&[...]) takes a System type and then provides the output.
To implement the --all-systems flag, we need to gather a vec![] of all supported System types for each FlakeOutputs. Currently, the only system accessible is the host system on which om is running. Hence, fetching all supported systems for the flake will be necessary.
One more thing I observed is that omnix show . has the print_flake_output_table hardcoded with a set of values like ("packages", "devshells", "nixosConfigurations", ...). This limits the show command to only present the outputs from this predefined set, which I believe are considered standard outputs for the flake.
For example:
With the current setup, om show will not display flake.something = {}, whereas nix flake show would. Instead of hardcoding these outputs, it seems more appropriate to show all available outputs. This would provide more flexibility and better align with how nix flake show works.
The flake in question is from a private repo, but here's a copy:
Notice the
systems = [ "x86_64-linux" ]
- which means runningom show
won't show anything. Perhaps it should still show other systems. Maybe spit out an error saying no output for current system, and that the user can runom show . --all-systems
to display for all systems? Need to figure out UX.The text was updated successfully, but these errors were encountered: