@dtpop opened this Issue on December 16th 2017

Environment: xampp on windows
I unpacked the files from the download (v3.2.1) and startet installation.
In step 2 I get

Es wurden unerwartete Verzeichnisse in deiner Piwik-Installation gefunden.
--> Bitte lösche diese Verzeichnisse, um Fehler zu vermeiden. <--

Zu löschendes Verzeichnis: /config
Zu löschendes Verzeichnis: /core
Zu löschendes Verzeichnis: /libs
Zu löschendes Verzeichnis: /misc
Zu löschendes Verzeichnis: /plugins
Zu löschendes Verzeichnis: /tmp
Zu löschendes Verzeichnis: /vendor

Um alle diese Verzeichnisse auf einmal zu löschen, kannst du folgenden Befehl ausführen:
rmdir /s /q       

Es wurden unerwartete Dateien in deiner Piwik-Installation gefunden.
--> Bitte lösche diese Dateien, um Fehler zu vermeiden. <--

Zu löschende Datei: /CHANGELOG.md
Zu löschende Datei: /CONTRIBUTING.md
Zu löschende Datei: /LEGALNOTICE
Zu löschende Datei: /LICENSE
Zu löschende Datei: /PRIVACY.md
Zu löschende Datei: /PULL_REQUEST_TEMPLATE
Zu löschende Datei: /README.md
Zu löschende Datei: /SECURITY.md
Zu löschende Datei: /bower.json
Zu löschende Datei: /composer.json
Zu löschende Datei: /composer.lock
Zu löschende Datei: /console
Zu löschende Datei: /index.php
Zu löschende Datei: /piwik.js
Zu löschende Datei: /piwik.php
Zu löschende Datei: /js/LICENSE.txt
Zu löschende Datei: /js/README.md
Zu löschende Datei: /js/index.php
Zu löschende Datei: /js/piwik.js
Zu löschende Datei: /js/piwik.min.js
Zu löschende Datei: /js/tracker.php
Zu löschende Datei: /lang/README.md
Zu löschende Datei: /lang/am.json
Zu löschende Datei: /lang/ar.json
Zu löschende Datei: /lang/be.json
Zu löschende Datei: /lang/bg.json
Zu löschende Datei: /lang/bn.json
Zu löschende Datei: /lang/bs.json
Zu löschende Datei: /lang/ca.json
Zu löschende Datei: /lang/cs.json
Zu löschende Datei: /lang/cy.json
Zu löschende Datei: /lang/da.json
Zu löschende Datei: /lang/de.json
Zu löschende Datei: /lang/dev.json
Zu löschende Datei: /lang/el.json
Zu löschende Datei: /lang/en.json
Zu löschende Datei: /lang/es.json
Zu löschende Datei: /lang/et.json
Zu löschende Datei: /lang/eu.json
Zu löschende Datei: /lang/fa.json
Zu löschende Datei: /lang/fi.json
Zu löschende Datei: /lang/fr.json
Zu löschende Datei: /lang/gl.json
Zu löschende Datei: /lang/he.json
Zu löschende Datei: /lang/hi.json
Zu löschende Datei: /lang/hr.json
Zu löschende Datei: /lang/hu.json
Zu löschende Datei: /lang/id.json
Zu löschende Datei: /lang/is.json
Zu löschende Datei: /lang/it.json
Zu löschende Datei: /lang/ja.json
Zu löschende Datei: /lang/ka.json
Zu löschende Datei: /lang/ko.json
Zu löschende Datei: /lang/lt.json
Zu löschende Datei: /lang/lv.json
Zu löschende Datei: /lang/nb.json
Zu löschende Datei: /lang/nl.json
Zu löschende Datei: /lang/nn.json
Zu löschende Datei: /lang/pl.json
Zu löschende Datei: /lang/pt-br.json
Zu löschende Datei: /lang/pt.json
Zu löschende Datei: /lang/ro.json
Zu löschende Datei: /lang/ru.json
Zu löschende Datei: /lang/sk.json
Zu löschende Datei: /lang/sl.json
Zu löschende Datei: /lang/sq.json
Zu löschende Datei: /lang/sr.json
Zu löschende Datei: /lang/sv.json
Zu löschende Datei: /lang/ta.json
Zu löschende Datei: /lang/te.json
Zu löschende Datei: /lang/th.json
Zu löschende Datei: /lang/tl.json
Zu löschende Datei: /lang/tr.json
Zu löschende Datei: /lang/uk.json
Zu löschende Datei: /lang/vi.json
Zu löschende Datei: /lang/zh-cn.json
Zu löschende Datei: /lang/zh-tw.json
Zu löschende Datei: /tests/README.md

Um alle diese Dateien auf einmal zu löschen, kannst du folgenden Befehl ausführen:
del "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""
del "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""

If I really delete the files the installation fails naturally because the main files as well are deleted.

@Findus23 commented on December 16th 2017 Member

Hi,

This seems to be the same issue as #12344 which only occurs on Windows.

Are you able to ignore the integrity checker and continue with the setup?

@dtpop commented on December 16th 2017

Thanks Findus, but the mismatch is still present. If I debug the code, I find that line 174 and line 213 trim($file,DIRECTORY_SEPARATOR) does not work properly because file starts with a slash and DIRECTORY_SEPARATOR is a backslash. If I change the code, the warnings disappears but I get this:

Integritätsprüfung fehlgeschlagen: C:\www\example.de\analytics/core/FileIntegrity.php

I didn't find where to change the integrity params for the file.

@dtpop commented on December 16th 2017

ok - i got it in manifest.inc.php. I think a fix would work, if file is allways trimed left with both slash and backslash

$file = ltrim($file, '/\\');
@Findus23 commented on December 16th 2017 Member

Hi,

The integrity parameters are in config/manifest.inc.php


<?php
// This file is automatically generated during the Piwik build process 
namespace Piwik;
class Manifest {
        static $files=array(
               [many lines]
                "core/FileIntegrity.php" => array("16101", "4d16c4eeb2a68ecbfb1fc4d3320cab84"),
               [many lines]
        );
}

The two parameters are the filesize in bytes and the md5 hash.
@fdellwing commented on December 18th 2017 Contributor

ok - i got it in manifest.inc.php. I think a fix would work, if file is allways trimed left with both slash and backslash

Well it is not, it is only on windows systems.

@Findus23 commented on December 18th 2017 Member

I guess in that case the easiest solution would be making it conditional on SettingsServer::isWindows().

https://github.com/piwik/piwik/blob/da99e353a99a50d650668d8403a9e879a938bc4c/core/SettingsServer.php#L81-L84

@Findus23 commented on December 22nd 2017 Member

@fdellwing
Can you check if this changes also fixes the issue for you?
https://github.com/piwik/piwik/pull/12383

@fdellwing commented on December 22nd 2017 Contributor

I'm currently not at work over the holidays and our piwik is running on linux.

This Issue was closed on January 12th 2018
Powered by GitHub Issue Mirror