Skip to content

Include Ubuntu Mono as a shipped font #1325#1328

Closed
satnamiaman wants to merge 2 commits intoMudlet:developmentfrom
satnamiaman:development
Closed

Include Ubuntu Mono as a shipped font #1325#1328
satnamiaman wants to merge 2 commits intoMudlet:developmentfrom
satnamiaman:development

Conversation

@satnamiaman
Copy link
Copy Markdown

No description provided.

@vadi2
Copy link
Copy Markdown
Member

vadi2 commented Oct 12, 2017

I think you've included a bit too many fonts - we can only use monospace fonts, so the light/regular/heavy versions of the font aren't necessary :)

@satnamiaman
Copy link
Copy Markdown
Author

Ok going to remove them.

@vadi2
Copy link
Copy Markdown
Member

vadi2 commented Oct 12, 2017

You don't have to close the PR, you can just send a new commit in that removes them and the PR will autoupdate.

SlySven pushed a commit to SlySven/Mudlet that referenced this pull request Dec 6, 2017
SlySven pushed a commit to SlySven/Mudlet that referenced this pull request Dec 6, 2017
SlySven added a commit that referenced this pull request Jan 9, 2018
* Include Ubuntu Mono as a shipped font #1325 #1328

This is a squash-and-merge commit and the collected commit
messages have been condensed down to the following:

Adds the missing code to store the Ubuntu fonts into a resource file; but
given that Linux distro package creators may already have the fonts in
their native package range (or they do not accept the font as one they
can distribute) steps have been taken to separate out the font resources
into a separate resource file that can be omitted at build time with
an environment variable "WITH_FONTS" set to have the value "NO".

As it happens, at the time of writing the Ubuntu fonts had just been
lined up to be placed into the "non-free" area of the Debian "unstable"
version (it has been waiting around seven years because the Ubuntu Font
Licence was just restrictive enough not to be acceptable to the DFSG -
it required a certain form of naming of *modified* versions and that seemed
to impinge on a freedom that Debian demands for "Free" software). Ideally
I would have liked to not have the font files embedded directly into the
source code and instead arranged for them to be obtained from upstream
(currently:
https://launchpad.net/ubuntu/+archive/primary/+files/
                              ubuntu-font-family-sources_X.YY.orig.tar.gz )
directly but only if they were wanted.

This commit adds ALL the other (non-Monospaced) Ubuntu fonts from the
original source to Mudlet as well.

As there is a need to include the specific licence file for these fonts in
our "About Dialog" but only if they were required - this justified my
importing code similar to that which I will be using to provide
translations of the GUI part of the application.  Specifically it moves
the HTML used for the textual content for the licence and about details
from the UI form file to a C++ source file. This has to happen to allow
for variations in the content to depend on build and/or run-time conditions
and also makes it possible avoid the horrendous obfuscation that Qt
Designer wreaks on any HTML it gets it's hand on.  By using a modular
coding style it was possible to boiler-plate multiple instances of various
free but non-GPL licences that we must include - and to omit things that
are not required for different build configurations, such as not including
the licences for the recently added updater components on builds that do
not include them.

Note that the line:
Q_INIT_RESOURCE(mudlet);
should not be included in main.cpp as that macro is only needed for Qt
library projects and not application ones - it has been removed.

Also tweak the commenting of the WITH_FONTS environmental variable used to
control the feature in the qmake project file.

Added .appveyor.yml to files tracked in Git repository and displayed in
qmake-based Qt Creator environment.

Report two optional features at the same time and with the same messages on
both CMake and QMake build systems.

Also revise a comment about only downloading the "optional" fonts if needed
to no longer be a "TODO:" but instead a "it is a nice idea but not needed
right now and anyhow would add complexity"...

Prevent some messages being show thrice on platforms that parse the qmake
project file three times.

Corrected minimum Qt version for use of Qt5GamePad module from 5.8 to 5.7 .

Corrected an error that failed to include font files as a resource file in
CMake project file.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants