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

Easy way to download and install MS Fonts #3297

Closed
juliushaertl opened this issue Nov 14, 2023 · 11 comments · Fixed by #3647
Closed

Easy way to download and install MS Fonts #3297

juliushaertl opened this issue Nov 14, 2023 · 11 comments · Fixed by #3647
Assignees
Labels
enhancement New feature or request feature: fonts

Comments

@juliushaertl
Copy link
Member

juliushaertl commented Nov 14, 2023

We should make sure we have the default MS Office ones - that will make sure documents from MS Office look good. Really key, I think, to ensure a good experience, as MS Office fonts and docs are used the most.

I think to ship proprietary Microsoft fonts you might have to do what Linux distributions do - download them on demand. You are likely not allowed to ship them, but they can be downloaded for free.

@juliushaertl wrote:
I'm not sure, Microsoft has a dedicated option to buy a server license

https://www.fonts.com/content/microsoft-typography

Apart from the document embedding rights described previously, you may not redistribute the Windows fonts. You may not copy them to other computers or servers, and you may not convert them to other formats, including bitmap formats, or modify them.

https://learn.microsoft.com/en-us/typography/fonts/font-faq

Yes, you and me can not do that. But a user (AKA the server admin) can dowload them for themselves. The fonts do not leave the one server and they are not distributing them.

This is how Linux distributions do it - they don't ship them. They have a script or a package that contains a script that asks the user to agree to the EULA and then downloads and installs them.

So we will need the same - a button in the UI that says "install Microsoft fonts" which then shows the EULA and then grabs them. I am sure we can't ship them and I don't think we can auto-accept the EULA like OO does.

Originally posted by @jospoortvliet in #3139 (comment)

https://git.launchpad.net/ubuntu/+source/msttcorefonts/tree/update-ms-fonts#n34

https://github.com/pop-os/msttcorefonts/blob/master_jammy/debian/postinst#L70-L80

@juliushaertl
Copy link
Member Author

  • Show a button to install MS fonts
  • Modal for EULA, Accept
  • Progress indicator and show success directly

@luka-nextcloud
Copy link
Contributor

@juliushaertl Regarding the fonts, does user have to download font files manually and then upload to install OR font files are downloaded automatically from a static url?

@juliushaertl
Copy link
Member Author

We would introduce a HTTP endpoint in the richdocuments app where the Nextcloud backend can download the files and store them, we just need to let the user manually trigger it and cannot automatically perform those downloads. Does that make it clearer?

@luka-nextcloud
Copy link
Contributor

Is the HTTP endpoint ready?
What is the file type downloaded from above endpoint? Is it a .zip file?

@juliushaertl
Copy link
Member Author

Checking what the distributions do this seems more complex https://github.com/pop-os/msttcorefonts/blob/master_jammy/debian/postinst#L70-L80

They download exe files (self extracting) from https://sourceforge.net/projects/corefonts/files/the%20fonts/ and extracts them with cabextract there is also a php sample https://github.com/lsauer/php-cab-reader/blob/master/cabreader.php, however I'm not really convinced we should go either way

@jancborchardt jancborchardt removed their assignment Mar 19, 2024
@jospoortvliet
Copy link
Member

I see we decided not to do it, perhaps we can put our full argumentation against it here before closing it. For the fidelity of documents it is a high impact feature, so we should have strong legal or technical reasons ;-)

@juliushaertl
Copy link
Member Author

Sure, quoting from chat:

About the "Office: Easy way to download and install MS fonts" feature, we ran into some problems this week with trying to push this feature forward that I don't see a proper solution for.

The only way that those fonts are offered for download is a self-extracting exe file that we cannot handle on the Nextcloud side to get the actual ttf file. Linux distributions use a cli tool "cabextract" but we cannot really rely on that and also download and extracting files from random sources sounds dangerous. We also cannot host those fonts ourselves due to the license.

Maybe we can add a link to the Admin page pointing to the download. So that people can do it manually

I’d also extend the documentation to suggest distribution packages that do this more prominent

@luka-nextcloud
Copy link
Contributor

add a link to the Admin page pointing to the download. So that people can do it manually

Is it the final decision? What is the link? Is it https://downloads.sourceforge.net/corefonts/?

@juliushaertl
Copy link
Member Author

The sourceforge link is not directly usable as there are only exe files. My suggestion would be:

apt-add-repository multiverse
apt update
apt install fontconfig ttf-mscorefonts-installer

@luka-nextcloud
Copy link
Contributor

@juliushaertl As I understand, what should be done:

  1. Update the nextcloud document to guide users how to download MS fonts
  2. Update richdocument setting screen (font install section) to provide document link to the updated section above

Please confirm.

@NikoKS
Copy link

NikoKS commented Jul 3, 2024

@luka-nextcloud, I followed the link: https://docs.nextcloud.com/server/latest/admin_manual/office/configuration.html#custom-fonts, but cannot find any mention of where to download MS fonts.

Am I missing something?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request feature: fonts
Projects
Archived in project
Archived in project
Development

Successfully merging a pull request may close this issue.

6 participants