New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Files integrity system check messages #12362

Closed
dtpop opened this Issue Dec 16, 2017 · 8 comments

Comments

Projects
None yet
4 participants
@dtpop

dtpop commented Dec 16, 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

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Dec 16, 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?

Member

Findus23 commented Dec 16, 2017

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

This comment has been minimized.

Show comment
Hide comment
@dtpop

dtpop Dec 16, 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 Dec 16, 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

This comment has been minimized.

Show comment
Hide comment
@dtpop

dtpop Dec 16, 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, '/\\');

dtpop commented Dec 16, 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

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Dec 16, 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.
Member

Findus23 commented Dec 16, 2017

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

This comment has been minimized.

Show comment
Hide comment
@fdellwing

fdellwing Dec 18, 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.

Contributor

fdellwing commented Dec 18, 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

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

@Findus23

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Dec 18, 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

Member

Findus23 commented Dec 18, 2017

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

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Dec 22, 2017

Member

@fdellwing
Can you check if this changes also fixes the issue for you?
#12383

Member

Findus23 commented Dec 22, 2017

@fdellwing
Can you check if this changes also fixes the issue for you?
#12383

@fdellwing

This comment has been minimized.

Show comment
Hide comment
@fdellwing

fdellwing Dec 22, 2017

Contributor

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

Contributor

fdellwing commented Dec 22, 2017

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

@mattab mattab changed the title from Installation fails to Files integrity system check messages Jan 12, 2018

@mattab mattab added this to the 3.3.0 milestone Jan 12, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment