{"action":"created","issue":{"url":"https://api.github.com/repos/NixOS/nixpkgs/issues/73262","repository_url":"https://api.github.com/repos/NixOS/nixpkgs","labels_url":"https://api.github.com/repos/NixOS/nixpkgs/issues/73262/labels{/name}","comments_url":"https://api.github.com/repos/NixOS/nixpkgs/issues/73262/comments","events_url":"https://api.github.com/repos/NixOS/nixpkgs/issues/73262/events","html_url":"https://github.com/NixOS/nixpkgs/pull/73262","id":521255916,"node_id":"MDExOlB1bGxSZXF1ZXN0MzM5NjY5NzY0","number":73262,"title":"dotnet-sdk: Allow multiple packages","user":{"login":"baracoder","id":127523,"node_id":"MDQ6VXNlcjEyNzUyMw==","avatar_url":"https://avatars2.githubusercontent.com/u/127523?v=4","gravatar_id":"","url":"https://api.github.com/users/baracoder","html_url":"https://github.com/baracoder","followers_url":"https://api.github.com/users/baracoder/followers","following_url":"https://api.github.com/users/baracoder/following{/other_user}","gists_url":"https://api.github.com/users/baracoder/gists{/gist_id}","starred_url":"https://api.github.com/users/baracoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/baracoder/subscriptions","organizations_url":"https://api.github.com/users/baracoder/orgs","repos_url":"https://api.github.com/users/baracoder/repos","events_url":"https://api.github.com/users/baracoder/events{/privacy}","received_events_url":"https://api.github.com/users/baracoder/received_events","type":"User","site_admin":false},"labels":[{"id":731735222,"node_id":"MDU6TGFiZWw3MzE3MzUyMjI=","url":"https://api.github.com/repos/NixOS/nixpkgs/labels/10.rebuild-darwin:%201-10","name":"10.rebuild-darwin: 1-10","color":"eeffee","default":false,"description":null},{"id":731734101,"node_id":"MDU6TGFiZWw3MzE3MzQxMDE=","url":"https://api.github.com/repos/NixOS/nixpkgs/labels/10.rebuild-linux:%2011-100","name":"10.rebuild-linux: 11-100","color":"fbca04","default":false,"description":null},{"id":290122734,"node_id":"MDU6TGFiZWwyOTAxMjI3MzQ=","url":"https://api.github.com/repos/NixOS/nixpkgs/labels/8.has:%20package%20(new)","name":"8.has: package (new)","color":"009800","default":false,"description":null}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":12,"created_at":"2019-11-12T00:12:09Z","updated_at":"2019-12-17T17:15:20Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/NixOS/nixpkgs/pulls/73262","html_url":"https://github.com/NixOS/nixpkgs/pull/73262","diff_url":"https://github.com/NixOS/nixpkgs/pull/73262.diff","patch_url":"https://github.com/NixOS/nixpkgs/pull/73262.patch"},"body":"<!-- Nixpkgs has a lot of new incoming Pull Requests, but not enough people to review this constant stream. Even if you aren't a committer, we would appreciate reviews of other PRs, especially simple ones like package updates. Just testing the relevant package/service and leaving a comment saying what you tested, how you tested it and whether it worked would be great. List of open PRs: <https://github.com/NixOS/nixpkgs/pulls>, for more about reviewing contributions: <https://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download/1/nixpkgs/manual.html#chap-reviewing-contributions>. Reviewing isn't mandatory, but it would help out a lot and reduce the average time-to-merge for all of us. Thanks a lot if you do! -->\r\n###### Motivation for this change\r\n\r\nColleagues have switched some projects to version 3.0 of .NET Core. I want my development environment to work with all versions.\r\nThis changes allow to combine multiple SDKs and runtimes.\r\n\r\nin `configuration.nix`\r\n```\r\n  dotnetCombined = with dotnetCorePackages; combinePackages {\r\n    cli=sdk_3_1_preview;\r\n    withSdks = [ sdk_2_2 sdk_3_0 sdk_3_1_preview ];\r\n    withRuntimes = [ aspnetcore_2_1 sdk_3_0 sdk_2_2 sdk_3_1_preview  ];\r\n  };\r\n```\r\nThis setup worked so far. I am open for suggestions.\r\n\r\nUsing the runtime packages, it should also be possible to build smaller docker images for deployment.\r\n\r\n###### Things done\r\n\r\n<!-- Please check what applies. Note that these are not hard requirements but merely serve as information for reviewers. -->\r\n\r\n- [x] Tested using sandboxing ([nix.useSandbox](http://nixos.org/nixos/manual/options.html#opt-nix.useSandbox) on NixOS, or option `sandbox` in [`nix.conf`](http://nixos.org/nix/manual/#sec-conf-file) on non-NixOS linux)\r\n- Built on platform(s)\r\n   - [x] NixOS\r\n   - [ ] macOS\r\n   - [ ] other Linux distributions\r\n- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))\r\n- [ ] Tested compilation of all pkgs that depend on this change using `nix-shell -p nix-review --run \"nix-review wip\"`\r\n- [x] Tested execution of all binary files (usually in `./result/bin/`)\r\n- [ ] Determined the impact on package closure size (by running `nix path-info -S` before and after)\r\n- [ ] Ensured that relevant documentation is up to date\r\n- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).\r\n\r\n###### Notify maintainers\r\n\r\ncc @kuznero \r\n\r\n###### Related issues\r\n\r\nhttps://github.com/NixOS/nixpkgs/issues/73193\r\nhttps://github.com/NixOS/nixpkgs/pull/72300\r\nhttps://github.com/NixOS/nixpkgs/pull/69392\r\nhttps://github.com/NixOS/nixpkgs/pull/69382\r\nhttps://github.com/NixOS/nixpkgs/pull/69391\r\n"},"comment":{"url":"https://api.github.com/repos/NixOS/nixpkgs/issues/comments/566659813","html_url":"https://github.com/NixOS/nixpkgs/pull/73262#issuecomment-566659813","issue_url":"https://api.github.com/repos/NixOS/nixpkgs/issues/73262","id":566659813,"node_id":"MDEyOklzc3VlQ29tbWVudDU2NjY1OTgxMw==","user":{"login":"baracoder","id":127523,"node_id":"MDQ6VXNlcjEyNzUyMw==","avatar_url":"https://avatars2.githubusercontent.com/u/127523?v=4","gravatar_id":"","url":"https://api.github.com/users/baracoder","html_url":"https://github.com/baracoder","followers_url":"https://api.github.com/users/baracoder/followers","following_url":"https://api.github.com/users/baracoder/following{/other_user}","gists_url":"https://api.github.com/users/baracoder/gists{/gist_id}","starred_url":"https://api.github.com/users/baracoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/baracoder/subscriptions","organizations_url":"https://api.github.com/users/baracoder/orgs","repos_url":"https://api.github.com/users/baracoder/repos","events_url":"https://api.github.com/users/baracoder/events{/privacy}","received_events_url":"https://api.github.com/users/baracoder/received_events","type":"User","site_admin":false},"created_at":"2019-12-17T17:15:20Z","updated_at":"2019-12-17T17:15:20Z","author_association":"CONTRIBUTOR","body":"Thank you for testing and the input.\r\n\r\n```\r\nwith dotnetCorePackages; combinePakcages { cli=sdk_3_1; withRuntimes=[ sdk_3_1 ]; withSdks=[ sdk_3_1 ]; }\r\n```\r\nUsing the same sdk package in runtimes won't increase the closure size, as the directories are just linked.\r\n\r\nI had the wrong assumption that explicitly specifying the runtime would decrease closure size for built packages, but this is false, because the cli from the combined package would be used and pull in all SDKs.\r\n`combinePackages` is only be useful for development environments.\r\n\r\nI will update the PR tomorrow."}}
{"actor":{"display_login":"baracoder"}}