User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Sun Jun 24, 2018 10:59 am

Hi chrisino,

I hope PINN itself is quite easy to use and I am making it easier to use all the time.
Complicated instructions that you may have seen using terminals are more than likely to do something that it was not designed to do.

Neither NOOBS nor PINN were designed to add OSes to them. When installing OSes, they allocate all of the available space to the OSes, dividing it equally between them. So there just isn't any space left on the card to add another OS. To do that it is necessary to shrink the partitions of every installed OS to make more space, then add the additional partitions, format them and install the new OSes. This is all quite complicated for a simple program like PINN. You can move/resize the partitions manually using tools like GParted, but then adding another OS will have to be done manually because PINN was never designed to do this (hence the complicated instructions).

This is an often asked question, so I am thinking of ways I can do this within the limited bounds of PINN.
The most recent enhancement to aid in this was the introduction of ProjectSpaces amd the Replace OS function. This allows you to reserve space for a future OS and then install an OS into it later. But this is no good in your case, because ProjectSpaces weren't available when you created your SD card. So for now, you will still have to mess about with terminal command shells to make the additional space on your SD card for your 3rd OS.

There are 2 main methods:
1) Turn your existing installed OSes into custom OS versions (see README_PINN.md on Github. There is also a Wiki entry on doing this). Then on a new SD card, install these 2 Custom OSes plus your 3rd new OS.
2) Backup your existing installed OSes as tar files to a USB stick. On a fresh SD card, install new copies of your 3 chosen OSes. Then wipe out the files of the 2 new OSes that you have back-ups of, and replace them with your backups.

Both of these methods allow you minimise the amount of terminal commands you need to write. If you want help with either of these methods, please raise an issue on Github and I can take you through step by step. There might be some issues on there that have already addressed this.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

User avatar
DougieLawson
Posts: 42771
Joined: Sun Jun 16, 2013 11:19 pm
Location: A small cave in deepest darkest Basingstoke, UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Sun Jun 24, 2018 11:04 am

How about another method: Move the existing stuff from an 8GB SDcard to a 16GB (or 32GB to 64GB) use the free space that appears to allow expansion of that existing stuff or addition of new stuff.

You could probably steal borrow the code from the RPF SDCard Copier (aka Piclone) to do some of that work.
Languages using left-hand whitespace for syntax are ridiculous

DMs sent on https://twitter.com/DougieLawson or LinkedIn will be answered next month.
Fake doctors - are all on my foes list.

The use of crystal balls and mind reading is prohibited.

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Sun Jun 24, 2018 12:25 pm

Yes, that would work, but the OP didn't say how big his SD card was and I had assumed he wanted to add the 3rd OS to the same SD card rather than a larger one.
I have already ported the RPF SDCard Copier (aka Piclone) into PINN, as it is used in the option to clone an SD card (or another other drive) to a new one (same, smaller or larger) by adjusting the size of the last partition, but without having to do it from a live OS.
If I kept this last partition the same I would need some new code to create the new partitions for the new OS, but I guess it's doable. I'll keep this in mind.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

chrisino
Posts: 6
Joined: Sat Jun 23, 2018 10:18 pm

Re: STICKY: PINN - An enhanced version of NOOBS.

Sun Jun 24, 2018 3:17 pm

Hi. It's a 32 gb card with LibreElec, Batocera on it. I'd like to add Raspian.

The Pinn installer just states overwrite if I add any other OS.

User avatar
DougieLawson
Posts: 42771
Joined: Sun Jun 16, 2013 11:19 pm
Location: A small cave in deepest darkest Basingstoke, UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Sun Jun 24, 2018 3:37 pm

chrisino wrote:
Sun Jun 24, 2018 3:17 pm
Hi. It's a 32 gb card with LibreElec, Batocera on it. I'd like to add Raspian.

The Pinn installer just states overwrite if I add any other OS.
You can't do that with the current design of PINN (or NOOBS).
Languages using left-hand whitespace for syntax are ridiculous

DMs sent on https://twitter.com/DougieLawson or LinkedIn will be answered next month.
Fake doctors - are all on my foes list.

The use of crystal balls and mind reading is prohibited.

chrisino
Posts: 6
Joined: Sat Jun 23, 2018 10:18 pm

Re: STICKY: PINN - An enhanced version of NOOBS.

Sun Jun 24, 2018 5:23 pm

Oh dear. Not good news. This is why Windows users don't move to Linux (after all that's what the pi offers in terms of os to install) in Windows you simply shrink the os and create a new partition on the remaining space.

If I have to mess with numerous utilities and also mess about with using a terminal it sort of puts me off.

Hey I know the Pi was invented intially to make people program and do this kind of thing but that's why casual Windows users get scared of Linux and it's variants.

It's just not as user friendly as windows and I have to admit it does make us slightly lazy as we want everything to work out of the box with minimal fuss.

Anything that can automate the process you describe or step by step instructions would be appreciated. If not then I might just start again from scratch which is not my preference.

User avatar
ShiftPlusOne
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 6460
Joined: Fri Jul 29, 2011 5:36 pm

Re: STICKY: PINN - An enhanced version of NOOBS.

Sun Jun 24, 2018 6:55 pm

chrisino wrote:
Sun Jun 24, 2018 5:23 pm
Oh dear. Not good news. This is why Windows users don't move to Linux (after all that's what the pi offers in terms of os to install) in Windows you simply shrink the os and create a new partition on the remaining space.

If I have to mess with numerous utilities and also mess about with using a terminal it sort of puts me off.

Hey I know the Pi was invented intially to make people program and do this kind of thing but that's why casual Windows users get scared of Linux and it's variants.

It's just not as user friendly as windows and I have to admit it does make us slightly lazy as we want everything to work out of the box with minimal fuss.

Anything that can automate the process you describe or step by step instructions would be appreciated. If not then I might just start again from scratch which is not my preference.
That's not a limitation of Linux though. Most installers for desktop distros will allow you to do what you're describing. It just so happens that NOOBS doesn't have this feature.

User avatar
mattrix
Posts: 143
Joined: Mon Mar 02, 2015 6:20 am
Location: New Zealand

Re: STICKY: PINN - An enhanced version of NOOBS.

Tue Jun 26, 2018 3:22 am

@chrisino

What you are asking in "Windows terms" is
- I want to shrink my Windows drive & install another version of Windows in the free space (all while I'm still booted in Windows).

Pretty sure Windows wouldn't do that "so easily".
www.matthuisman.nz

chrisino
Posts: 6
Joined: Sat Jun 23, 2018 10:18 pm

Re: STICKY: PINN - An enhanced version of NOOBS.

Tue Jun 26, 2018 10:09 pm

Hi. Not really. When you boot the pi it loads an installer. An installer should be able to pick a partition, look at the free space and then install to that space.

What Pinn does is look at the free space and say well you have free space but that's no good so you'll have to wipe the whole darn thing which is non sensical, well it is in my head!

If It won't do it then it won't do it but it doesn't make sense.

I've got Openlec on one partition, android, and batocerra. I want to install Raspian. I should have installed it when I installed the others but I didn't.

All I want to do is add another OS but now I'll have to wipe all my openelec settings ,my android setup and start again which is time consuming. Rescanning my openelec library doesn't seem much fun to be honest.

I can't honestly believe that no utility can do this easily on windows or Linux.

Oh well never mind.

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Wed Jun 27, 2018 9:15 am

chrisino wrote:
Tue Jun 26, 2018 10:09 pm
Hi. Not really. When you boot the pi it loads an installer.
Only if you choose to, and there are a few to choose from.
chrisino wrote:
Tue Jun 26, 2018 10:09 pm
An installer should be able to pick a partition, look at the free space and then install to that space.
PINN is moving towards this. I have just added the "replace OS" function, so you can replace an OS without wiping the whole SD card. In conjunction with the new ProjectSpaces, it is possible to reserve some SD card space to install an OS into at a later date. But if you have already installed 3 OSes with NOOBS/PINN, then all the SD card has already been allocated to partitions and there is no usable free space left.
chrisino wrote:
Tue Jun 26, 2018 10:09 pm
What Pinn does is look at the free space and say well you have free space but that's no good so you'll have to wipe the whole darn thing which is non sensical, well it is in my head!
Free space within a partition cannot be used to install an OS into. In order to add another OS, you need free space outside of the partitioned space. This is exactly the same on Windows. You need a partition manager to shrink your partitions and move them to the start of the disk to make more space in which you can create more partitions. There are many partition managers in Windows that do this. In Linux, a popular graphical one is GParted. This is quite a complicated process for a small minimal program such as PINN to do.

...
chrisino wrote:
Tue Jun 26, 2018 10:09 pm
I've got Openlec on one partition, android, and batocerra. I want to install Raspian. I should have installed it when I installed the others but I didn't.
Hindsight is always 20/20 vision! ;)
chrisino wrote:
Tue Jun 26, 2018 10:09 pm
All I want to do is add another OS but now I'll have to wipe all my openelec settings ,my android setup and start again which is time consuming. Rescanning my openelec library doesn't seem much fun to be honest.
No, it is not necessary to throw everything away and start again if you don't want to. I already mentioned 2 methods. Dougie mentioned a third by copying to a larger SD card, and a 4th is to use GParted to shrink your partitions and make space for Raspbian (bear in mind that Raspbian will need at least 8GB). For those latter 2 methods you'll need to do a bit more manual work to add the extra OS at the moment; NOOBS/PINN were designed to expand all OSes to fill the SD card when they were installed, so the need to 'Add an OS' to an SD card that would always be full would not make sense. You would need to do something very similar on Windows too if you have already filled your disk with OS partitions.
chrisino wrote:
Tue Jun 26, 2018 10:09 pm
I can't honestly believe that no utility can do this easily on windows or Linux.
Often you need several utilities to do something particular to your needs. The beauty of Linux is you can do most of these things from the command line. If you want to make it easier, make a script to automate it, or write your own nice graphical front-end for it, do like I did and learn how to adapt an existing program to suit your own needs, or wait for someone else to do it for you. ;)
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

hippy
Posts: 15189
Joined: Fri Sep 09, 2011 10:34 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Wed Jun 27, 2018 3:08 pm

mattrix wrote:
Tue Jun 26, 2018 3:22 am
What you are asking in "Windows terms" is
- I want to shrink my Windows drive & install another version of Windows in the free space (all while I'm still booted in Windows).

Pretty sure Windows wouldn't do that "so easily".
Last time I did that it was pretty easy. With some caveats. I recall it depends on where one wants to put new partitions, what one already has, and what's been used, primary, extended or logical partitions/drives, and there are some limits to how many of each one can have.

I usually receive systems which have been configured as a single drive and I always shrink that and split into multiple drives for booting different Windows versions and for particular data uses.

BarryHavenga
Posts: 4
Joined: Fri Jun 29, 2018 9:02 am

Re: Android 7.1.2

Fri Jun 29, 2018 9:06 am

Hi. The latest Pinn installs quite an old version of Konstakang Lineage 7.1. How do I get it to update to the latest version? Regards

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Fri Jun 29, 2018 9:44 am

Sorry for that.
I have a lot of OSes to maintain/convert to NOOBS/PINN format and little time to keep track of them, so I tend to update them in batches every now and again. Thanks for bringing Lineage to my attention and I will add it to the list that I am currently updating. Hopefully it won't be too long.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

chrisino
Posts: 6
Joined: Sat Jun 23, 2018 10:18 pm

Re: STICKY: PINN - An enhanced version of NOOBS.

Sat Jun 30, 2018 7:37 pm

Hi,

So if I want to install Raspian I need to shrink my existing os's? I can then use GParted to shrink my partitions to free up some space?

I don't have Linux so how do I A: Get GParted and B: install it and what on?

Would something in Windows not be able to do the same?

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Sat Jun 30, 2018 9:54 pm

Gparted is also available in Windows along with others.
https://www.lifewire.com/free-disk-part ... ls-2624950

I hope it goes without saying that you should backup your disk before performing such surgery on it as it has the risk of trashing everything. ;)
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

BarryHavenga
Posts: 4
Joined: Fri Jun 29, 2018 9:02 am

Re: STICKY: PINN - An enhanced version of NOOBS.

Sun Jul 01, 2018 5:33 pm

procount wrote:
Fri Jun 29, 2018 9:44 am
Sorry for that.
I have a lot of OSes to maintain/convert to NOOBS/PINN format and little time to keep track of them, so I tend to update them in batches every now and again. Thanks for bringing Lineage to my attention and I will add it to the list that I am currently updating. Hopefully it won't be too long.
Many thanks. Looking forward to it.

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Mon Jul 02, 2018 5:06 pm

PINN has been updated to v2.8.5

V2.8.5
  • Boot Cancel - Added a new cancel button to the bootselection dialog which will reboot back into PINN
  • Swedish keyboard - Swedish keyboard fixed when language selected
  • Bootable selection - The bootselection dialog is only available if a bootable OS is installed.
  • Select Option - Auto select/check OSes to be installed. select="allsd,allusb,allnetwork,waitsd,waitusb,waitnetwork,waitall,allinstalled,<osname>"
  • SilentInstall - with Select will auto-install selected OSes
  • Added Disablesdimages - Disablesdimages in recovery.cmdline will prevent OSes on SD card from being shown
  • Network start - The network is always started, even with silentinstall.
  • Flavour download - Flavours can now be downloaded from remote repos. Only need to download 1
  • Added flavours.tar.xz - Remote flavours need to include flavours.tar.xz
  • RPi Model Name - Added name of RPi model to MainMenu screen
There are 2 major changes in this release:
  1. The OS Download feature has been enhanced, so when selecting one flavour of an OS, PINN will now download ALL the flavours of that OS, including any customisations,
    so that any of those flavours can subsequently be installed from a local source.
  2. The Silentinstall feature has been enhanced to allow automatic installation of a list of OSes, without having to remove all but the one OS you want to install.
SilentInstall
This requires a bit of explanation to understand how the enhancements work.
Firstly, `silentinstall` on its own works exactly as it did before. The enhancements are enabled by including the new "select=" option.
The `select` option will do 3 things:
  1. It will prevent the normal silentinstall option of a single OS
  2. It will prevent the usual selection of all OSes that are currently installed.
  3. It will automatically select any OS that matches its selection criteria
Selection criteria
The `select=` option specifies a quoted string of selection criteria to specify which OSes shall be selected.

The simplest option is to specify `select='allinstalled`, which effectively restores the previous functionality of PINN by selecting all previously installed OSes. However, if there are any previously installed OSes, this will actually prevent `silentinstall` from working, since that requires there be NO installed OSes in order to prevent accidental overwrite of any existing OSes.

The next use is to specify a comma separated list of OS names to be selected. This allows one or more OSes to be silently installed without having to remove references to all other OSes, so it is more convenient.

Three final selection options are `allsd`, `allusb` and `allnetwork` which select OSes based the installation source of the most recent version: SD card, USB drive or downloaded from the network respectively. (allnetwork is very useful with Matt Huisman's partition specifiying WebApp) But see "modifiers" below.

Modifiers
On startup, PINN will use several different sources to compile its list of OSes that can be installed: PINN's boot recovery partition of the SD card, the /os folder on a USB drive, and its list of remote repositories specified in recovery.cmdline (using alt_image_source, repo & repo_list). Whenever it finds a duplicate OS name, it will use the most recent version of that OS to populate its install list.

The selection criteria are applied immediately that a source has been read, and Silentinstall will operate as soon as all required sources have been read. So, due to the asynchronous nature that OS sources are detected, it is possible for silentinstall to start installing OSes before the complete OS list has been populated with the most recent versions and therefore it might not chose the OS version you expect.

To guard against this, several other command line options can be specified. `waitsd`, `waitusb` and `waitnetwork` can be specified to force PINN to wait until those specific sources have been read before actioning silentinstall. (`allsd`, `allusb` and `allnetwork` automatically imply `waitsd`, `waitusb` and `waitnetwork`, respectively). Be careful not to specify `waitnetwork` or `allnetwork` when you are not connected to a network, otherwise PINN will wait indefinitley for the network to be available and prevent silentinstall from ever executing. Selecting an OS by name does not specify any source, so it may be necessary to add an appropriate wait modifier to ensure the required source has been processed. Likewise, be careful not to choose waitusb if you have no usb drive. `waitall` is equivalent to `waitsd`, `waitusb` and `waitnetwork`.

There are additional modifiers that can be used to exclude specific sources from being processed: `disableusbimages` and `disablesdimages`. These prevent the SD card and USB drives from being searched for OSes. Network sources can be excldued by removing their URL from the appropriate commandline option. `no_default_source` may be necessary to exclude the RPF repository.


NOTE: The `select` option will work on its own without the `silentinstall` option; it will select the appropriate OSes according to its selection critera but not actually install them. You can perform the install manually on the selected OSes, or perform other actions. Remember, the silentinstall option will only work if there are no OSes already installed.

(* NOTE: It may be possible to simplify this in the next version by just detecting when all OSes have been processed)

See the full documentation for more details.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Mon Jul 02, 2018 8:35 pm

Some OS Updates
  • Updated gentoo64 & gentoo64pt to v1.2.2
  • ProjectSpace partition sizes have been adapted to suit more OSes.
  • Added PiCore 9.0.3.
  • Retropie flavours for DSI are now installable/downloadable from the internet.
  • Full PINN includes the latest Raspbian & LibreELEC (& ProjectSpaces)
Now over 50K downloads of PINN! Thanks to everyone who has supported it.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: Android 7.1.2

Wed Jul 04, 2018 5:58 pm

BarryHavenga wrote:
Fri Jun 29, 2018 9:06 am
Hi. The latest Pinn installs quite an old version of Konstakang Lineage 7.1. How do I get it to update to the latest version? Regards
I had a look at Lineage15.1 (Android 8.1) and installed it.
Apart from it being structured differently to the previous v14.1 (Android 7.1.2) It's also quite slow:
This build currently uses Google’s SwiftShader software renderer so display performance is probably not what you’d expect. This build is not meant as a daily driver and it’s certainly not suitable for media device use.
So I'm not proposing to add it to PINN at present as it doesn't seem to provide much of a benefit.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

BarryHavenga
Posts: 4
Joined: Fri Jun 29, 2018 9:02 am

Re: STICKY: PINN - An enhanced version of NOOBS.

Thu Jul 05, 2018 7:19 am

Apparently the 8 versions are slow but the more recent 7.1.2 versions are better than the old ones.

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Thu Jul 05, 2018 7:24 am

I also found the rpf touchscreen turns off after a few mins and doesn't come back on again. I would stick with the 7.1.2 version
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Mon Jul 09, 2018 12:33 pm

PINN has been updated to v2.8.5.1

V2.8.5.1
  • Reinstall - BUGFIX for Re-install.
  • translations - Updated it and zh_TW translations.
  • silentreinstallnewer - USE WITH CAUTION. With `select=` it will silently re-install any selected OSes that are newer than the installed version.
After a few hiccups, the Re-install option should now be working fully.

The `silentreinstallnewer` option was added for a specific use case. Please read the full documentation for details on how this works before using.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

Haris1977
Posts: 129
Joined: Sat Jul 05, 2014 8:19 am

Re: STICKY: PINN - An enhanced version of NOOBS.

Tue Jul 10, 2018 8:34 am

@procount i ve created my own cec_keys.json file. Should i put it inside LITE-PINN's folder like in my pic i upload here? Github is a little confusing.. :oops:

https://ibb.co/k8M0go
Last edited by Haris1977 on Tue Jul 10, 2018 9:32 am, edited 2 times in total.

User avatar
procount
Posts: 2820
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: STICKY: PINN - An enhanced version of NOOBS.

Tue Jul 10, 2018 8:40 am

Yes.

In cec_keys.md it states:
The user-supplied CEC key mapping file must be called cec_keys.json and be stored in PINN's recovery partition.
So, by PINN's recovery partition, I mean the partition where PINN is stored (/dev/mmcblk0p1 on the SD card), the only partition that is visible to Windows if you put the SD card in a PC, the same partition where you will find BUILD-DATA and recovery.rfs, as in your picture.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574

Haris1977
Posts: 129
Joined: Sat Jul 05, 2014 8:19 am

Re: STICKY: PINN - An enhanced version of NOOBS.

Tue Jul 10, 2018 8:47 am

procount wrote:
Tue Jul 10, 2018 8:40 am
Yes.

In cec_keys.md it states:
The user-supplied CEC key mapping file must be called cec_keys.json and be stored in PINN's recovery partition.
So, by PINN's recovery partition, I mean the partition where PINN is stored (/dev/mmcblk0p1 on the SD card), the only partition that is visible to Windows if you put the SD card in a PC, the same partition where you will find BUILD-DATA and recovery.rfs, as in your picture.
Thanks man. It was just a little unclear though. You should add this explanation to the cec_keys.md file in order to avoid any further misunderstandings. Just my thought! :P

Return to “General discussion”