summaryrefslogtreecommitdiffstats
path: root/composer-rpm.patch
blob: 85536c96e1da318ec245d3c5e461c88dc41fd451 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
diff -up ./bin/composer.rpm ./bin/composer
--- ./bin/composer.rpm	2023-03-21 15:42:18.000000000 +0100
+++ ./bin/composer	2023-03-21 15:53:50.082632518 +0100
@@ -11,7 +11,7 @@ if (PHP_VERSION_ID < 70205) {
 }
 
 setlocale(LC_ALL, 'C');
-require __DIR__.'/../src/bootstrap.php';
+require '/usr/share/php/Composer/autoload.php';
 
 use Composer\Console\Application;
 use Composer\XdebugHandler\XdebugHandler;
diff -up ./src/Composer/Autoload/AutoloadGenerator.php.rpm ./src/Composer/Autoload/AutoloadGenerator.php
--- ./src/Composer/Autoload/AutoloadGenerator.php.rpm	2023-03-21 15:42:18.000000000 +0100
+++ ./src/Composer/Autoload/AutoloadGenerator.php	2023-03-21 15:53:50.082632518 +0100
@@ -431,7 +431,7 @@ EOF;
         $filesystem->filePutContentsIfModified($targetDir.'/autoload_real.php', $this->getAutoloadRealFile(true, (bool) $includePathFileContents, $targetDirLoader, (bool) $includeFilesFileContents, $vendorPathCode, $appBaseDirCode, $suffix, $useGlobalIncludePath, $prependAutoloader, $checkPlatform));
 
         $filesystem->safeCopy(__DIR__.'/ClassLoader.php', $targetDir.'/ClassLoader.php');
-        $filesystem->safeCopy(__DIR__.'/../../../LICENSE', $targetDir.'/LICENSE');
+        $filesystem->safeCopy((getenv('BUILDROOT')?:'') . '/usr/share/composer/LICENSE', $targetDir.'/LICENSE');
 
         if ($this->runScripts) {
             $this->eventDispatcher->dispatchScript(ScriptEvents::POST_AUTOLOAD_DUMP, $this->devMode, [], [
diff -up ./src/Composer/Compiler.php.rpm ./src/Composer/Compiler.php
--- ./src/Composer/Compiler.php.rpm	2023-03-21 15:42:18.000000000 +0100
+++ ./src/Composer/Compiler.php	2023-03-21 15:53:50.082632518 +0100
@@ -105,7 +105,7 @@ class Compiler
         // Add Composer resources
         $finder = new Finder();
         $finder->files()
-            ->in(__DIR__.'/../../res')
+            ->in((getenv('BUILDROOT')?:'') . '/usr/share/composer/res')
             ->sort($finderSort)
         ;
         foreach ($finder as $file) {
diff -up ./src/Composer/InstalledVersions.php.rpm ./src/Composer/InstalledVersions.php
--- ./src/Composer/InstalledVersions.php.rpm	2023-03-21 15:42:18.000000000 +0100
+++ ./src/Composer/InstalledVersions.php	2023-03-21 15:55:07.748460545 +0100
@@ -266,7 +266,7 @@ class InstalledVersions
         if (null === self::$installed) {
             // only require the installed.php file if this file is loaded from its dumped location,
             // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
-            if (substr(__DIR__, -8, 1) !== 'C') {
+            if (substr(__DIR__, -8, 1) !== 'C' && is_file(__DIR__ . '/installed.php')) {
                 self::$installed = include __DIR__ . '/installed.php';
             } else {
                 self::$installed = array();
@@ -341,7 +341,7 @@ class InstalledVersions
         if (null === self::$installed) {
             // only require the installed.php file if this file is loaded from its dumped location,
             // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
-            if (substr(__DIR__, -8, 1) !== 'C') {
+            if (substr(__DIR__, -8, 1) !== 'C' && is_file(__DIR__ . '/installed.php')) {
                 /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */
                 $required = require __DIR__ . '/installed.php';
                 self::$installed = $required;
diff -up ./src/Composer/Json/JsonFile.php.rpm ./src/Composer/Json/JsonFile.php
--- ./src/Composer/Json/JsonFile.php.rpm	2023-03-21 15:42:18.000000000 +0100
+++ ./src/Composer/Json/JsonFile.php	2023-03-21 15:53:50.082632518 +0100
@@ -40,7 +40,7 @@ class JsonFile
     /** @deprecated Use \JSON_UNESCAPED_UNICODE */
     public const JSON_UNESCAPED_UNICODE = 256;
 
-    public const COMPOSER_SCHEMA_PATH = __DIR__ . '/../../../res/composer-schema.json';
+    public const COMPOSER_SCHEMA_PATH = '/usr/share/composer/res/composer-schema.json';
 
     /** @var string */
     private $path;
@@ -223,7 +223,7 @@ class JsonFile
         $isComposerSchemaFile = false;
         if (null === $schemaFile) {
             $isComposerSchemaFile = true;
-            $schemaFile = self::COMPOSER_SCHEMA_PATH;
+            $schemaFile = (getenv('BUILDROOT')?:'') . self::COMPOSER_SCHEMA_PATH;
         }
 
         // Prepend with file:// only when not using a special schema already (e.g. in the phar)
diff -up ./src/Composer/vendor/composer/ca-bundle/src/CaBundle.php.rpm ./src/Composer/vendor/composer/ca-bundle/src/CaBundle.php
--- ./src/Composer/vendor/composer/ca-bundle/src/CaBundle.php.rpm	2023-01-11 09:27:00.000000000 +0100
+++ ./src/Composer/vendor/composer/ca-bundle/src/CaBundle.php	2023-03-21 15:53:50.083632516 +0100
@@ -125,7 +125,7 @@ class CaBundle
      */
     public static function getBundledCaBundlePath()
     {
-        $caBundleFile = __DIR__.'/../res/cacert.pem';
+        $caBundleFile = '/etc/pki/tls/certs/ca-bundle.crt'; // System CA, always
 
         // cURL does not understand 'phar://' paths
         // see https://github.com/composer/ca-bundle/issues/10