Use a form where the device ID can be copied to clipboard

This commit is contained in:
Bob Mottram 2016-04-10 17:18:17 +01:00
parent 072f03ba73
commit 9420316d2f
4 changed files with 44 additions and 3 deletions

View File

@ -90,6 +90,46 @@ Subsequently even if dynamic DNS isn't working you may still be able to administ
[[https://syncthing.net][Syncthing]] provides a similar capability to proprietary systems such as [[http://www.drop-dropbox.com/][Dropbox]], and also is well suited for use with low power single board computers. You can have one or more directories which are synchronized across your various laptops/desktops/devices, and this makes it hard for you to ever lose important files. The manner in which the synchronization is done is pretty secure, such that it would be difficult for passive adversaries (mass surveillance, "/men in the middle/", etc) to know what files you're sharing. Of course, you don't necessarily need to be running a server in order to use Syncthing, but if you do have a server which is always running then there's always at least one place to synchronize your files to or from.
Freedombone provides Syncthing shared directories for each user on the system, plus a single shared directory for all users. The expected most common scenario here is that of a family in which members may not want to share /all of their files/ with each other, but might want to share some in a common pool (eg. birthday photos). You can also easily share between different servers.
** On a laptop
Install syncthing:
#+BEGIN_SRC bash
curl -s https://syncthing.net/release-key.txt | sudo apt-key add -
echo "deb http://apt.syncthing.net/ syncthing release" | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt-get update
sudo apt-get install syncthing
#+END_SRC
Add syncthing to your startup applications, so that it begins running when your system starts. Then either restart your system or run the command "syncthing" from a terminal.
In another terminal log into Freedombone:
#+BEGIN_SRC bash
ssh username@domainname -p 2222
#+END_SRC
[[file:images/controlpanel/control_panel_user.jpg]]
Then select *File Synchronization*.
[[file:images/controlpanel/control_panel_file_sync.jpg]]
Select *Show device ID* and copy the long string of letters and numbers shown (usually select then CTRL+c).
Open a non-Tor browser and enter *http://127.0.0.1:8384* as the URL. You should now see the minimalistic user interface. Under *Remote Devices* select *Add Remote Device*. In the *Device ID* field paste the string you just copied (CTRL+v). The Device name can be anything. Under *Share Folders with Device* check *default* (or whatever folder you created on your local machine), then save.
From the top menu select *Actions* and then *Show ID*, then copy the ID string (usually select then CTRL+c). Go back to the terminal control panel menu and select *Add an ID* then paste what you just copied (CTRL+v). Optionally you can also provide a description so that you later can know what that string corresponds to.
Now wait for a few minutes. Eventually you will see a message appear within the browser asking if you want to add a new device (the Freedombone system). Say yes to that, and specify *~/Sync* as the directory to synchronize to. You can now copy files into your *~/Sync* directory and they will automatically be synced to the server.
** On Android
Install Syncthing and Connectbot from F-droid.
Set up Connectbot to log into Freedombone.
Open Syncthing, select the menu and then press on *Device ID*. It will be copied to the clipboard.
Select *Devices* then *Add*.
* Play Music
** With the DLNA service
An easy way to play music on any mobile device in your home is to use the DLNA service. Copy your music into a directory called "/Music/" on a USB thumb drive and then insert it into from socket on the Beaglebone.

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View File

@ -572,9 +572,10 @@ function syncthing_show_id {
fi
SYNCTHING_ID=$(cat ~/.syncthing-server-id)
dialog --title $"Device ID for ${PROJECT_NAME}" \
--backtitle $"Freedombone User Control Panel" \
--msgbox $"Within your syncthing user interface add this device ID:\n\n$SYNCTHING_ID" 8 78
dialog --backtitle $"Freedombone User Control Panel" \
--title $"Device ID for ${PROJECT_NAME}" \
--form $"You can copy and paste this into syncthing on your local system" 8 80 1 \
"" 1 1 "$SYNCTHING_ID" 1 0 80 80
}
function syncthing_add_id {