{"action":"created","issue":{"url":"https://api.github.com/repos/NixOS/nixpkgs/issues/45412","repository_url":"https://api.github.com/repos/NixOS/nixpkgs","labels_url":"https://api.github.com/repos/NixOS/nixpkgs/issues/45412/labels{/name}","comments_url":"https://api.github.com/repos/NixOS/nixpkgs/issues/45412/comments","events_url":"https://api.github.com/repos/NixOS/nixpkgs/issues/45412/events","html_url":"https://github.com/NixOS/nixpkgs/pull/45412","id":352333600,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA5NjcxNzgw","number":45412,"title":"minecraft-server: 1.12.2 -> 1.13.0 + service refactor","user":{"login":"costrouc","id":1740337,"node_id":"MDQ6VXNlcjE3NDAzMzc=","avatar_url":"https://avatars1.githubusercontent.com/u/1740337?v=4","gravatar_id":"","url":"https://api.github.com/users/costrouc","html_url":"https://github.com/costrouc","followers_url":"https://api.github.com/users/costrouc/followers","following_url":"https://api.github.com/users/costrouc/following{/other_user}","gists_url":"https://api.github.com/users/costrouc/gists{/gist_id}","starred_url":"https://api.github.com/users/costrouc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/costrouc/subscriptions","organizations_url":"https://api.github.com/users/costrouc/orgs","repos_url":"https://api.github.com/users/costrouc/repos","events_url":"https://api.github.com/users/costrouc/events{/privacy}","received_events_url":"https://api.github.com/users/costrouc/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},{"id":731733923,"node_id":"MDU6TGFiZWw3MzE3MzM5MjM=","url":"https://api.github.com/repos/NixOS/nixpkgs/labels/10.rebuild-linux:%201-10","name":"10.rebuild-linux: 1-10","color":"eeffee","default":false},{"id":60265212,"node_id":"MDU6TGFiZWw2MDI2NTIxMg==","url":"https://api.github.com/repos/NixOS/nixpkgs/labels/6.topic:%20nixos","name":"6.topic: nixos","color":"fef2c0","default":false},{"id":290122884,"node_id":"MDU6TGFiZWwyOTAxMjI4ODQ=","url":"https://api.github.com/repos/NixOS/nixpkgs/labels/8.has:%20module%20(update)","name":"8.has: module (update)","color":"009800","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2018-08-20T23:39:38Z","updated_at":"2018-08-27T22:10:26Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/NixOS/nixpkgs/pulls/45412","html_url":"https://github.com/NixOS/nixpkgs/pull/45412","diff_url":"https://github.com/NixOS/nixpkgs/pull/45412.diff","patch_url":"https://github.com/NixOS/nixpkgs/pull/45412.patch"},"body":"###### Motivation for this change\r\n\r\nWanted to run the newest minecraft server and additionall be able to configure the entire setup from nixos. Previously the service only allowed for starting with service (without configuration and agreeing to the eula). This new service does all of this.\r\n\r\n###### Things done\r\n\r\nminecraft-server: 1.12.2 -> 1.13.0\r\nservices.minecraft-server: refactor (fully configurable now and eula added)\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)\r\n- Built on platform(s)\r\n   - [X] NixOS\r\n   - [ ] macOS\r\n   - [X] 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- [X] Tested compilation of all pkgs that depend on this change using `nix-shell -p nox --run \"nox-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- [X] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).\r\n\r\n---\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/NixOS/nixpkgs/issues/comments/416385609","html_url":"https://github.com/NixOS/nixpkgs/pull/45412#issuecomment-416385609","issue_url":"https://api.github.com/repos/NixOS/nixpkgs/issues/45412","id":416385609,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNjM4NTYwOQ==","user":{"login":"costrouc","id":1740337,"node_id":"MDQ6VXNlcjE3NDAzMzc=","avatar_url":"https://avatars1.githubusercontent.com/u/1740337?v=4","gravatar_id":"","url":"https://api.github.com/users/costrouc","html_url":"https://github.com/costrouc","followers_url":"https://api.github.com/users/costrouc/followers","following_url":"https://api.github.com/users/costrouc/following{/other_user}","gists_url":"https://api.github.com/users/costrouc/gists{/gist_id}","starred_url":"https://api.github.com/users/costrouc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/costrouc/subscriptions","organizations_url":"https://api.github.com/users/costrouc/orgs","repos_url":"https://api.github.com/users/costrouc/repos","events_url":"https://api.github.com/users/costrouc/events{/privacy}","received_events_url":"https://api.github.com/users/costrouc/received_events","type":"User","site_admin":false},"created_at":"2018-08-27T22:10:26Z","updated_at":"2018-08-27T22:10:26Z","author_association":"CONTRIBUTOR","body":"All I have taken the suggestions from everyone and here is what I have arrived at with these changes.\r\n\r\nThe `pkgs.minecraft-server` package changes:\r\n  - exposes multiple versions (with 1.13.1 being default) `minecraft-server1122`, `minecraft-server1130`, `minecraft-server1131`. It is trivial to add older versions.\r\n\r\nThe `services.minecraft-server` service changes:\r\n  - three new options\r\n     - `eula`: true/false. This will symlink the eula.txt to `/nix/store/...` it will always overwrite.\r\n     - `whitelist`: default value null will not overwrite `whitelist.json` if user specifies whitelist it will symlink over with `/nix/store/..../whitelist.json` (this does not enfore the whitelist you have to specify that in `server.properties`.\r\n     - `serverProperties`: this was the most controversial option and there is not a perfect solution as far as I am aware. minecraft insists that this file is writable (otherwise it will crash trust me I have tried many different approaches). This means that a symlink to the nix store is not possible. any attributes that the user specifies will be merged with `defaultServerProperties` which can be referenced in the file. If a `server.properties` file already exists it will copy it to `server.properties.old` if that file does not exist (this way it does not throw away previous configuration). Since all the state is managed by nixos all the appropriate ports specified in `serverProperties` will be properly exposed in the firewall. This means that running minecraft on a different port is easy."}}
{"actor":{"display_login":"costrouc"}}