Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

systemd: change uuid generation #2708

Merged
merged 1 commit into from
Jul 7, 2018

Conversation

chewitt
Copy link
Member

@chewitt chewitt commented May 19, 2018

Using the ethernet MAC to generate a unique identifier is proving unreliable as manufacturers of some cheap ARM devices recycle the same MAC among their boxes and we cannot rely on community builders to always patch their kernels to generate a unique MAC from the CPU serial number. In the modern age of privacy it is also nice to remove the association between the unique identifier and specific user hardware.

This change also forces the machine-id to be 32-chars of lowercase hex to mitigate the "do not track" attempts of some users. A tiny minority zero/null the machine-id. The large majority use a text phrase like "do not track my install!" which due to their different languages and the artistic use of typos, punctuation and/or expletives still provides a uniquely identifiable phrase.

Active install stats for 9.0 will be fuzzy for a while as this rolls out but we age duplicates from the DB after 14d. We also lose persistence of machine-id over reinstalls but the overall percentage of users doing repeat installation on the same device is low. In the longer term we'll also see a small bump in active installs as we reduce the number of devices sharing the same machine-id.

@lrusak
Copy link
Member

lrusak commented May 19, 2018

Why don't we just use systemd-machine-id?

https://www.freedesktop.org/software/systemd/man/systemd-machine-id-setup.html

@chewitt
Copy link
Member Author

chewitt commented May 19, 2018

I tried it and ran into some weird stuff that looks like systemd doesn't like the symlink relocation from /etc to /storage and might need patching to resolve. This approach also allows content validation of the UUID and removal of the older machine-id.

@MilhouseVH MilhouseVH merged commit 65d87ea into LibreELEC:master Jul 7, 2018
@chewitt chewitt deleted the systemd-machineid branch August 10, 2018 23:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants