====== Install HOOBS on Ubuntu 20.04 as an Unraid Virtual Machine ====== This will guide you through the setup of HOOBS on an installation of [[Ubuntu 20.04 LTS]] as an Unraid Virtual Machine. ===== VM Settings ===== * Autostart: Yes * Name: hoobs.20.04vX * Description: Hoobs * CPU Mode: Host Passthrough * Logical CPUs: 11 * Internal Memory: 1024 * Max Memory: 1024 * Machine: Q35-4.1 * BIOS: OVMF * USB Controller: 2.0 (EHCI) (I don't have USB 3.0 on current hardware) * OS Install ISO: select the ubuntu - 20.04 iso * OS Install CDRom Bus: SATA * Primary vDisk Location: Auto if on the array, below options for ssd */mnt/disks/samsung_nvme/vms/hoobs.20.04vX/vdisk1.img --> This one is vDisk on SSD (Current setup uses this) */dev/disk/by-id/ata-"ID OF DRIVE" --> This one is passthrough * Primary vDisk Size: 10G * Primary vDisk Type: raw * Primary vDisk Bus: VirtIO if on the array, below options for ssd * VirtIO --> This one is vDisk on SSD (Current setup uses this) * SATA --> This one is passthrough * Graphics Card: VNC * VNC Video Driver: QXL (best) * VNC Password: leave this blank (or set password if concerned folks will get access to unraid!) * VNC Keyboard: English-United States * Sound Card: none * Network MAC: whatever it is * Network Bridge: br0 * USB Devices: none * Other PCI Devices: none ===== Install to Virtual Machine ===== * Full Name: Dirk Rockface * Server: hoobs * User Name: dirk * Finish installing. I didn't install any "common packages" from the setup CD. ===== Setup ===== ==== Update Packages ==== sudo apt-get update sudo apt-get dist-upgrade ==== Install SSH Server ==== sudo apt-get install openssh-server ==== Create ssh-rsa key auth ==== * In home directory mkdir .ssh * authorized_keys file needs to have keys in them. Copy over from harddrive, external drive, or create them. * When making keys on clients ssh-keygen -t rsa * New things for keys: * So, ssh-keygen no longer creates the keys with the headers on them. Seems to be no big deal for ssh but Cyberduck borked. * To make private keys with headers for Cyberduck:openssl genrsa -aes128 -out id_rsa 2048 openssl rsa -in id_rsa -pubout -out id_rsa.test ssh-keygen -f id_rsa.test -i -mPKCS8 * Links: * https://rietta.com/blog/2012/01/27/openssl-generating-rsa-key-from-command/ * https://stackoverflow.com/questions/1011572/convert-pem-key-to-ssh-rsa-format * Turn off Password Authsudo vim /etc/ssh/sshd_configUsePAM yes PasswordAuthentication no ==== Reboot ==== sudo reboot -h now ===== HOOBS Prereq ===== wget -qO- https://dl.hoobs.org/stable | sudo -E bash - ===== Install HOOBS ===== sudo apt-get install hoobs ==== Connect ==== * Connect to either the internal IP or hostname if setup * Create User: Dirk Rockface / dirk * Install Plugins * Nest (Hoobs Certified) 4.5.3 at time of this wiki * myQ (Hoobs Certified) 2.6.2 at time of this wiki ==== Plugins Setup==== === myQ === * use credentials from myQ account. === Nest === * Open a Chrome browser tab in Incognito Mode (or clear your cache). * Open Developer Tools (View/Developer/Developer Tools). * Click on 'Network' tab. Make sure 'Preserve Log' is checked. * In the 'Filter' box, enter issueToken * Go to home.nest.com, and click 'Sign in with Google'. Log into your account. * One network call (beginning with iframerpc) will appear in the Dev Tools window. Click on it. * In the Headers tab, under General, copy the entire Request URL (beginning with https://accounts.google.com, ending with nest.com). This is your "issueToken" in config.json. * In the 'Filter' box, enter oauth2/iframe * Several network calls will appear in the Dev Tools window. Click on the last iframe call. * In the Headers tab, under Request Headers, copy the entire cookie (include the whole string which is several lines long and has many field/value pairs - do not include the cookie: name). This is your "cookies" in config.json. * In the 'Filter' box, enter issue_jwt * Click on the last issue_jwt call. * In the Headers tab, under Request Headers, copy the entire x-goog-api-key (do not include the x-goog-api-key: name). This is your "apiKey" in config.json. * Do not log out of home.nest.com, as this will invalidate your credentials. Just close the browser tab.