Skip to content

Commit

Permalink
Style: Make CTAs bold and unbold everything else
Browse files Browse the repository at this point in the history
All text used to be bold which made it difficult to understand what the task was at any point. Resolve this by making only the call-to-actions bold and the rest of the text regular.

Also add documentation for Linux installation.
  • Loading branch information
lauraenria authored and tombettany committed Mar 25, 2019
1 parent 40526b4 commit 5ace1e0
Show file tree
Hide file tree
Showing 4 changed files with 256 additions and 32 deletions.
220 changes: 215 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Install the Build-Depends as listed in debian/control file:

Add Qt5 build tools to your PATH:

```
```bash
echo 'export PATH=$PATH:/usr/local/qt5/bin' >> $HOME/.bashrc
source $HOME/.bashrc
```
Expand All @@ -41,7 +41,7 @@ You should be able to call `qmake` from a terminal shell.
Next, comes the fun part - compiling all other dependencies. Clone the following
repos and have the following structure:

```
```bash
containingFolder
|-- tactile
|-- kano-qt-sdk
Expand All @@ -50,7 +50,7 @@ containingFolder

Compile libparson and symlink its header files:

```
```bash
cd ~/Kano/kano-toolset/libs/parson
sudo mkdir -p /usr/local/include/parson
sudo ln -s `pwd`/* /usr/local/include/parson
Expand All @@ -60,7 +60,85 @@ sudo ln -s `pwd`/release/libparson.dylib /usr/local/lib

Compile libkano_logging and symlink its header files:

```bash
cd ~/Kano/kano-qt-sdk
sudo mkdir -p /usr/local/include/kano/kano_logging
sudo ln -s `pwd`/lib/kano_logging/includes/* /usr/local/include/kano/kano_logging
qmake
make
sudo ln -s `pwd`/lib/build/* /usr/local/lib
```

### Linux

NB This linux README is incomplete (installation issue not solved)

First update your system

```
sudo apt-get update
```

- Install [QtCreator 5.11](https://www.lucidar.me/en/dev-c-cpp/how-to-install-qt-creator-on-ubuntu-18-04/) or higher running these commands:

```bash
sudo apt install build-essential

sudo apt install qtcreator
```

If you want Qt 5 to be the default Qt version to be used when using development binaries like qmake, install the following package:

```bash
sudo apt install qt5-default
sudo apt install qt5-doc
sudo apt install qt5-doc-html qtbase5-doc-html
sudo apt install qtbase5-examples
```

You dont need to set the PATH, linux will do it for you!

If get the error: *cannot find feature `kano_i18n`* then clone the following
repository and have the following structure:

```bash
containingFolder
|-- tactile
|-- kano-qt-sdk
|-- kano-toolset

```

Commands:

```bash
mkdir containingFolder

mv tactile/ containingFolder/

```

Clone inside `containingFolder` the repo [kano-qt-sdk](https://github.com/KanoComputing/kano-qt-sdk) and the repo [kano-toolset](https://github.com/KanoComputing/kano-toolset)

Compile `libparson` and symlink its header files:

```bash
cd ~/Kano/kano-toolset/libs/parson
sudo mkdir -p /usr/local/include/parson
sudo ln -s `pwd`/* /usr/local/include/parson
make
```

On mac we have `libparson.dylib` that in Linux is called `libparson.so`. You
have to replace them:

```bash
sudo ln -s `pwd`/release/libparson.so /usr/local/lib
```

Compile libkano_logging and symlink its header files:

```bash
cd ~/Kano/kano-qt-sdk
sudo mkdir -p /usr/local/include/kano/kano_logging
sudo ln -s `pwd`/lib/kano_logging/includes/* /usr/local/include/kano/kano_logging
Expand All @@ -69,16 +147,148 @@ make
sudo ln -s `pwd`/lib/build/* /usr/local/lib
```

If you get an error on `make` command

```bash
Project ERROR: Unknown module(s) in QT: qml quick
```

You need to install **qml** and **quick**

```bash
sudo apt-get install qtdeclarative5-dev
```

NB You could find `parson.h` in => `/usr/local/include/parson/lib`

If you run in this error `fatal error: parson/parson.h: No such file or directory` is because `user/local/include` in not in the path

You could do momentarily a local fix

```bash
cd kano-qt-sdk

open => features/kano_build_options.prf

```

And modify the file

```diff
-macx {
- LIBS += -L/usr/lib -L/usr/local/lib
- INCLUDEPATH += /usr/include /usr/local/include
-}
+
+LIBS += -L/usr/lib -L/usr/local/lib
+INCLUDEPATH += /usr/include /usr/local/include
+
```

Eventually you should run:

```bash
run qmake
```

## Alternative way for linux to pass files to the Kano-kit

Enter in kano-kit server and copy the path that you need

1. You can find the path with the command: `dpkg-query -L <package name>` => Example: `dpkg-query -L tactile`

NOTE: `dpkg-query -L <package name> | grep <name of the file>`

NB This method won't work for a new file, use the install.file instead

2. You can find the path using the install file in the debian folder
NB You must complete manually the path

```bash
tactile
|-- bin
|-- build
|-- debian
|--tactile.install

```

Example `res/ui` is inside the kano-kit => `/usr/share/tactile`

Example path `/usr/share/tactile/`

Use this command to login inside the kano-kit's server

Syntax `ssh user@ip` => Example: `ssh [email protected]`

**NB** You can find your kano-kit ip in the wifi's icon in the kano-kit itself

Now you can syncronize your local file with the kano kit file

**NB** You must exit the kano-kit server and use **root** as **user** run before to run this command

`rsync -avi <path/where I am going copy from> [email protected]:/path/Where I going copy to/` => `rsync -av ui [email protected]:/usr/share/tactile/`

NOTE: `-n` it's gonna tell you the output without running the command for async

#### Faster approach

This command is just going to print the output

`rsync -avinr res/ui/* [email protected]:/usr/share/tactile/ui/`

See if it's ok then run the same command without the -n flag

`rsync -avir res/ui/* [email protected]:/usr/share/tactile/ui/`

If you see multiple file being update on your terminal:

```bash
<f+++++++++ Tactile/Wires/touch_a_grid.qml
<f+++++++++ Tactile/Wires/touch_a_wire.qml
<f+++++++++ Tactile/Wires/touch_indicator.qml
<f+++++++++ Tactile/Wires/touch_points.qml
<f+++++++++ Tactile/Wires/touchscreen.png
<f+++++++++ Tactile/Wires/wire.png
```

If you change the file you need to update the `debian/changelog` file

Example:

If current version tactile (4.2.0-0)

Changelog => tactile (4.3.0-0)

```bash

tactile (4.3.0-0) unstable; urgency=low

* Change default text formatting to normal

-- Team Kano <[email protected]> Tue, 12 Mar 2019 15:35:00 +0000

tactile (4.2.0-0) unstable; urgency=low

* Fixed minor spelling errors
...

```

If in the changelog file there are already changes with the next version you should just update it.

**You may be doing something wrong!**

## Building

After setting up the environment on your platform of choice, you should be able
to build the project in the same way as in the debian/rules file.
to build the project in the same way as in the `debian/rules` file.

### Raspberry Pi

Straightforwardly, compiling Tactile now is just:

```
```bash
qmake && make -j `nproc`
```

Expand Down
7 changes: 7 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
tactile (4.3.0-0) unstable; urgency=low

* Change default text formatting to normal
* Style call-to-action strings in bold

-- Team Kano <[email protected]> Tue, 13 Wed 2019 14:29:00 +0000

tactile (4.2.0-0) unstable; urgency=low

* Fixed minor spelling errors
Expand Down
5 changes: 3 additions & 2 deletions res/ui/Tactile/Components/instruction_text.qml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/**
* instruction_text.qml
*
* Copyright (C) 2018 Kano Computing Ltd.
* Copyright (C) 2018-2019 Kano Computing Ltd.
* License: http://www.gnu.org/licenses/gpl-2.0.txt GNU GPLv2
*
* Styled text
Expand All @@ -15,8 +15,9 @@ import QtQuick 2.0
Text {
font.family: "Bariol"
font.pointSize: 25
font.weight: Font.Bold
font.weight: Font.Normal
color: "white"
wrapMode: Text.WordWrap
textFormat: Text.StyledText
height: contentHeight
}
Loading

0 comments on commit 5ace1e0

Please sign in to comment.