bitcoinxt / website

Website sources for bitcoinxt.software
6 stars 12 forks source link

Use Jekyll instead of Serve #22

Closed ghost1542 closed 9 years ago

ghost1542 commented 9 years ago

Live preview: (Merged)

HTML diff: (Merged)

New README: (Merged)

Although jekyll is yet another imperfect tool, it seems to me that it's more flexible, documented, widely used, supported, and is a bit less complicate (for instance no strange duplication and update of content under public/). It's also the same generator used by bitcoinj.org (more consistency often doesn't hurt).

I don't know if Serve did support similar features, but Jekyll should also make it fairly accessible to use templates with custom variables to not duplicate layouts, should this option be prefered with translations in the future.

This pull request also comes with a few other changes:

ghost1542 commented 9 years ago

Note; I can update this pull request will recent changes if there is any interest with merging it. Although it'd be much better if not too much of them accumulate.

mikehearn commented 9 years ago

Sorry Saivann, I know rebasing is a pain.

I'm totally in favour of merging this. If you update it to catch up with the last few commits I promise I won't do any more merges until this one is in.

ghost1542 commented 9 years ago

@mikehearn Don't worry. PR, live preview and HTML diff updated. Thanks!

mikehearn commented 9 years ago

Hmm, the changes to welcome.html undo the commit I just made to move 0.11A -> 0.11B - is this properly rebased?

ghost1542 commented 9 years ago

@mikehearn Sorry for this one! This seems to be the only commit I missed, I just added it and re-generated the live preview and HTML diff, and overviewed the recent commits and HTML diff again without finding additional mistakes.

mikehearn commented 9 years ago

Brilliant, thanks!

ghost1542 commented 9 years ago

Just tested the download link with Linux 64bit and Windows 32bit on the updated site without issues.

NxtChg commented 9 years ago

@saivann Damn you and your Jekyll!

I tried to install it today. One of the gems wanted DevKit. So I went to download it. Oops, multiple versions, need to go back and check which version of Ruby I have and whether it's x86 or x64. Then downloaded 38 Mb DevKit. Unpacked 370 Mb of crap. Inited. Installed. Installed 32 gems for Jekyll. Still doesn't start - now hitimes (the high-precision timer library! How relevant for this site!) doesn't start because it's only built for version 2.1 of Ruby for some reason, or something.

Sorry, I simply don't have time for this. You want people to contribute and yet force them to jump through multiple hoops, just to be able to test their changes? This is what I absolutely hate about open-source development and its culture of "source-only, always compile yourself" and a gazillion of inter-dependent libraries of different versions! If you find messing with all this stuff interesting - feel free. I prefer the amount of overhead to be sane when compared to the amount of actual work.

You lost one contributor because you've decided that using some fancy framework for a 5-page site is a neat idea.

mikehearn commented 9 years ago

Hmm, that really sucks @NxtChg. What OS are you on? I didn't have any issues installing Jekyll by following the instructions (on MacOS 10.10 here) and didn't realise anyone might have issues getting it working.

I agree both Jekyll and Serve seem like kind of overkill for such a simple site. I'm not a big fan of Ruby for these sorts of reasons .... almost tempted to just throw together a custom Python script or something. But it's done now.

If you have content changes you can send them to me and I'll do the site fiddling needed to make it work.

ghost1542 commented 9 years ago

@NxtChg Did you install and run jekyll according to the instructions in the README?

https://github.com/bitcoinxt/website#how-do-i-install-and-run-jekyll

If so, this would have been very straightforward in theory. I'd be happy if you could provide details about what's happening (in particular your OS for now). BTW I also agree that these tools can be an overkill, we were already using a fancy generator which could have had this kind of issue, so jekyll didn't seem any worse. It would have been great if you had been around to test and mention those issues before the pull request was merged, it could have been withheld.

ghost1542 commented 9 years ago

For the record, I just tested the current setup instructions against Windows XP 32bit to see if I could reproduce the issue. I installed Ruby 2.0 (which seems to be the last one working on XP), and also got to install the Ruby DevKit (I wasn't aware of this step on Windows, maybe worth a mention in the README), but once done, I couldn't reproduce the issue. gem install bundle and bundle install worked just fine and I was able to preview the website locally with bundle exec jekyll serve... Current setup was also tested on Linux Ubuntu 15.04 64bit.

NxtChg commented 9 years ago

I am on Windows indeed, at its another major annoyance, that even if it is the most widely used consumer OS in the world, the open-source culture still treats it like an afterthought. "Oh, Windows, ew." Anyway, no point grumbling.

I have Windows 8.1 and Ruby 2.2 and hitimes seems to be compiled only for 2.1. And some genius decided to link native gem libraries to msvcrt-ruby210.dll (Argh!) and of course I don't have it in Ruby 2.2. I have mscrt-ruby220.dll and no, you cannot just rename it!

I planned to spend 10 min adding one paragraph about Coinify to Who's on Board, then spent 20 min trying to install Jekyll, at which point I gave up because 200% overhead is crazy.

ghost1542 commented 9 years ago

@NxtChg As @mikehearn said, you're welcome to contribute untested changes in particular if these are trivial ones (as the likeliness of real mistakes is low).

Other than that, Windows is not an afterthought for me, I am happy to try fixing the issue you're experiencing. Current setup should have worked fine in theory on all usual OS, but you haven't been lucky (Even on Windows 8 64bit, I couldn't reproduce the issue).

The issue you're experiencing may be fixed in hitimes 1.2.3 . In case you want to help preventing that issue for future contributors and yourself, could you update hitimes version number to 1.2.3 in Gemfile.lock and run bundle install again to see if that fixes the issue?

NxtChg commented 9 years ago

Yes, the dll issue was fixed in 1.2.3, but now "timers" refuses to "require" hitimes. I can do "gem which" perfectly fine and require it from a test ruby file, but "timers" gives me LoadError. I tried to solve it, but couldn't, so just commented "require 'hitimes'" out. Seems working so far.