Package Details: minecraft-bedrock-server 1.21.60.10-1

Git Clone URL: https://aur.archlinux.org/minecraft-bedrock-server.git (read-only, click to copy)
Package Base: minecraft-bedrock-server
Description: Minecraft Bedrock Server compatible with Windows and XBox Minecraft clients
Upstream URL: https://www.minecraft.net/en-us/download/server/bedrock
Keywords: bedrock minecraft server windows xbox
Licenses: custom
Submitter: Abzie
Maintainer: codrcodz (d2_ricci, NukeCode87)
Last Packager: codrcodz
Votes: 13
Popularity: 0.28
First Submitted: 2020-08-09 12:23 (UTC)
Last Updated: 2025-02-11 17:16 (UTC)

Pinned Comments

codrcodz commented on 2024-12-04 19:16 (UTC) (edited on 2024-12-04 21:13 (UTC) by codrcodz)

Package Automation

Starting with version 1.21.50.10, this AUR package uses an automated process for doing the following:

  • Identifying when a new version of the Bedrock Minecraft Server has been released
  • Downloading that new source zip file and getting its new hash plus version number
  • Updating this AUR package PKGBUILD with a new source zip file hash, version, and URL
Disclaimers & Limitations

This automated process does NOT test the functionality of the new source code itself. The upstream vendor (Mojang) may release non-functional software or change how it must be installed.

In either case, this AUR package may successfully install, but the Bedrock Minecraft server may not launch or run properly.

The automation might fail to increment this package to the latest version if there is a major change to the release mechanism used by the upstream vendor of the source zip file (i.e. they move it to a totally new URL, they significantly change the layout of the download page, et cetera).

The current download page is hosted here:

The "Minecraft Dedicated Server software for Ubuntu (Linux)" source zip file is the one that should be referenced in the PKGBUILD file for this AUR package.

Report an Issue

Please report any issues with the AUR package build automation, the AUR package PKGBUILD file contents, or the systemd unit files used to run the server in a comment here.

Issues with the upstream vendor's source code should be reported to the upstream vendor.

Learn More

If you are curious to see how the AUR package build automation works to automatically increment the package version each time there is a new release by the upstream vendor, please visit this page:

Abzie commented on 2022-06-22 21:01 (UTC) (edited on 2022-06-22 21:04 (UTC) by Abzie)

Good ole M$, you will now see the following message in the console log on startup:

================ TELEMETRY MESSAGE ===================
Server Telemetry is currently not enabled.
Enabling this telemetry helps us improve the game.

To enable this feature, add the line 'emit-server-telemetry=true'
to the server.properties file in the handheld/src-server directory
======================================================

If you do wish to enable "telemetry", add the line to /opt/minecraft-bedrock-server/server.properties.

Latest Comments

« First ‹ Previous 1 2 3 4 Next › Last »

Abzie commented on 2024-10-25 13:38 (UTC)

@codrcodz: please see my previous comment: https://aur.archlinux.org/packages/minecraft-bedrock-server#comment-995878

codrcodz commented on 2024-10-25 13:34 (UTC) (edited on 2024-10-25 13:40 (UTC) by codrcodz)

@d2_ricci, I added you as a co-maintainer. Feel free to update the SHAs and version strings in the PKGBUILD using the previous commits as a template for what all needs to be changed.

Be advised though that the crux of the issue here are the changes to the download requirements for that source zip file that you posted in your comment. The download page now has a checkbox on it (for acceptance of their license agreement) that must be clicked before a download will be allowed to take place.

Based on my testing, even if I scrape the page's source HTML and figure out the latest URL for the zip file, I can't just download it with wget or similar command-line tooling that doesn't support the page's new Javascript code, and even when switching to using a headless browser (chrome, firefox, etc), the download just hangs because the session data doesn't show that the checkbox has been clicked. I believe that their intent is to make automatic downloads painful for downstream package maintainers to ensure people are explicitly accepting the license agreement as opposed to implicitly accepting it and/or they want a better count of total downloads and stats around when they take place and by who.

This will require one of two approaches (that I can think of) to work-around it:

Option 1

Use something like Selenium along with a headless browser to click the checkbox so that the file can be downloaded automatically and then installed like usual.

Pros
  • Does not attempt to bypass the license agreement acceptance requirement, so we are at lower risk of attracting the M$ Eye of Sauron (aka the collective eye of its horde of bored lawyers).
  • We would still be allowing the user to pull the source zip directly from the upstream vendor, which is better from a security perspective.
  • Does not require any additional infrastructure to host the source zip in an alternate location.
Cons
  • Requires a lot of new build dependencies for this package (Selenium, Python, a browser, etc).
  • I am not too familiar with Selenium or AUR package management yet, so there will be a bit of a learning curve for me to get this working.
Option 2

Scrape the page for new versions and send out automatic alerts to download them manually, and then upload and host them somewhere else that doesn't require crazy dependencies to automatically install the source zip.

Pros
  • Does not require any new build dependencies or build method; just changes the source URL for the zip.
  • Does not require me to learn Selenium, Python better, and we can incrementally, more slowly learn more about AUR packaging.
Cons
  • Although I didn't see anything mentioned in the license agreement, M$ clearly put this new download method in place for a reason, and if we start hosting the source zip elsewhere, we risk attracting unwanted attention. If we go this route, I plan to post a link to the license agreement and pin it here to do our best to meet their intent.
  • We would be hosting the source zip somewhere else, thereby taking on responsibility for the security of that file. We could mitigate some of that risk by using Gitlab's package repository feature to host the source code zip there, with appropriate security on the member accounts with access to that repository.
  • Requires additional infrastructure (Gitlab or Github account) to host and manage updates; luckily, I'm pretty familiar with CI/CD pipelines, automation, and Gitlab's package repository, so this is a pretty minor con.

@d2_ricci, your thoughts (and anyone else's) on this would be greatly appreciated. If anyone else has ideas for options besides the two listed, I'm open to those as well.

Abzie commented on 2024-10-25 13:05 (UTC)

@NukeCode87: It's not as simple as grabbing the latest version number and throwing it up. MS has blocked the direct download from their servers.

The maintainer will need to keep on top of User Agents: https://wiki.archlinux.org/title/Nonfree_applications_package_guidelines#Custom_DLAGENTS which I neither have the time, nor patience, to deal with.

NukeCode87 commented on 2024-10-25 12:57 (UTC)

I'm also willing to help. If you need to update the pkgbuild yourself it is pretty easy. Go to https://www.minecraft.net/en-us/download/server/bedrock and download the Minecraft Dedicated Server software for Ubuntu (Linux) version. Update the 'pkgver=1.21.30.03' line to the version you just downloaded, 1.21.42.01 currently. run 'sha256 bedrock-server-1.21.42.01.zip' and update this line "sha256sums=('9180adaf5ffb774c8117202dccdabd904ca2d837ea9a6043275b278568470ff5'" with the new value.

d2_ricci commented on 2024-10-25 03:07 (UTC)

Id probably be able to update the PKGBUILD with version and SHA until you can get it more automated but I might need some assistance at first.

Yes I'm interested. This package means a lot to my son :)

codrcodz commented on 2024-10-25 03:00 (UTC)

@d2_ricci interested in co-maintaining this package?

d2_ricci commented on 2024-10-25 00:24 (UTC)

@codrcodz the last patch I flagged earlier this month at least allowed you to play the older client.

The patch this week needs this update to work.

https://www.minecraft.net/bedrockdedicatedserver/bin-linux/bedrock-server-1.21.42.01.zip

codrcodz commented on 2024-10-21 03:07 (UTC) (edited on 2024-10-21 03:08 (UTC) by codrcodz)

New Maintainer

Hi everyone. I am taking over as maintainer for this package.

Leaving it flagged as out-of-date for now until I can do some scripting to work around the new M$ BS that prevents the automatic download of the main source file from the Minecraft server download page.

Once I get that working, I also plan to add in some automation to do updates and testing automagically on every new release.

I want to thank Abzie for all the hard work put in over the years maintaining this package.

hendry commented on 2023-06-23 06:34 (UTC)

Anyone hitting a port error? Could just be me. https://bugs.mojang.com/browse/BDS-18482

Skeptical commented on 2023-04-09 07:48 (UTC)

Shameless Microsoft...

https://imgur.com/a/Flb5ksB