Customizeable Home Screens


@Biggy the version of pocket-home we shipped should have been able to handle more than 6 applications. Extra applications were intended to fill 3x2 grid “pages” in the order they are defined. This is broken in the shipped build.

Category lists were one of our original prototypes that got scrapped. Part of the design philosophy is to only take the most fundamental UI ideas from across all the contemporary paradigms: PDA, Desktop, Laptop, handheld console, smart phone. As people have pointed out, it’s very simple. We need to be very careful and deliberate in adding new UI, especially UI that creates hierarchy and other kinds of cognitive overhead.

One problem with adding hierarchies is that we currently have a spacial consistency: left and right move through broad system features, grouped into locations (power, run, settings), while up and down allow location sub-navigation (scrolling, listing, searching). Are categories a system level feature, or a function of listing? If they are a system feature you’re adding required actions to the navigation that takes you to power and settings. If they are a function of listing, you’re adding a new level of abstraction into the flat list. It’s been instructive to me to consider the evolution of the iPhone UI since its inception, they played this game very well for a long time but you can see now a decade later they’re getting snarled up in the abstractions they added.

Please feel encouraged to advocate for your features and design ideas though, we need to hear people’s thoughts.

Obviously if you prefer classic Linux style desktop environments you’re always free to use them. Also I really hope someone comes along and makes a UI that everyone likes better than ours. We just want it to be good. We’re not trying to be Apple in any way, other than making nice UI that novices can use. We’d like to see Linux get more use in the hands of people who need it most: the broader computing audience.


I absolutely understand and respect your design decisions.
I don’t believe that NTCs philosophy and my feature “request” are completely incongruent. The broad system feature pages feature a pink background, presumably to give it some visual sense of importance over the app list. So when scrolling side to side on an app list, maintaining the “standard” background would differentiate from the corner button pink menus without adding any confusion.

Spatial consistency can be maintained as well. Corner buttons(diagonals) are for broad system pages. Up/down/left/right are for apps.

Just my 5 cents (we don’t have pennies in Canada, and the poor exchange rate will knock it down to about $0.02USD anyways)

[EDIT] I also believe that this should not be “enabled” by default in a prepackaged config file, but to allow someone to modify their own lists to be more to their personal liking. I love the UI, but would like just a little more control over segregating apps.
I mean you could also implement my request with “folders” in the UI, but I hate that idea and would never advocate for it. In fact forget I mentioned it.:yum:


I am happy to assist in any coding or testing. I have my home screens completely customised now and I am up to speed on the code.


@ahk I got your branch(ahk/scalable-layout) to build and install but it still crashes on the 7th icon

(The “Steps” below are more like sections than steps :wink:

Step 1:
sudo apt-get -y install git build-essential libx11-dev libxrandr-dev libxcursor-dev libxft-dev libxinerama-dev libnm-glib-dev network-manager-dev

sudo apt-get -y install freeglut3-dev libasound2-dev libfreetype6-dev libjack-dev libx11-dev libxcomposite-dev libxcursor-dev libxinerama-dev mesa-common-dev libi2c-dev libxrandr-dev

(Note: the two apt-get installs above can be combined, I kept them separate because the first is from the READ.ME and the second is what I added)

Step 2:
mkdir under Documents called code
cd code

Step 3:
git init
git clone -b ahk/scalable-layout

Step 4:
cd PocketCHIP-pocket-home
git pull && git submodule init && git submodule update && git submodule status

Step 5:

make devinstall

sudo reboot

Finally I edited the .json file to add the 7th icon, and rebooted but the pocket home crashes when I hit the bottom arrow on the screen to go to the second page.


Thank you for your advices, I will make my pull request today :relaxed:

**Edit:**I have done the pull request for fixing the pages

How can I do Internet search with CHIP on my WiFi network

Hello guys, so today I have been working on a feature I already talked about : personalization. So here is a NEW version :grin:

Here are some screenshots :
On the settings page

On the personalization page :

When adding an icon :

Features :

  • Change the background (Either color or image)
  • Add an icon to the menu

Download link :

To be able to modify (add icons or change the background color), you need change the permissions of the config file. Here is the command to type :
sudo chmod 666 /usr/share/pocket-home/config.json
If it still doesn’t work, try to change the owner of the file with the command :
sudo chown your-username:your-username /user/share/pocket-home/config.json
(you can get your username via the command echo $USER)
If it still doesn’t work, replace your config.json by this config.json

Untar the archive : tar xvf pocket-home-personalize.tar
Then you get the binary (pocket-home). As usual, you can either launch it at every boot or simply replace the original binary by the downloaded one (you can keep the original as a backup)

To be done :

  • Delete mode in the main menu (to remove any icon)

The color format is an 6-digit hex value, so for example for black, you must write 000000, for red : FF0000, and so on…
If the info given for creating a new icon are correct but the value for the background (invalid color) is wrong : the icon will be added but the color won’t be saved (and the field will display “Invalid color”)
For putting an image as background, you can either write an absolute path (starting with / or ~) or a relative path (which will look inside the default asset folder)

When changing the background, the config file is modified so to see the changes, the binary needs to be launched again (or simply reboot the Pocket CHIP)

As usual, if you have any suggestion, advice or you encounter any bug, tell me :wink:


That’s some amazing work @marshmallow Keep it up!


@marshmallow Thanks for the fork :slight_smile:
Thanks for making a pull request for the icon fix!


@marshmallow wow, just wow, too bad I’m made of so much noob and coward to try to use it, , ,


I am so going to add this when I finally receive my pocketCHIP. Looking forward to more updates as well. Thank you!


Nothing to be afraid of, try it out. Make a back up and go to town. (^*^)


You could also just find the relevant commits and add them to one of your branches using:
git cherry-pick <commit>
I have been researching using git as I am just now using it for the first time. I did that this morning with the battery percentage commit on my fork.
I have been try to knock the rust off the last few days, I’m up to my knees in iron oxide… Next it on to re-learn c++.


Thanks! I knew there had to be a way to grab the commit, was going to Google that but you saved me the trouble.


Thank you all for your support ! :smiley:

@Biggy & @Hungrypipo : All the features I add are on the branch master and all the fixes which I make a pull request for are on the branch upstream of my repo. Because I don’t know whether NTC needs those features so I don’t include it in the pull request (for the moment)

@BigBadHodad I have made this home to let any user change personalize their home without modifying any .json manually or copying file to asset folder. The colors are like HTML’s :wink:
If you are afraid you can simply make a backup of your original pocket-home (and config.json if you want) :wink:


For me it just hangs on the PocketCHIP logo text and does not go forward. I have made sure it is executable and readable, please help
It says “segmentation fault” I think it is the config let me check


Fixed the syntax was wrong


The syntax was wrong before installing it ?


Thank you for all you did and do, I’m switching to your repo!


Yes it was me I forgot to add a quote and a comma


Where is the original file located? I have the new one and can’t find the other to replace it.