Setup a headless Raspberry Pi Zero with Wifi from Windows- Raspbian Stretch

The Raspberry Pi Zero has an unusually sized HDMI port which means it can be hard to hook up to a monitor. If you’re just using it for the terminal you don’t need to see the output anyway. Here’s how to set it up with SSH and Wifi so you’ll just need a power cable to get started.

Download the latest Raspbian Stretch image. Don’t use the noobs installer.

Raspbian

Follow their installation guide to get it onto the SD card. You’ll need to flash the image to the card with Etcher or a similar tool to make sure everything has the correct permissions and boots properly.

https://etcher.io/

Etcher automatically ejects the disk once flashing is completed so remove it from your computer and reinsert it. You’ll probably see a message about needing to format the drive before you can use it. Be sure not to format the drive or you will have to start over.

Open a text editor like Notepad++ and create a file on the drive called “ssh”. The tricky part here is that it need to have no extension. In Windows this is kind of frowned upon but to get it to happen chose save as > change the file type to “all files (*.*)” and then save it as “ssh” with the quotation marks. The quotation marks will be stripped away and no extension will be added. This file can be blank.

Create one more file and save it as “wpa_supplicant.conf” also to the root of the drive so it’s one of the first files that you see. This file needs your wireless network information and be sure it’s correct or you’ll spend a while troubleshooting.

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
network={
    ssid="YOUR_SSID"
    psk="YOUR_WIFI_PASSWORD"
    key_mgmt=WPA-PSK
}

Then eject the drive and put it into your Raspberry Pi. You can power it up but I would recommend pulling up your router admin page now before you do. This should make it easier to spot the new IP address which you’ll need to connect to the Raspberry Pi. By default, it’s called “raspberrypi” on the network but it’s not as reliable in my experience as the IP address.

Default user and password pi and raspberry

Once you have that you’re ready to SSH into the machine with your preferred SSH program. Personally, I use Bitvise SSH which has tons of functionality but still is the easiest to configure correctly. Here’s the website. The download link is “Bitvise SSH Client installer “

How to Install Backend Theme on Odoo 11 Community

Download the theme from the theme store

https://www.odoo.com/apps/themes/11.0/backend_theme_v11/

This will contain 2 files which you need to add into your addon directory. If you installed with Bitnami then it’s in

/apps/odoo/data/addons

You need to copy the 2 files into that directory. The configuration file by default does not include this directly so you need to add it.

/apps/odoo/conf/odoo-server.conf

The first line should say “addons_path.” At the end of that line add a comma (,) and then the full path to your addon directory.

addons_path = /home/ubuntu/odoo-11.0.20171118-2/apps/odoo/lib/odoo-11.0.post20171118-py3.6.egg/odoo/addons, /home/ubuntu/odoo-11.0.20171118-2/apps/odoo/data/addons/

In Odoo go to the settings page and look for “Activate the developer mode” and click that

Then go to “Browse Apps” and remove the “Apps” from the search bar and search for theme. You may need to click “Update Apps List” if it doesn’t show up automatically.

Error Installing Bitnami Package on AWS t2.Nano – Unable to create symbolic link

I was installing the Bitnami Odoo 11 module on my AWS t2.nano. It’s a fresh instance with a 1gb swap partition and 500mb of hardware RAM. This should be enough to run most if not all Bitnami packages. However when I was installing the package ontop of Bitnami LAMP I got error messages.

Unable to create symbolic link

TLDR: You probably need to restart the machine and install from the command line.

I tried a variety of things to resolve the error

confirm that you have enough memory

free

confirm that you have sufficient disk space

df

confirm that the user can create symbolic links in the location mentioned by bitnami

link -s bitnami_source bitnami_target

If you are able to do all these things a simple restart fixed the problem for me. You can run the installed from the command line without giving resources to the GUI which also seems to help. I actually found it a little nicer than the GUI interface.

cd /user/home/directory_of_download
./bitnami-installer-packge.run --mode text

Lightweight xfce4 Setup for AWS t2.nano with Ubuntu image and remote tightVNC access

A good place to start reading and understanding what is needed for a GUI

https://help.ubuntu.com/community/Installation/LowMemorySystems

My configuration is below for a minimum system that I consider to be a useable starting point.

sudo apt install xfce4 xfce4-goodies
sudo apt install tightvncserver
tightvncserver :1
sudo apt-get install gnome-icon-theme-full tango-icon-theme
sudo apt install gksu
sudo apt install synaptic
sudo apt install chromium-browser
sudo apt install gedit

open gedit and edit the file /usr/share/applications
change Exec= to “Exec=gksudo synaptic”

Total drive size is 2.144gb when run on the AWS Ubuntu image

Create a partition for the swap so applications have access to more RAM

sudo dd if=/dev/zero of=/mnt/swap.0 bs=1024 count=1048576
sudo mkswap /mnt/swap.0

Add to fstab to automatically mount the partition

sudo su 
echo "/mnt/swap.0 swap swap defaults 0 0" >> /etc/fstab
swapon /mnt/swap.0

Check your work

sudo swapon -s

https://docs.bitnami.com/installer/faq/linux-faq/#how-to-download-and-install-a-bitnami-stack

How to setup lxde tightVNCserver on AWS t2.nano

This will install the most basic desktop environment without any browser or package managers etc. It’s very limited and in my opinion not worth the extra configuration to get it up and running.

# Make sure Debian is the latest and greatest

sudo apt update && sudo apt upgrade

# Install X, LXDE, VPN programs

sudo apt install xorg lxde-core tightvncserver

# Start VNC to create config file and setup your password

tightvncserver :1

# To stop VNC sever if needed

tightvncserver -kill :1

https://www.vandorp.biz/2012/01/installing-a-lightweight-lxdevnc-desktop-environment-on-your-ubuntudebian-vps/

I did not need to follow these steps and tight VNC Server was working

# Edit config file to start session with LXDE: 
nano ~/.vnc/xstartup 

# Add this at the bottom of the file: 
lxterminal & 
/usr/bin/lxsession -s LXDE &

 

 

Mount a SFTP connection to a folder in Ubuntu / Linux

To do this I used a program called SSHFS which has done a great job. First, install if from the repo

sudo apt-get install sshfs

You’ll need to create a directory to use as the location for your files

sudo mkdir /mnt/sshftps

Execute the command to connect the actual SFTP Server. Replace xxx.xxx with the target IP address and use the -p option to specify the connection port. The user parameter is your user name. The :/ at the end of the IP address indicates the end of the IP address. Don’t try to put the port number after the colon

sudo sshfs -o allow_other -p 6789 user@xxx.xx.xxx.xx:/ /mnt/sshftps

This will create a semi-permanent connection which will close if the machine is restarted. You can create a permanent connection which will reopen when the machine starts by editing the fstab file in /etc/fstab. Add a command to the end and restart the machine. Personally, I haven’t tried this because it’s a potential security risk and I didn’t need 100% uptime.

sshfs#username@xxx.xxx.xxx.xxx:/ /mnt/sshftp

Plex Running on Ubuntu / Linux / Lubuntu Doesn’t Display My External Drive

When moving all my files onto an external drive Plex was able to display the drive but was unable to read the content of the folder.

Changing group ownership and permissions did not solve this problem.
The drive was formatted with NTFS before being installing it in a housing and connected to the Linux machine.

The problem is caused by the default mounting parameters when first connecting the drive. In order to fix it you will need to manually setup the drive by editing the fstab file. Use this command

sudo blkid

This will get you the drive UUID of the drive that you need. Look at the labels until one of them looks familiar. You can also use the built in disk utility to get this number. System > Disks > “Gear Icon” > Edit Mount Options but it’s harder than just doing it in the terminal.

Create a folder to use as the path for your drive. I used /media/Videos since that’s what I would be storing.

sudo mkdir /media/Videos

Open the fstab file and add this line to the end using the UUID that you just found.

sudo gedit /etc/fstab
UUID=E12345A1234C1A12345 /media/Videos ntfs-3g defaults,permissions,auto 0 1

It’s easiest just to restart your computer to get these changes applied. You could also unmount the drive and then run the mount command which will pick up the new settings from the fstab file. If you have trouble with this just reboot

sudo mount /media/Videos

Without doing the next couple of steps I didn’t consistently have problems but I did have problems with permissions and file transfer being denied

cd /etc/samba
sudo gedit smb.conf

Scroll to the bottom and add into the section that was just created with the name of your share [videos] in this case

force user = yourUserName

And then restart Samba

sudo restart smbd

This other post helped me get up and running if you want another take on the same process.
http://travelinlibrarian.info/2013/05/how-to-share-an-external-usb-hard-drive-from-ubuntu-to-a-windows-network/

Odoo 10 Install a backend theme from git sources

Specifically, I wanted to install this responsive backend theme so I could get convenient access from my phone.

https://www.odoo.com/apps/themes/10.0/backend_theme_v10/

I found the sources on git : https://github.com/Openworx/backend_theme.git

use git clone to checkout the sources into your /opt/odoo10/custom/addons folder. All themes are addons so they go in this folder. Confirm that this custom folder is part of the addons path in the config file (/etc/odoo/odoo.conf for odoo 10)

cd /opt.odoo10/custom/addons/
git clone --depth 1 https://github.com/Openworx/backend_theme.git

the problem is that git clone doesn’t do the folder structure exactly as Odoo expects it so create a symlink to the proper directory.

ln -s /opt/odoo10/custom/addons/backend_theme/backend_theme_v10 /opt/odoo10/custom/addons/backend_theme_v10

enter developer mode in your Odoo10 interface which is located in Settings on the right-hand side under “share the love.” Click on “Browse Apps” which is automatically filtered to include only “apps” so clear that from the search area and search for the name of the theme you installed. In this example, it’s Material/United Backend Theme.

Click Install on the theme and you’re finished! Now you can use git to check for updates to the theme or have them automatically pulled down with a chron job. You’ll need to hit the upgrade button to apply any pulled updates.