Clean Startup-Installation

Hi,
I would like to have an clean Startup-Installation without «Typo3.NeosDemoTypo3Org» Site-Package from beginning. Is there an different command for composer create-project typo3/neos-base-distribution DirectoryName

I used the explanation from https://punkt.de/de/blog/2016/neos-workshop/neos-workshop-teil-2-ein-eigenes-sitepackage-fuer-neos-bauen.html

After Base-Installation ( http://neos.readthedocs.io/en/stable/GettingStarted/Installation.html)

./flow package:delete TYPO3.NeosDemoTypo3Org
composer remove typo3/neosdemotypo3org

So done, there is still a dead simlink to demo under Web/_Resources/Static/Packages
Perhaps I forgot a step, otherwise I can also remove it by Terminal/Hand – no problem.

But maybe there is a more simple solution without download stuff than delte/remove.
Like:
composer create-project typo3/neos-empty-distribution DirectoryName

If you want to remove the demosite you should adjust your compoer.json and remove the package. A composer update should to the trick. To get the symlink removed try ./flow resource:clean and/or ./flow resource:publish

Hey stolle,
cool, and once again, thanks for all your help!
I tried your recommended commands in different sequences. and have read the docs about, also tried the combination with ./flow flow:cache:flush --force and ./flow node:repair but the simlink don’t wont pastaway.

It’s OK and not really important. I just thought, there could be a simpler and more direct way as download Demo and delete afterwards, which I have not found yet.
I delete the sim simply by hand, no effort.

Hi @mad

After a while always removing the demo package from the base distribution, I took the time to look at the package inheritance and what I needed for a “Empty Base Package” and my composer.json ended up like this

{
“name”: “meteko/base-neos-distribution”,
“authors”: [
{
“name”: “Soren Malling”,
“email”: "soren@meteko.net"
}
],
“config”: {
“vendor-dir”: “Packages/Libraries”,
“bin-dir”: “bin”
},
“require”: {
“typo3/neos” : “~2.1”,
“typo3/neos-seo” : “~1.0”
},
“scripts”: {
“post-update-cmd”: “TYPO3\Flow\Composer\InstallerScripts::postUpdateAndInstall”,
“post-install-cmd”: “TYPO3\Flow\Composer\InstallerScripts::postUpdateAndInstall”,
“post-package-update”: “TYPO3\Flow\Composer\InstallerScripts::postPackageUpdateAndInstall”,
“post-package-install”: “TYPO3\Flow\Composer\InstallerScripts::postPackageUpdateAndInstall”
}
}

Where you can adjust the version number of the packages.

When you add your own site package to the “require” section, you can move the typo3/neos and typo3/neos-seo dependencies into that package. Then this composer file simply contain the requirement of your site package :slight_smile:

I’m still looking for a way to remove the scripts part, perhaps move it to the TYPO3.Flow package - it’s the part taking care of the creation of the directory and creating index.php for the Flow framework to work. With that being removed, the composer file will be super slim

1 Like

I lately ponder the idea of a custom distribution builder, maybe I will give it a try…

Hey @sorenmalling,
thanks!

The entire process who works for me.
Maybe there is a more efficient way or I misunderstood something: Comments are very welcome!
###Install a clean NEOS-Distribution :

  1. Create a Folder in Server-Directory (e.g. «new-clean-website.neos»)
  2. Link Website «http://new-clean-website.neos» and «http://www.new-clean-website.neos» to Directory
    (local on Mac: in etc/hosts and vhost or MAMP>Hosts | public with ServerTools)
  3. copy composer.json File in Root-Folder «new-clean-website.neos»
{
  "name": "cleanAndClear/base-neos-distribution",
  "authors": [
    {
      "name": "YourName",
      "email": "yourEmail@yourHost"
    }
  ],
  "config": {
    "vendor-dir": "Packages/Libraries",
    "bin-dir": "bin"
  },
  "repositories": [
    {
      "type": "git",
      "url": "https://yourRepository@bitbucket.org/RepName/PackageName.git"
    }
  ],
  "require": {
    "yourPackageName/base-neos-distribution": "~yourVersion"
  },
  "scripts": {
    "post-update-cmd": "TYPO3\\Flow\\Composer\\InstallerScripts::postUpdateAndInstall",
    "post-install-cmd": "TYPO3\\Flow\\Composer\\InstallerScripts::postUpdateAndInstall",
    "post-package-update": "TYPO3\\Flow\\Composer\\InstallerScripts::postPackageUpdateAndInstall",
    "post-package-install": "TYPO3\\Flow\\Composer\\InstallerScripts::postPackageUpdateAndInstall"
  }
}

####Note for Composer-Package Distribution on Github/Bitbucket

Package includes only Site-Package. NO ANCESTORS – NO PATH: Sites/Vendor.Sitename
So the composer.json from Site-Package is in Root-Folder of Github/Bitbucket-Package
With transferring the part «“typo3/neos”: “~2.2”, “typo3/neos-seo”: “~1.0”» in own Package, there throws repeatedly an Error while installation-Process 4/5 «Missing typo3/neos-nodetypes» for Sites.xml.
With this explicit listing in require (first line)–> NO Error!
The content in composer.json in SitePackage on Github/Bitbucket:

{
    "name": "packageName/base-neos-distribution",
    "type": "typo3-flow-site",
    "description": "Add description here",
    "require": {
        "typo3/neos-nodetypes": "~2.2",
        "typo3/neos": "~2.2",
        "typo3/neos-seo": "~1.0"
    }
}
  1. In Terminal cd path/to/new-clean-website.neos
  2. In Terminal composer update
  3. In Browser http://new-clean-website.neos/setup
  4. In Browser: follow installation step by step on Step 4 Import «yourPackage»
  5. Terminal ./flow node:repair
    ####Use new clean Neos-Distribution without Demo-Site deleting and abandoned Sim-Links
    Cheerio!