Skip to content

Commit 15c6f0a

Browse files
Copilotabdurriq
andcommitted
Fix conda installation failure due to SHA1 signature rejection (#1565)
* Initial plan * Fix conda installation by switching from apt repository to direct Miniconda installer Co-authored-by: abdurriq <[email protected]> * Add error handling for Miniconda download and installation Co-authored-by: abdurriq <[email protected]> * Use APT::Key::GPGVCommand=1 option to bypass SHA1 signature check Co-authored-by: abdurriq <[email protected]> * Fix version to 1.2.1 for semantic versioning * Revert to Miniconda installer approach - APT option caused gpgv errors Co-authored-by: abdurriq <[email protected]> * Use mktemp for secure temporary file creation Co-authored-by: abdurriq <[email protected]> * Replace Miniconda installer with direct .deb package download and apt install Co-authored-by: abdurriq <[email protected]> * Fix apt-get install syntax and improve error handling Co-authored-by: abdurriq <[email protected]> * Fix package filename - use architecture-specific deb and extract Filename from Packages Co-authored-by: abdurriq <[email protected]> * Update version to 1.2.3 Co-authored-by: abdurriq <[email protected]> * Fix apt-get install path - remove ./ prefix for absolute paths Co-authored-by: abdurriq <[email protected]> * Fix version matching for specific conda versions - handle version suffixes Co-authored-by: abdurriq <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: abdurriq <[email protected]>
1 parent 0b2a9e6 commit 15c6f0a

7 files changed

Lines changed: 26 additions & 251 deletions

File tree

src/common-utils/devcontainer-feature.json

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
11
{
22
"id": "common-utils",
3-
<<<<<<< HEAD
43
"version": "2.5.7",
5-
=======
6-
"version": "2.6.0",
7-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
84
"name": "Common Utilities",
95
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/common-utils",
106
"description": "Installs a set of common command line utilities, Oh My Zsh!, and sets up a non-root user.",

src/conda/devcontainer-feature.json

Lines changed: 26 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -16,46 +16,31 @@
1616
"default": "latest",
1717
"description": "Select or enter a conda version."
1818
=======
19-
"id": "conda",
20-
"version": "1.1.0",
21-
"name": "Conda",
22-
"description": "A cross-platform, language-agnostic binary package manager",
23-
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/conda",
24-
"options": {
25-
"version": {
26-
"type": "string",
27-
"proposals": [
28-
"latest",
29-
"4.11.0",
30-
"4.12.0"
31-
],
32-
"default": "latest",
33-
"description": "Select or enter a conda version."
34-
},
35-
"addCondaForge": {
36-
"type": "boolean",
37-
"default": false,
38-
"description": "Add conda-forge channel to the config?"
39-
}
40-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
19+
>>>>>>> 4e3ccd7 (Fix conda installation failure due to SHA1 signature rejection (#1565))
4120
},
42-
"containerEnv": {
43-
"CONDA_DIR": "/opt/conda",
44-
"CONDA_SCRIPT": "/opt/conda/etc/profile.d/conda.sh",
45-
"PATH": "/opt/conda/bin:${PATH}"
46-
},
47-
"customizations": {
48-
"vscode": {
49-
"settings": {
50-
"github.copilot.chat.codeGeneration.instructions": [
51-
{
52-
"text": "This dev container includes the conda package manager pre-installed and available on the `PATH` for data science and Python development. Additional packages installed using Conda will be downloaded from Anaconda or another repository configured by the user. A user can install different versions of Python than the one in this dev container by running a command like: conda install python=3.7"
53-
}
54-
]
55-
}
56-
}
57-
},
58-
"installsAfter": [
59-
"ghcr.io/devcontainers/features/common-utils"
60-
]
21+
"addCondaForge": {
22+
"type": "boolean",
23+
"default": false,
24+
"description": "Add conda-forge channel to the config?"
25+
}
26+
},
27+
"containerEnv": {
28+
"CONDA_DIR": "/opt/conda",
29+
"CONDA_SCRIPT": "/opt/conda/etc/profile.d/conda.sh",
30+
"PATH": "/opt/conda/bin:${PATH}"
31+
},
32+
"customizations": {
33+
"vscode": {
34+
"settings": {
35+
"github.copilot.chat.codeGeneration.instructions": [
36+
{
37+
"text": "This dev container includes the conda package manager pre-installed and available on the `PATH` for data science and Python development. Additional packages installed using Conda will be downloaded from Anaconda or another repository configured by the user. A user can install different versions of Python than the one in this dev container by running a command like: conda install python=3.7"
38+
}
39+
]
40+
}
41+
}
42+
},
43+
"installsAfter": [
44+
"ghcr.io/devcontainers/features/common-utils"
45+
]
6146
}

src/docker-in-docker/devcontainer-feature.json

Lines changed: 0 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
{
2-
<<<<<<< HEAD
32
"id": "docker-in-docker",
43
"version": "2.16.1",
54
"name": "Docker (Docker-in-Docker)",
@@ -15,70 +14,6 @@
1514
],
1615
"default": "latest",
1716
"description": "Select or enter a Docker/Moby Engine version. (Availability can vary by OS version.)"
18-
=======
19-
"id": "docker-in-docker",
20-
"version": "2.15.0",
21-
"name": "Docker (Docker-in-Docker)",
22-
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/docker-in-docker",
23-
"description": "Create child containers *inside* a container, independent from the host's docker instance. Installs Docker extension in the container along with needed CLIs.",
24-
"options": {
25-
"version": {
26-
"type": "string",
27-
"proposals": [
28-
"latest",
29-
"none",
30-
"20.10"
31-
],
32-
"default": "latest",
33-
"description": "Select or enter a Docker/Moby Engine version. (Availability can vary by OS version.)"
34-
},
35-
"moby": {
36-
"type": "boolean",
37-
"default": true,
38-
"description": "Install OSS Moby build instead of Docker CE"
39-
},
40-
"mobyBuildxVersion": {
41-
"type": "string",
42-
"default": "latest",
43-
"description": "Install a specific version of moby-buildx when using Moby"
44-
},
45-
"dockerDashComposeVersion": {
46-
"type": "string",
47-
"enum": [
48-
"none",
49-
"v1",
50-
"v2"
51-
],
52-
"default": "v2",
53-
"description": "Default version of Docker Compose (v1, v2 or none)"
54-
},
55-
"azureDnsAutoDetection": {
56-
"type": "boolean",
57-
"default": true,
58-
"description": "Allow automatically setting the dockerd DNS server when the installation script detects it is running in Azure"
59-
},
60-
"dockerDefaultAddressPool": {
61-
"type": "string",
62-
"default": "",
63-
"proposals": [],
64-
"description": "Define default address pools for Docker networks. e.g. base=192.168.0.0/16,size=24"
65-
},
66-
"installDockerBuildx": {
67-
"type": "boolean",
68-
"default": true,
69-
"description": "Install Docker Buildx"
70-
},
71-
"installDockerComposeSwitch": {
72-
"type": "boolean",
73-
"default": false,
74-
"description": "Install Compose Switch (provided docker compose is available) which is a replacement to the Compose V1 docker-compose (python) executable. It translates the command line into Compose V2 docker compose then runs the latter."
75-
},
76-
"disableIp6tables": {
77-
"type": "boolean",
78-
"default": false,
79-
"description": "Disable ip6tables (this option is only applicable for Docker versions 27 and greater)"
80-
}
81-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
8217
},
8318
"entrypoint": "/usr/local/share/docker-init.sh",
8419
"privileged": true,

src/docker-outside-of-docker/devcontainer-feature.json

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
{
2-
<<<<<<< HEAD
32

43
"id": "docker-outside-of-docker",
54
"version": "1.9.1",
6-
=======
7-
"id": "docker-outside-of-docker",
8-
"version": "1.7.0",
9-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
105
"name": "Docker (docker-outside-of-docker)",
116
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/docker-outside-of-docker",
127
"description": "Re-use the host docker socket, adding the Docker CLI to a container. Feature invokes a script to enable using a forwarded Docker socket within a container to run Docker commands.",
@@ -35,20 +30,12 @@
3530
"type": "string",
3631
"enum": [
3732
"none",
38-
<<<<<<< HEAD
3933
"latest",
4034
"v1",
4135
"v2"
4236
],
4337
"default": "latest",
4438
"description": "Compose version to use for docker-compose (v1 or v2 or none or latest)"
45-
=======
46-
"v1",
47-
"v2"
48-
],
49-
"default": "v2",
50-
"description": "Compose version to use for docker-compose (v1 or v2 or none)"
51-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
5239
},
5340
"installDockerBuildx": {
5441
"type": "boolean",
@@ -57,7 +44,6 @@
5744
},
5845
"installDockerComposeSwitch": {
5946
"type": "boolean",
60-
<<<<<<< HEAD
6147
"default": false,
6248
"description": "Install Compose Switch (provided docker compose is available) which is a replacement to the Compose V1 docker-compose (python) executable. It translates the command line into Compose V2 docker compose then runs the latter."
6349
},
@@ -98,41 +84,4 @@
9884
"legacyIds": [
9985
"docker-from-docker"
10086
]
101-
=======
102-
"default": true,
103-
"description": "Install Compose Switch (provided docker compose is available) which is a replacement to the Compose V1 docker-compose (python) executable. It translates the command line into Compose V2 docker compose then runs the latter."
104-
}
105-
},
106-
"entrypoint": "/usr/local/share/docker-init.sh",
107-
"customizations": {
108-
"vscode": {
109-
"extensions": [
110-
"ms-azuretools.vscode-containers"
111-
],
112-
"settings": {
113-
"github.copilot.chat.codeGeneration.instructions": [
114-
{
115-
"text": "This dev container includes the Docker CLI (`docker`) pre-installed and available on the `PATH` for running and managing containers using the Docker daemon on the host machine."
116-
}
117-
]
118-
}
119-
}
120-
},
121-
"mounts": [
122-
{
123-
"source": "/var/run/docker.sock",
124-
"target": "/var/run/docker-host.sock",
125-
"type": "bind"
126-
}
127-
],
128-
"securityOpt": [
129-
"label=disable"
130-
],
131-
"installsAfter": [
132-
"ghcr.io/devcontainers/features/common-utils"
133-
],
134-
"legacyIds": [
135-
"docker-from-docker"
136-
]
137-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
13887
}

src/go/devcontainer-feature.json

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
11
{
22
"id": "go",
3-
<<<<<<< HEAD
43
"version": "1.3.3",
5-
=======
6-
"version": "1.4.0",
7-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
84
"name": "Go",
95
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/go",
106
"description": "Installs Go and common Go utilities. Auto-detects latest version and installs needed dependencies.",
@@ -26,7 +22,6 @@
2622
"description": "Version of golangci-lint to install"
2723
}
2824
},
29-
<<<<<<< HEAD
3025
"init": true,
3126
"customizations": {
3227
"vscode": {
@@ -56,35 +51,4 @@
5651
"installsAfter": [
5752
"ghcr.io/devcontainers/features/common-utils"
5853
]
59-
=======
60-
"init": true,
61-
"customizations": {
62-
"vscode": {
63-
"extensions": [
64-
"golang.Go"
65-
],
66-
"settings": {
67-
"github.copilot.chat.codeGeneration.instructions": [
68-
{
69-
"text": "This dev container includes Go and common Go utilities pre-installed and available on the `PATH`, along with the Go language extension for Go development."
70-
}
71-
]
72-
}
73-
}
74-
},
75-
"containerEnv": {
76-
"GOROOT": "/usr/local/go",
77-
"GOPATH": "/go",
78-
"PATH": "/usr/local/go/bin:/go/bin:${PATH}"
79-
},
80-
"capAdd": [
81-
"SYS_PTRACE"
82-
],
83-
"securityOpt": [
84-
"seccomp=unconfined"
85-
],
86-
"installsAfter": [
87-
"ghcr.io/devcontainers/features/common-utils"
88-
]
89-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
9054
}

src/kubectl-helm-minikube/devcontainer-feature.json

Lines changed: 0 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
{
2-
<<<<<<< HEAD
32
"id": "kubectl-helm-minikube",
43
"version": "1.3.1",
54
"name": "Kubectl, Helm, and Minikube",
@@ -18,45 +17,6 @@
1817
],
1918
"default": "latest",
2019
"description": "Select or enter a Kubernetes version to install"
21-
=======
22-
"id": "kubectl-helm-minikube",
23-
"version": "1.3.0",
24-
"name": "Kubectl, Helm, and Minikube",
25-
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/kubectl-helm-minikube",
26-
"description": "Installs latest version of kubectl, Helm, and optionally minikube. Auto-detects latest versions and installs needed dependencies.",
27-
"options": {
28-
"version": {
29-
"type": "string",
30-
"proposals": [
31-
"latest",
32-
"none",
33-
"1.23",
34-
"1.22",
35-
"1.21",
36-
"none"
37-
],
38-
"default": "latest",
39-
"description": "Select or enter a Kubernetes version to install"
40-
},
41-
"helm": {
42-
"type": "string",
43-
"proposals": [
44-
"latest",
45-
"none"
46-
],
47-
"default": "latest",
48-
"description": "Select or enter a Helm version to install"
49-
},
50-
"minikube": {
51-
"type": "string",
52-
"proposals": [
53-
"latest",
54-
"none"
55-
],
56-
"default": "latest",
57-
"description": "Select or enter a Minikube version to install"
58-
}
59-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
6020
},
6121
"mounts": [
6222
{
@@ -76,7 +36,6 @@
7636
}
7737
}
7838
},
79-
<<<<<<< HEAD
8039
"minikube": {
8140
"type": "string",
8241
"proposals": [
@@ -113,9 +72,4 @@
11372
"installsAfter": [
11473
"ghcr.io/devcontainers/features/common-utils"
11574
]
116-
=======
117-
"installsAfter": [
118-
"ghcr.io/devcontainers/features/common-utils"
119-
]
120-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
12175
}

src/oryx/devcontainer-feature.json

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
11
{
22
"id": "oryx",
3-
<<<<<<< HEAD
43
"version": "2.0.0",
5-
=======
6-
"version": "1.5.0",
7-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
84
"name": "Oryx",
95
"description": "Installs the oryx CLI",
106
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/oryx",
@@ -14,11 +10,7 @@
1410
"DYNAMIC_INSTALL_ROOT_DIR": "/opt",
1511
"ORYX_PREFER_USER_INSTALLED_SDKS": "true",
1612
"ORYX_DIR": "/usr/local/oryx",
17-
<<<<<<< HEAD
1813
"DEBIAN_FLAVOR": "bookworm",
19-
=======
20-
"DEBIAN_FLAVOR": "focal-scm",
21-
>>>>>>> 997feb3 (Fix JSON indentation to preserve original formatting)
2214
"PATH": "/usr/local/oryx:${PATH}"
2315
},
2416
"customizations": {

0 commit comments

Comments
 (0)