Code Monkey home page Code Monkey logo

Comments (5)

elrido avatar elrido commented on June 12, 2024

While we do vendor in the core libraries, we refrained from including the GCP and S3 dependencies, as they each depend on their cloud vendors' PHP SDK and are measured in many megabytes - several times more as our repository at this time.

Let's take this as an opportunity to improve our installation documentation. In short, you will need to have composer installed or available on your system and then run either of these commands to use S3 storage or the GCS one:

# for S3 storage:
$ composer require aws/aws-sdk-php
# for GCS storage:
$ composer require google/cloud-storage

from privatebin.

rugk avatar rugk commented on June 12, 2024

So as it seems this question has been answered and I thus close this issue. If anyone has further questions on that topic, feel free to comment here, again.

from privatebin.

pommetjehorlepiep avatar pommetjehorlepiep commented on June 12, 2024

Thanks @rugk.

Sorry for the late response, but composer require aws/aws-sdk-php + installing PHP simplexml resolved the original problem, but now PrivateBin won´t start!

Now getting this error:

[08-Jan-2024 08:04:03 ...] PHP Fatal error:  Uncaught Error: Class "PrivateBin\Controller" not found in <root>/index.php:18
Stack trace:
#0 {main}
thrown in <root>/index.php on line 18

This is the composer log of the install:

./composer.json has been created
Running composer update aws/aws-sdk-php
Loading composer repositories with package information
Updating dependencies
Lock file operations: 12 installs, 0 updates, 0 removals
- Locking aws/aws-crt-php (v1.2.4)
- Locking aws/aws-sdk-php (3.295.7)
- Locking guzzlehttp/guzzle (7.8.1)
- Locking guzzlehttp/promises (2.0.2)
- Locking guzzlehttp/psr7 (2.6.2)
- Locking mtdowling/jmespath.php (2.7.0)
- Locking psr/http-client (1.0.3)
- Locking psr/http-factory (1.0.2)
- Locking psr/http-message (2.0)
- Locking ralouphie/getallheaders (3.0.3)
- Locking symfony/deprecation-contracts (v3.4.0)
- Locking symfony/polyfill-mbstring (v1.28.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 12 installs, 0 updates, 0 removals
- Downloading psr/http-message (2.0)
- Downloading symfony/polyfill-mbstring (v1.28.0)
- Downloading mtdowling/jmespath.php (2.7.0)
- Downloading ralouphie/getallheaders (3.0.3)
- Downloading psr/http-factory (1.0.2)
- Downloading guzzlehttp/psr7 (2.6.2)
- Downloading guzzlehttp/promises (2.0.2)
- Downloading symfony/deprecation-contracts (v3.4.0)
- Downloading psr/http-client (1.0.3)
- Downloading guzzlehttp/guzzle (7.8.1)
- Downloading aws/aws-crt-php (v1.2.4)
- Downloading aws/aws-sdk-php (3.295.7)
- Installing psr/http-message (2.0): Extracting archive
- Installing symfony/polyfill-mbstring (v1.28.0): Extracting archive
- Installing mtdowling/jmespath.php (2.7.0): Extracting archive
- Installing ralouphie/getallheaders (3.0.3): Extracting archive
- Installing psr/http-factory (1.0.2): Extracting archive
- Installing guzzlehttp/psr7 (2.6.2): Extracting archive
- Installing guzzlehttp/promises (2.0.2): Extracting archive
- Installing symfony/deprecation-contracts (v3.4.0): Extracting archive
- Installing psr/http-client (1.0.3): Extracting archive
- Installing guzzlehttp/guzzle (7.8.1): Extracting archive
- Installing aws/aws-crt-php (v1.2.4): Extracting archive
- Installing aws/aws-sdk-php (3.295.7): Extracting archive
7 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
5 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
No security vulnerability advisories found.
Using version ^3.295 for aws/aws-sdk-php

from privatebin.

elrido avatar elrido commented on June 12, 2024
./composer.json has been created

It may be that our projects composer.json (and possibly composer.lock) is required to be present for this operation, as we instruct composer there how to include the PrivateBin namespace into the autoloader:

PrivateBin/composer.json

Lines 39 to 43 in 9fb7aee

"autoload" : {
"psr-4" : {
"PrivateBin\\" : "lib/"
}
},

See also our docker install, where these get downloaded just before running the require:
https://github.com/PrivateBin/docker-nginx-fpm-alpine/blob/master/Dockerfile#L72-L76

from privatebin.

rugk avatar rugk commented on June 12, 2024

Yeah… maybe that should be documented somewhere?

from privatebin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.