As I was working on libgnusocial I went into trouble because we have three different git repositories: Gitlab, Github & code.freedombone.net and I wanted to keep them all updated. To do this I just work with one (at Gitlab) and I treat the others as mirrors. First of all, to mirror a git repository we need to clone it using the “mirror” argument:
$ git clone --mirror https://gitlab.com/user/repository
Then move into the cloned repository directory (which git ends in “.git” due to the mirror cloning process):
$ cd repository.git
And finally push into an empty repository or an outdated mirror of our repository:
$ git push --mirror https://gitlab.com/user/another_repository
“i3 is a tiling window manager, completely written from scratch. The target platforms are GNU/Linux and BSD operating systems, our code is Free and Open Source Software (FOSS) under the BSD license. i3 is primarily targeted at advanced users and developers.” — i3wm.org
I’ve just moved to Devuan GNU/Linux 1.0.0 “Jessie” and installed i3wm as desktop environment. While I was setting it up I wanted to set a wallpaper (instead of the black background that comes by default) chosen from those stored in a directory. First of all we have to install the tool “feh”. In Debian/Devuan:
# apt-get install feh
Now, we have to add to the end of the i3 config file (located in ~/.i3/config) the following line (which simply calls feh):
exec --no-startup-id feh --randomize --bg-scale /path/to/wallpapers/*
And then restart i3wm (at least in my case it doesn’t work just reload).
While I was trying to clone the libmicrohttpd Git repository I got the following fail:
fatal: unable to access 'https://gnunet.org/git/libmicrohttpd.git/': server certificate verification failed.
The easy way to fix it’s disable the SSL verification at the same command line where we clone the repository, by setting the GIT_SSL_NO_VERIFY variable to “true”.
$ GIT_SSL_NO_VERIFY=true git clone --recursive https://gnunet.org/git/libmicrohttpd.git/
We’ll get our local copy of the repository. If we’re going to work on it rather than just compiling or installing (that was my case) then we can disable SSL certification checking for that repository:
$ git config http.sslVerify "false"
First of all you need to install the following build utilities which are part of the GNU project:
Also you have to install the packages that are required by GnuSocialShell itself:
- libreadline (optional; just if you wish to have TAB-autocompletion)
In Debian GNU/Linux (and derivates such as Ubuntu, Linux Mint, Trisquel GNU, …) you can get them using APT:
# apt-get install gcc make libcurl4-gnutls-dev autotools-dev autoconf libreadline-dev
Get the Source Code
You can get the source code of GnuSocialShell 1.3.0 as a ZIP file from this link. Once you get it, unzip it.
To compile GnuSocialShell just open a shell/terminal emulator in the unzipped directory and type:
$ touch config.rpath && autoreconf -iv && ./configure --prefix=/usr/local && make
If everything is okay (it should be) you will get a binary file called “gnusocialshell” in the compilation directory. You can also install it into your system by typing (as root):
# make install
The installation directory is /usr/local/bin. If you want to install it in /usr/bin just set the prefix of ./configure to /usr in the compilation command. To remove GnuSocialShell from your system, type:
# make uninstall
Before you use GnuSocialShell you have to configurate it; Please read “Setting up GnuSocialShell 1.3.0” (not redacted yet)