Wednesday, December 25, 2019

git - building from source on CentOS 6

I wanted to revise my knowledge and skills in git.

Taking a GitHub course sounded like a good idea, but git is invasive into user/credentials/config matters so I didn't dare to do it from my main user.

Old CentOS 6 machine collects dust under my desk and no one cares about it. Why cannot I make my git lessons on it?

$ git --version
$ git version 1.7. ..
(cannot recall the last digit)

Upgrade does not help - the official RHEL repository only has outdated version.
Should I add another repository and try upgrading from there?.. Or perhaps just try building from source?

Let's get source:

$ mkdir gitsource
$ cd gitsource
$ git clone https://github.com/git/git

Now I have the source in gitsource/git. Googling for build instructions leads me here and I do exactly as it reads:

$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
$ yum install gcc perl-ExtUtils-MakeMaker

This provides me with old as my life gcc version 4.4.7 and all rusty rest.

Let's start building:

$ cd git $ make prefix=/usr/local/git all

It runs... Uuups! git-http-fetch error 1

Googling the error. Answers look unrelated.

Looking up the terminal. Compiler goes to anaconda directory at different user. What is in the PATH? Exactly! The path to anaconda goes first. Remove it.

No more errors.

$ make prefix=/usr/local/git install
$ echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc

It's not the best idea to change global PATH, just have stumbled at it, but at least adding it at the end.

Checking:

$ git --version
$ git version 2.24.GIT

Now I can start learning.

Thursday, August 22, 2019

The very beginning

I decided to begin with static part of the site.

When one makes a business or thematic website he tries to choose a backend that can cover all necessary features and then builds everything in it.

I'm going to try and demonstrate many different things and would like to place each in one of its best environments. It means I need different backends.

So I'm beginning with simplest one - static.

There are a number of reasons to make part of the site static:

  • I don't build websites on daily basis. Last 12 years I mostly code in C++ and need to refresh my knowledge and skils in web design and developing.
  • My domain registrator allows me to place a static site on their server for free. I find it a good idea to begin with free option and add paid ones when I really need them and know exactly what I need.
  • It's interesting to explore how much can one do in confines of a static site.

I started with refreshing my HTML, CSS and client-side JavaScript.

When you are entering a new or well-forgotten field, the best first step is to find a good overview.

I strongly believe that "Get Started" articles are not the best starting point. You need to see the whole thing or at least as much of it as possible form a "helicopter perspective" before diving into it head first.

I was lucky to find rather good HTML/CSS overview in this tutorial. I was so impressed that asked the author if I can translate it into Russian and Bulgarian. Unfortunately I've not received any answer yet.


In the same time I tried to find a designer for my site. Technical details are my cup of tea, but design... I'm a painter with the stress on pain :(

Unfortunately this position is still open. People prefer providing laymans with turn-key solutions. When I tell I need design without technical implementation their smiles fade...