Closed lamusmaser closed 2 years ago
Yes, you are right, I should have mentioned something about that in the contribution file. I have ignored the font files from the github repo. I was meaning to lookup the licensing restrictions of google fonts before pushing a copy of the files to a public repo. Just to make sure I'm not getting into trouble with that...
I was a little bit less concerned about that to embed that into a docker image somewhere compared to a public github repo.
Regarding the workaround you have described, that makes sense. Take a look at the run.sh script, that's the file that gets executed when the container starts. The collectstatic
command there is using the whitenoise library to bundle all the app assets together. So that command only runs on start up or on restart.
So if you download the two needed font files directly from google fonts and put them into the mentioned location, the build should work fine.
I went ahead and reviewed the licensing. This is a fairly easy license to read through, and there are some quick reads that give some additional information about this particular license to see if you can a) redistribute and b) use in either personal or commercial aspects (just to cover your bases).
First, we look at the font's license page. Doesn't give much detail, but does provide that these are covered under the SIL Open Font License. That gives us the terms and conditions, but just to get this some specific questions answered, Fonts Arena has an article on various licenses.
Based on my reading of this (and this is fairly similar to the MIT License, so I have a good basis to ground against), you should be good. If you modified the font, that would also be covered under OFL, and it would have to be renamed, but if you are getting this directly from the Google Fonts page and using it unmodified, then you are covered and clear to reupload and use. Just don't make a claim that you created the font yourself or attempt to change the licensing of the font and you are golden from a legal perspective.
I've been mostly confused about this section:
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
I publish Tube Archivist under GPL-v3, so this means I'm distributing the font under an other license than they are. But it says, that does not apply to any document created, but Tube Archivist is not a document but software created utilizing and distributing the font. But I also don't change the font and it's none commercial...
So I'm sure the answer to that is out there somewhere, thanks for the links, I'll do some more research, this is new to me. I'm not a lawyer but I have read stories about open source projects who got into trouble because of things like that.
I would just abstain from using fonts that require a license. Ive removed the fonts in my fork and the webui just looks as fine as before, just a bit more free as in free ;)
OK, I had some time to look into that and as far as I can tell everything is fine. As this is a redistribution without modification, the only requirement is to provide the license text with it. So I merged it here 3500044. So the build should work fine now.
Closing the issue.
Issue:
When building the local environment using the
deploy.sh
script, thetubearchivist
image does not properly instantiate the web server.Details:
Using the base build details from the current
testing
or primary branches and then attempting to start thetubearchivist
docker image, the server does not start appropriately. This is because the web service is unable to build thestyle.css
file properly due to missing references (.tff.woff files for fonts). The server supplies a 500 response because there isn't a good home page (or any page, for that matter) to reference.Expected Result:
Server returns a 200 status response and supplies the appropriate web page response.
Actual Result:
Server returns a 500 status response and supplies no web page with the response.
Workaround Found:
Docker has a copy command, via
docker cp
, which can copy files locally. Copying the requested files (pulled from an existing, previous version and working container) into the expected location and then restarting the container allows for it to restart the web service properly and supply the Expected Result.Note:
Attempting to create the directory in the build location before creating the docker image did not produce the Expected Result. Only copying the files into the directory via
docker cp
worked to actually bring the web server into a responsive state.Logs and command outputs:
Building with
deploy.sh test
Logs showing
archivist-es
is running and workingLogs showing
archivist-redis
is running and workingLogs showing that
tubearchivist
does not start appropriately. Error is copied below.Specific error message:
docker exec
within the container showing that the font directory is missing from the relative location.docker exec
within the container showing the .css reference that failed to find the font files.Commands showing the Workaround
Showing that
tubearchivist
provides Expected Response after WorkaroundNote: Log snippet is redacted to exclude previously provided log snippet, since docker container is restarted, not redeployed.