1{ 2 "build": { 3 "dockerfile": "Dockerfile" 4 }, 5 "onCreateCommand": [ 6 // Install common tooling. 7 "dnf", 8 "install", 9 "-y", 10 "which", 11 "zsh", 12 "fish", 13 // For umask fix below. 14 "/usr/bin/setfacl" 15 ], 16 "updateContentCommand": { 17 // Using the shell for `nproc` usage. 18 "python": "./configure --config-cache --with-pydebug && make -s -j `nproc`", 19 "docs": [ 20 "make", 21 "--directory", 22 "Doc", 23 "venv", 24 "html" 25 ] 26 }, 27 "postCreateCommand": { 28 // https://github.com/orgs/community/discussions/26026 29 "umask fix: workspace": ["sudo", "setfacl", "-bnR", "."], 30 "umask fix: /tmp": ["sudo", "setfacl", "-bnR", "/tmp"] 31 }, 32 "customizations": { 33 "vscode": { 34 "extensions": [ 35 // Highlighting for Parser/Python.asdl. 36 "brettcannon.zephyr-asdl", 37 // Highlighting for configure.ac. 38 "maelvalais.autoconf", 39 // C auto-complete. 40 "ms-vscode.cpptools", 41 // To view HTML build of docs. 42 "ms-vscode.live-server", 43 // Python auto-complete. 44 "ms-python.python" 45 ], 46 "settings": { 47 "C_Cpp.default.compilerPath": "/usr/bin/clang", 48 "C_Cpp.default.cStandard": "c11", 49 "C_Cpp.default.defines": [ 50 "CONFIG_64", 51 "Py_BUILD_CORE" 52 ], 53 "C_Cpp.default.includePath": [ 54 "${workspaceFolder}/*", 55 "${workspaceFolder}/Include/**" 56 ], 57 // https://github.com/microsoft/vscode-cpptools/issues/10732 58 "C_Cpp.errorSquiggles": "disabled", 59 "editor.insertSpaces": true, 60 "editor.rulers": [ 61 80 62 ], 63 "editor.tabSize": 4, 64 "editor.trimAutoWhitespace": true, 65 "files.associations": { 66 "*.h": "c" 67 }, 68 "files.encoding": "utf8", 69 "files.eol": "\n", 70 "files.insertFinalNewline": true, 71 "files.trimTrailingWhitespace": true, 72 "python.analysis.diagnosticSeverityOverrides": { 73 // Complains about shadowing the stdlib w/ the stdlib. 74 "reportShadowedImports": "none", 75 // Doesn't like _frozen_importlib. 76 "reportMissingImports": "none" 77 }, 78 "python.analysis.extraPaths": [ 79 "Lib" 80 ], 81 "python.defaultInterpreterPath": "./python", 82 "[restructuredtext]": { 83 "editor.tabSize": 3 84 } 85 } 86 } 87 } 88} 89