Skip to content

Conversation

@RandyMcMillan
Copy link
Contributor

@RandyMcMillan RandyMcMillan commented Oct 30, 2019

FIXES: #16836

  • Valid SVG & this config doesn't require scaling.
  • New presentation - added copyright and version info to the background image.
  • Dynamic year in the copyright notice - dynamic version number as well.
  • The result (IMO) is a good presentation that is easy to maintain
    and improve upon in a future version.
  • High Res background image working.

Normal Res
Screen Shot 2019-11-07 at 4 54 34 AM
Hi Res
Screen Shot 2019-11-07 at 4 55 16 AM

Screen Shot 2019-11-08 at 1 53 56 PM
Screen Shot 2019-11-08 at 1 54 04 PM

The svg files are valid markup. If the linter ignores these files - maybe we can re-add svg files back to the linter?

@laanwj
Copy link
Member

laanwj commented Oct 30, 2019

Concept ACK.
But please update the existing PR instead of creating a new one every time! (#17143, #17273)

@luke-jr
Copy link
Member

luke-jr commented Nov 4, 2019

Please add a copyright notice.

@RandyMcMillan
Copy link
Contributor Author

RandyMcMillan commented Nov 5, 2019

Before I push a new commit - Is there anything you think should change about the presentation?

NOTE: The year and version number are dynamic.

Screen Shot 2019-11-04 at 11 32 15 PM

Comment on lines -6 to -8
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I meant was a copyright for the SVG itself, like you see here

Copy link
Contributor Author

@RandyMcMillan RandyMcMillan Nov 5, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok - I will include the copyright header in the background.svg file.
I am pretesting my next commit

https://travis-ci.com/RandyMcMillan/bitcoin/builds/135097633

Copy link
Contributor Author

@RandyMcMillan RandyMcMillan Nov 5, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<!-- kate: space-indent off;   ... -->

Is this an artifact from an old linting tool - or does this need to stay?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It tells the Kate text editor to use tabs instead of spaces for indentation.

Unless you are switching the file to use spaces, I would prefer if it stays.

@RandyMcMillan RandyMcMillan requested a review from luke-jr November 6, 2019 03:08
@RandyMcMillan
Copy link
Contributor Author

RandyMcMillan commented Nov 6, 2019

Please add a copyright notice.

I did add the copyright notice to the background.svg file as well!
8a68941#diff-8552c751b30ae0c0bbb7a7994e13a986R3

Makefile.am Outdated
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please don't touch unmodified lines.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will correct this in the next commit.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cleaned up diff junk.

Makefile.am Outdated
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is sed -e or multiple arguments portable? (Alternatives are semicolons in a single argument, or multiple sed pipes)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The semicolon syntax didn’t play well with the $(RSVG_CONVERT) piping - But I will take another look at it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As far as I know the -e substitution syntax is more portable than the semicolon syntax because it treats every substitution as a separate “session”. Then the final state of the file is piped to the rsvg-convert library.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cleaned up this code block so it is readable - but kept the multiple -e substitutions for clarity and easier changes in the future. I looked. into it and the -e substitution syntax is widely supported.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does XML allow comments outside the root element? (I don't know)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these actually being changed?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I kept the same values but technically the gradient is different.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The goal is to keep this configuration simple. You may notice that in all of the transformations - I have intentionally made them whole numbers. It is easier to read and maintain but basically creates the same effect. Future maintainers may not have the same tools I used so I am trying to consider future maintainability in this commit.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NOTE: I thought I was done - I added the copyright notice but left out the MIT license notice.

@jonasschnelli
Copy link
Contributor

jonasschnelli commented Nov 6, 2019

Why does this still use the "Tuffy" font family? Tuffy is not a cross platform font (and its under GPL).

@luke-jr
Copy link
Member

luke-jr commented Nov 6, 2019

What's not cross-platform about it? And no, it isn't GPL... it's public domain with a catchall PD-equivalent license.

From http://tulrich.com/fonts/

I, the copyright holder of this work, hereby release it into the public domain. This applies worldwide.

In case this is not legally possible,

I grant any entity the right to use this work for any purpose, without any conditions, unless such conditions are required by law.

@jonasschnelli
Copy link
Contributor

@luke-jr:
Oh. My bad. You'r right, it's PD.

Cross platform: you need to install the font in order to render the SVG correctly. There are a handful of fonts that are available on almost all platforms.

IMO if we are going to use Tuffy, we should probably make sure its either covered/downloaded by the depends build or detected via configure.

@luke-jr
Copy link
Member

luke-jr commented Nov 6, 2019

IIRC I chose Tuffy primarily because it looked similar to the prior bitmap image's font.

I don't know any free font available on all platforms (and the non-free ones obviously aren't available on free-only platforms).

Tuffy is the current font. Any addition to the build system IMO should be a separate PR - no need to go through it here.

@jonasschnelli
Copy link
Contributor

Tested 8a68941b70c95ef33e2f65865a96745da5721a44 on macOS 10.15.

  • The generated image (background.tiff) does not contain a correct retina/HIDPI image (only 144dpi but same pixel size) (see 8a68941b70c95ef33e2f65865a96745da5721a44_background.tiff.zip)
  • The copyright line is not visible

Bildschirmfoto 2019-11-05 um 18 15 13

Uploading 8a68941b70c95ef33e2f65865a96745da5721a44_background.tiff.zip…

@RandyMcMillan
Copy link
Contributor Author

RandyMcMillan commented Nov 6, 2019

@jonasschnelli

I think I found the issue.

@RandyMcMillan
Copy link
Contributor Author

RandyMcMillan commented Nov 6, 2019

@luke-jr

In a previous attempt at this fix I concluded that fonts-liberation may be a good alternative if (or when) it comes necessary. Now that I have a better understanding of the issue - we don't need to consider a new font right now.

Adding this link for future reference: #17143 (comment)

NOTE: fonts-liberation is actually a superior option long term - it should be considered if a branding refresh is ever on the table because we can use it across the board for software deployment as well as web font (it offers an entire array of variations including monospace).

@luke-jr
Copy link
Member

luke-jr commented Nov 7, 2019

Liberation is OFL, which despite popular misconception is a non-free license.

I don't see what's wrong with continuing to use Tuffy...

@RandyMcMillan
Copy link
Contributor Author

RandyMcMillan commented Nov 7, 2019

@jonasschnelli, @luke-jr

Hi-Res working. It was a bit of a work around to fix the kerning issue.
Doing my pretests before pushing a new commit.

HighResWorking

Prelim test passed:

https://travis-ci.org/RandyMcMillan/bitcoin/builds/608624226

@RandyMcMillan RandyMcMillan requested a review from luke-jr November 7, 2019 10:03
@jonasschnelli
Copy link
Contributor

make deploy on macOS 10.15:

Background Image

Bildschirmfoto 2019-11-08 um 11 44 53

But the copyright line is missing when building with Gitian (though why?):
https://bitcoin.jonasschnelli.ch/build/1292

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is missing the MIT license lines...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is in my next commit - The editor I use keeps over writing the copy right header. Kinda obtrusive. Thanks for the feedback.

@maflcko
Copy link
Member

maflcko commented Nov 13, 2019

I don't know any free font available on all platforms (and the non-free ones obviously aren't available on free-only platforms).

Instead of hoping to pick a font that happens to be free and on all platfroms, what about picking a free font that looks best and then tracing the letters into paths, so that it works on all platforms?

I know that this makes it harder to build Bitcoin Knots, because strings can no longer be simply replaced, but at some point we'd have to make trade-offs?

@maflcko
Copy link
Member

maflcko commented Nov 13, 2019

Or maybe add the font only as a build dependency, not run-time dependency, and then have the build system trace it into a path.

@luke-jr
Copy link
Member

luke-jr commented Nov 13, 2019

That sounds like an unreasonable trade-off. We already have Tuffy as a working build dependency... We can replace it with another similarly free font, but the method itself is working fine.

@RandyMcMillan
Copy link
Contributor Author

The font discussion was centered around the idea of using a monospaced font to work around the kerning issue. This change eliminates the need to use a monospaced font - and Tuffy should be ok. No need to add a platform specific font dependency.

@DrahtBot
Copy link
Contributor

Gitian builds

File commit cd6cb97
(master)
commit 9e7fe2f5773a13708ec0de722efe0b43a1a489e0
(master and this pull)
bitcoin-0.19.99-aarch64-linux-gnu-debug.tar.gz b25191cf773b0bf8... a2363c59d80d4aa3...
bitcoin-0.19.99-aarch64-linux-gnu.tar.gz 66cddf99c1e08dde... 27addf669869ef08...
bitcoin-0.19.99-arm-linux-gnueabihf-debug.tar.gz 301fa28e49a64bbb... f9703edc81bc61f1...
bitcoin-0.19.99-arm-linux-gnueabihf.tar.gz b52d82ea2fed7f13... ae7f2aef3c290826...
bitcoin-0.19.99-i686-pc-linux-gnu-debug.tar.gz bd623b4dc3cf5a9a... b2fe8f3976947b82...
bitcoin-0.19.99-i686-pc-linux-gnu.tar.gz 5de2375b033565f1... cffe8c9d64e5a3f2...
bitcoin-0.19.99-osx-unsigned.dmg 694ef5744d2f6904... df91174c02955b9a...
bitcoin-0.19.99-osx64.tar.gz 0114ae780385b137... 51d912d768f1b005...
bitcoin-0.19.99-riscv64-linux-gnu-debug.tar.gz 294011ae38c5d280... d8fe5794cfa244e3...
bitcoin-0.19.99-riscv64-linux-gnu.tar.gz dbe88f197d552d41... bf65a028c4b35b8c...
bitcoin-0.19.99-win64-debug.zip 936007bb2ebddd0d... 7e9ca6e475a8085c...
bitcoin-0.19.99-win64-setup-unsigned.exe b3c867b01b2d44ec... 57a649f72a7c7fbe...
bitcoin-0.19.99-win64.zip 1b2d78df9702a910... 6cb676bb1901ee19...
bitcoin-0.19.99-x86_64-linux-gnu-debug.tar.gz bfb1d4efbb97a704... 66ff0f451cbceccc...
bitcoin-0.19.99-x86_64-linux-gnu.tar.gz 3511c219e80118c4... 85d421ac81ef2efb...
bitcoin-0.19.99.tar.gz 65d3c95876c7164a... a90c389d2bf2b57f...
bitcoin-core-linux-0.20-res.yml 5bff5ce92c230821... 654882f47b4f93a3...
bitcoin-core-osx-0.20-res.yml 650bf46df67ba2ff... dcc2d6e08aa01482...
bitcoin-core-win-0.20-res.yml 0a1e31be7a54ff9b... 00ccad7f94509df7...
linux-build.log 8e7bb3e54025c401... 24f7ebf3e8ff84d4...
osx-build.log 4e705989b74b32a9... 8768295a6adaab64...
win-build.log 24b7cda24344151a... 4db17563c61708ea...
bitcoin-core-linux-0.20-res.yml.diff 44253e969ebb269e...
bitcoin-core-osx-0.20-res.yml.diff 0a7b46d84b217191...
bitcoin-core-win-0.20-res.yml.diff 13d9ece39b905ba0...
linux-build.log.diff f6dc2eaf1addd0ff...
osx-build.log.diff 10dabac8e9e42fc6...
win-build.log.diff 29f7fa6472ae9d17...

@RandyMcMillan
Copy link
Contributor Author

@luke-jr - I am not sure what else needs to be done or if this PR should be closed.

MarkLTZ added a commit to litecoinz-core/litecoinz that referenced this pull request Apr 19, 2020
fixes a text scaling issue with rsvg_convert in darwin build
@DrahtBot
Copy link
Contributor

DrahtBot commented May 28, 2020

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts

No conflicts as of last run.

@Sjors
Copy link
Member

Sjors commented May 28, 2020

This looks much nicer, but note that #19068 might remove the background altogether.

@fanquake
Copy link
Member

Thanks for having a look here, but I'm going to close this. As mentioned, ideally this is something we just wont have to worry about in the future. #16836 also only applies to local builds, which means that there is nearly no-one affected by this. The gitian built images still look fine, and as far as I can tell, are already high-res? i.e this is the appearance of the 0.20.1 release on my machine:

high-res

@fanquake fanquake closed this Aug 14, 2020
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Feb 15, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

OSX: Bad kerning in disk image background

8 participants