If you have just unpacked your Librem and you are a relative newbie to Gnome & GNU/Linux, then this thread will hopefully be of help.
I haven’t had a linux laptop since my days as a college student, I remember it was quite a task to configure and setup your environment and shoftware packages that you needed to get productive.
I unpack my new Librem15v3 a few days ago and have spent the entire past 2 days setting it up to the point where I can start working efficiently on it. I run a small consultancy company and develop a number of WordPress plugins as part of the work I do.
Librem review
There is a nice review of Librem 15v3 by Sean Tiley which is worth a read for you to better understand your machine. Most of it also applies to the Librem 13v3 I believe. Here is an excellent in-depth video review of tge Librem15v2 which is well worth a watch.
So I wanted my laptop to be able to,
- run a LAMP stack (you can read my post on this forum here).
- run firefox and chrome (I need to test std html/css/javascript on chrome and firefox), I couldn’t get Iceweasel to work.
- run skype, I need this to connect with team members/clients.
- install a github gui client (I still prefer a visual colour highligher to see file changes)
- generally improve the dekstop appearance and layout to make it visually more communicative. I am not a big fan of the default ‘Activities’ button to keep switching window panes.
Ok, I know that this is not very orthodox, installing skype/chrome on a machine that strives hard to be free, and I apologise to those who might take offence, but pragmatism is a powerful incentive.
So first thing first, PureOS is based on Debian flavour of GNU/Linux, and therefore the way packages (softwares) are bundled, installed and managed differs from other variations of Linux. This is important when you want to install binaries such as firefox/chrome/skype as you need to make sure you download the right files, they have a .deb extension.
Installing external debian pacakges on PureOS
the pureOS repo does not always contains the packages you need. So you can either install another repo source or donwload the debian package and install it using the debian package manager,
sudo dpkg -i <file-name>.deb
doing this will likely results in a partial installation and you will get a wanring message that some dependency library are not installed. I found that the easiest way to fix this is to take the first dependency library the packager is complaining about and try to install it from the pureOS repo using,
sudo apt install <missing-library-name>
at this point you will get more dependency error messages, as the library you are trying to install is itself dependent on other libraries, but you can remedy this by asking the software manager to fix it all for you,
sudo apt --fix-broken install
and voila, the software manager will now install all the libraries required and ensure you debian package installation is complete.
Setting up a development environment
setting up the LAMP stack needed a little bit of juggling and help from google searches, but you can read about it in this thread.
I found various UI clients for gitHub, and settled for giggle which runs on the GTK+ libraries and is integrated with GNOME. Git cola is another one that looked very nice, but it runs on the Qt libraries which do not come pre-installed with PureOS and would mean a heavier memory footprint compared to giggle. My first choise was gitg, but somehow it dind’t work properly and I didn’t want to spend time figuring out why.
I also installed atom.io (debian package) which is the editor I have been using to develop with WordPress. Bluefish is also another excellent editor that is available in teh PureOS repo.
Improving the overall GNOME desktop environment
First of all here is an excellent article that reviews all the various tweak available to improve the desktop to your preferences.
Bottom line, you have 2 UI interfaces to configure your GNOME desktop,
- the Settings app in your app launcher will allow you to set your backgroud and keymaps. If you use different Workspaces then I recommend you setup your shortkeys to quickly navigate between the workspaces. You can do this in the Settings app, Keyboard -> Navigation section.
- the GNOME Tweak tool. which is located in the X-GNOME Untilies section of your app launcher.
Tweaking GNOME
the tweak tool is really useful, and powerful as you can extend with 1000s of GNOME shell extensions.
Here is what I setup on my laptop,
- Appearance: I didn’t change this, I am happy with the white bgs.
- Desktop: I enableb some icons on my desktop.
- Extensions: here is a good article review of the top 10 extensions you ought to know about. Dash to Panel, is by far the most powerful transformation in desktop experience. I also installed the clipboard, the screenshot , the pomodoro, and the shutdown timer extensions. To ease the installation of these extensions, i installed the GNOME Shell extension addon in firefox, as well as the chrome-gnome-shell package available in the pureOS repo. This integrates and play nice with firefox, allowing you to browse extensions and simply toggle them on/off from the browser itself.
- Fonts: on the these HD screens, I find 11 is little hard on the eyes, so I bumped all my fonts sizes to 12.and increased the scaling factor to 1.15
- Windows: I changed the focus mode to ‘Sloppy’ which I think is one of the most useful and time-saving feature.
- Workspaces: I have always been a fan of virtual desktops as they were known initially. I set mine a static number of 3 workspaces.
I hope the above research & info helps others to configure their laptops and improve their experience of Librems.
Do you have other configurations/settings which are useful to others? Please share them below.
File Sharing on Home network
Linux has a powerful network sharing software called samba, and it can be quite complex to setup, but I managed to get some basics to work. However, by default it did not come pre-installed on my laptop, so in order to see/share folders across my home network (my mac latop / windows machine) I needed to install samba,
sudo apt install samba smb-client
next I needed to enable file sharing in my settings (Launchpad-Settings->Share). In the Nautilus file explorer (Launchpad->Files) i now have a ‘Share Options’ menu item appearing when I right-click with my mouse on any folder. This is how you select the folder you wish to share with others on the network. However, for some reason my user account isn’t given access to samba’s usershares folder configuration and therefore I get an error when trying to share a folder. To overcome this, I had to add my account username to the sambashare group,
sudo usermod -a -G sambashare
where is your account username. You’ll need to logout/login from your account for the permissions to be granted. I was then able to share my folder on the network.
However, although I could see my laptop on other machines and even connect as guest (mas OSX) i still could not see my shared folder. What I did achieve though was to see any folders I shared on my macbook/windows on my librem laptop. so it was a partial success only.
[EDIT] (I am adding some additional information below as and when they come up from the conversation below so that someone reading this post does not to go hunting through all the subsequent threads).
Hunspell dictionaries. (see this post)
setting up an HP Wifi enabled printer (see this post).