Ubuntu Gitkraken

Posted on  by 



GitKraken now offers official snap package to make it easy to install and update the software in Ubuntu Linux.

Used by the likes of Netflix, Tesla and Apple, GitKraken is the go-to home for developers who are looking for a more user-friendly interface for Git with integrations for GitHub, GitLab, Bitbucket and VSTS (Azure DevOps).

GitKraken Snap is containerised software package designed to work within most Linux desktop. It bundles its required dependencies and auto-updates itself once a new release package published.

To install GitKraken Snap in Ubuntu 18.04 and higher, simply open Ubuntu Software, search for and install gitkraken:

Git GUI client for Windows, Mac and Linux. GitKraken is a Git client built on Electron, allowing it to run natively on Windows, Mac and Linux desktop systems. See commands here: this video I am going to show you how to install latest Gitkraken on Ubuntu 17.04 and below. See above link for th. The GitKraken Git client is available for all Ubuntu Linux users, version 16.04 and above, via a downloadable DEB package. If you’re using Ubuntu and want to get the client working, start out by opening up a terminal window on the desktop.

GitKraken is a GUI client for Git, developed by Axosoft, that supports GitHub, GitLab, Bitbucket and Azure DevOps. When you create a new account you will also get access to useful tools like GitKraken Boards and GitKraken Timelines. It also has integration with Trello. Used by the likes of Netflix, Tesla and Apple, GitKraken is the go-to home for developers who are looking for a more user-friendly interface for Git with integrations for GitHub, GitLab, Bitbucket and VSTS (Azure DevOps).

For Ubuntu 16.04, open terminal (Ctrl+Alt+T) and run commands to install the snap:

Please feel free to raise any comments or issues on the website’s Github repository. Pull requests are very much appreciated.

In the following I will go through my post installation steps, i.e. which settings I choose and which apps I install and use.

Basic Steps

Go through welcome screen

This is self-explanatory. Usually I already set up Online Accounts for Nextcloud.

Get rid of unnecessary languages

Open “language” in “region settings”, do not update these, but first remove the unnecessary ones. Then reopen “languages” and update these.

Install updates and reboot

Get Thunderbolt Dock to work and adjust monitors

I use a Thunderbolt Dock (DELL TB16) with three monitors, which is great but also a bit tricky to set up (see Dell TB16 Archwiki). I noticed that sometimes I just need to plug the USB-C cable in and out a couple of times to make it work (there seems to be a loose contact). Anyways, for me the most important step is to check in “Settings-Privacy-Thunderbolt”, whether the Thunderbolt dock works, so I can rearrange my three monitors in “monitor settings”. I then save this as default for “gdm”:

Restore from Backup

I mount my luks encrypted backup storage drive using nautilus and use rsync to copy over my files and important configuration scripts:

Ubuntu Gitkraken

Sync Firefox to access password manager

I use Firefox and like to keep my bookmarks and extensions in sync. Particularly, I use Bitwarden for all my passwords.

SSH keys

If I want to create a new SSH key, I run:

Otherwise, I restore my .ssh folder from my backup. Either way, afterwards, one needs to add the file containing your key, usually id_rsa, to the ssh-agent:

Don’t forget to add your public keys to GitHub, Gitlab, Servers, etc.

Ubuntu

Filesystem optimizations: fstrim timer and tlp

Btrfs Async Discard Support Looks To Be Ready For Linux 5.6; however, I am mostly on the 5.4 kernel, so I make sure that discard is not set in either my fstab or crypttab files, and also enable the fstrim.timer systemd service:

Also, there is some debate whether tlp on btrfs is a good choice or should be deactivated. In any case, my laptops have sufficient battery power, so I remove it:

Security steps with Yubikey

I have two Yubikeys and use them

  • as second-factor for all admin/sudo tasks
  • for my private GPG key

For this I need to install several packages:

Make sure that OpenPGP and PIV are enabled on both Yubikeys as shown above.

Yubikey: two-factor authentication for admin/sudo password

Let’s set up the Yubikeys as second-factor for everything related to sudo using the common-auth pam.d module:

Yubikey: private GPG key

Let’s use the private GPG key on the Yubikey (a tutorial on how to put it there is taken from Heise or YubiKey-Guide). My public key is given in a file called /home/$USER/.gnupg/public.asc:

Apps

Flatpak support

Enable flatpak support

System utilities

arandr

In case my monitor settings need more tweaking:

Caffeine

A little helper in case my laptop needs to stay up all night

Run caffeine indicator.

Flatseal

Flatseal is a great tool to check or change the permissions of your flatpaks:

GParted

In case I need to adjust the partition layout:

Open GParted, check whether it works.

Gnome-tweaks

Using gnome tweaks

I like to display my battery life using a percentage, set do nothing on lid close, and add weekday to the clock. Also clicking on the clock I set the location for wheather.

nautilus-admin

Right-click context menu in nautilus for admin

Timeshift and timeshift-autosnap-apt

Install Timeshift and configure it directly via the GUI for easy and almost instant system snapshots with btrfs:

  • Select “BTRFS” as the “Snapshot Type”; continue with “Next”
  • Choose your BTRFS system partition as “Snapshot Location”; continue with “Next” (even if timeshift does not see a btrfs system in the GUI it will still work, so continue (I already filed a bug report with timeshift))
  • “Select Snapshot Levels” (type and number of snapshots that will be automatically created and managed/deleted by Timeshift), my recommendations:
    • Activate “Monthly” and set it to 1
    • Activate “Weekly” and set it to 3
    • Activate “Daily” and set it to 5
    • Deactivate “Hourly”
    • Activate “Boot” and set it to 3
    • Activate “Stop cron emails for scheduled tasks”
    • continue with “Next”
    • I also include the @home subvolume (which is not selected by default). Note that when you restore a snapshot Timeshift you get the choise whether you want to restore it as well (which in most cases you don’t want to).
    • Click “Finish”
  • “Create” a manual first snapshot & exit Timeshift

Timeshift will now check every hour if snapshots (“hourly”, “daily”, “weekly”, “monthly”, “boot”) need to be created or deleted. Note that “boot” snapshots will not be created directly but about 10 minutes after a system startup. Timeshift puts all snapshots into /run/timeshift/backup. Conveniently, the real root (subvolid 5) of your BTRFS partition is also mounted here, so it is easy to view, create, delete and move around snapshots manually.

Now let’s install timeshift-autosnap-apt from GitHub

After this, optionally, make changes to the configuration file:

For example, as we don’t have a dedicated /boot partition, we can set snapshotBoot=false in the timeshift-autosnap-apt-conf file to not rsync the /boot directory to /boot.backup. Note that the EFI partition is still rsynced into your snapshot to /boot.backup/efi.

Check if everything is working:

Now, if you run sudo apt install|remove|upgrade|dist-upgrade, timeshift-autosnap-apt will create a snapshot of your system with Timeshift.

Virtual machines: Quickemu and other stuff

I used to set up KVM, Qemu, virt-manager and gnome-boxes as this is much faster as VirtualBox. However, I have found a much easier tool for most tasks: Quickqemu which uses the snap package Qemu-virgil:

In case I need the old stuff:

Networking

Dropbox

Unfortunately, I still have some use case for Dropbox:

Open dropbox and set it up, check options.

Nextcloud

I have all my files synced to my own Nextcloud server, so I need the sync client:

Open Nextcloud and set it up. Recheck options and note to ignore hidden files once the first folder sync is set up.

Gitkraken Ubuntu 14.04

OpenConnect and OpenVPN

Go to Settings-Network-VPN and add openconnect for my university VPN and openvpn for ProtonVPN, check connections.

Remote desktop

To access our University remote Windows desktop session:

Note that I also add a shortcut launcher.

TigerVNC Viewer

To access my server via VNC I install a very tiny VNC viewer, which works great:

Coding

Dynare related packages

I am a developer of Dynare and need these packages to compile it from source and run it optimally ob Ubuntu-based systems:

git related packages:

git is most important, as a GUI for it, I use GitKraken. Also to use lfs on some repositories one needs to initialize it once:

The flatpak version of GitKraken works perfectly for me and I do want to avoid using PPAs or DEB packages from vendors homepages. Open GitKraken and set up Accounts and Settings. Note that in case of flatpak, one needs to add the following Custom Terminal Command: flatpak-spawn --host gnome-terminal %d.

Matlab

I have a license for MATLAB R2020a, unzipping the installation files in the the home folder and running:

sets up MATLAB perfectly. Note that there is still a shared resources-for-x11-graphics bug, which can be solved by

Run matlab and I change some settings to use Windows type shortcuts on the Keyboard, add mod files as supported extensions, and do not use MATLAB’s source control capabilities.

R

For teaching and data analysis there is nothing better than R and RStudio. These are the packages I commonly use:

whereas R-Studio needs to be installed from a deb:

Open rstudio, set it up to your liking.

Java via Openjdk

Install the default OpenJDK Runtime Environment:

Visual Studio Code

I am in the process of transitioning all my coding to Visual Studio code:

I still have to decide which extensions I find most useful.

Text-processing

Latex related packages

I write all my papers and presentations with Latex using mostly TexStudio as editor:

Open texstudio and set it up.

Meld

A very good program to visually compare differences between files and folders:

Microsoft Fonts

Sometimes I get documents which require fonts from Microsoft:

Masterpdf

I have purchased a license for Master PDF in case I need advanced PDF editing tools:

Open masterpdf and enter license. Also I use flatseal to give the app full access to my home folder.

Softmaker Office

Ubuntu Gitkraken Permission Denied

I have a personal license for Softmaker Office, which needs to be installed via deb:

Open it and enter license.

Zotero

Zotero is great to keep track of the literature I use in my research and teaching. I install it via a flatpak:

Open zotero, log in to account, install extension better-bibtex and sync.

Communication

Mattermost

Ubuntu

Our Dynare team communication is happening via Mattermost:

Open mattermost and connect to server. I find that the snap works best for me in terms of displaying the icon in the tray.

Skype

Skype can be installed either via snap or flatpak. I find the flatpak version works better with the system tray icons:

Open skype, log in and set up audio and video.

Zoom

Zoom can be installed either via snap or flatpak. I find the flatpak version works better with the system tray icons:

Open zoom, log in and set up audio and video.

Multimedia

VLC

Ubuntu Gitkraken Icon Missing

The best video player:

Open it and check whether it works.

Multimedia Codecs

Install and compile multimedia codecs:

OBS

Install:

Open OBS and set it up, import your scenes, etc.

Misc tweaks and settings

Reorder Favorites

I like to reorder the favorites on the gnome launcher such that the program are accessible via shortcuts: CTRL+1 opens the first program, CTRL+2 opens the second one and so on.

Go through all programs

Ubuntu Gitkraken

Hit META+A and go through all programs, decide whether you need them or uninstall these.

Change default apps

My default programs:

  • web: firefox
  • calendar: gnome-calendar
  • musik: vlc
  • video: vlc
  • photos: gnome-photos

Check Startup programs

I have the following startup programs:

  • Caffeine
  • Dropbox
  • ignore-lid-switch-tweak
  • im-launch
  • mattermost-desktop
  • Nextcloud
  • NVIDIA X Server Settings
  • SSH Key Agent

Bookmarks for netdrives

Using CTRL+L in nautilus, I can open the following links insider nautilus

  • university netdrive: davs://USER@wiwi-webdav.uni-muenster.de/
  • university cluster sftp://palma2c.uni-muenster.de
  • personal homepage sftp://mutschler.euand add bookmarks to these drives for easy access with nautilus.

History search in terminal using page up and page down

Printer setup

My home printer is automatically detected, but our network printer at work uses samba and needs to be set up manually. First, install some packages:

Go into printer setup and choose the right driver for the printer manually. Also I deactivate cups-browsed as I don’t need constant checking of printers on the network.

Go through Settings

  • Turn off bluetooth
  • Change wallpaper
  • Automatically delete recent files and trash
  • Turn of screen after 15 min
  • Turn on night mode
  • Add online account for Nextcloud
  • Deactivate system sounds, mute mic
  • Turn of suspend, shutdown for power button
  • Turn on natural scrool for mouse touchpad
  • Go through keyboard shortcuts and adapt, I also add a custom one for xkill on CTRL+ALT+X
  • Check region and language, remove unnecessary languages, then update
  • Change clock to 24h format




Coments are closed