Opened 8 months ago
Last modified 8 months ago
#16952 assigned defect
Permission denied writing command history
Reported by: | Owned by: | Greg Couch | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Input/Output | Version: | |
Keywords: | Cc: | pett, Tom Goddard | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Windows-10-10.0.22631 ChimeraX Version: 1.9 (2024-12-11 19:11:19 UTC) Description Replace this text with list of actions that caused this problem to occur Log: Startup Messages --- note | available bundle cache has not been initialized yet You can double click a model's Name or ID in the model panel to edit those fields UCSF ChimeraX version: 1.9 (2024-12-11) © 2016-2024 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open 7df2 fromDatabase pdb format mmcif Summary of feedback from opening 7df2 fetched from pdb --- notes | Fetching compressed mmCIF 7df2 from http://files.rcsb.org/download/7df2.cif Fetching CCD BGC from https://files.wwpdb.org/pub/pdb/refdata/chem_comp/C/BGC/BGC.cif Fetching CCD CA from https://files.wwpdb.org/pub/pdb/refdata/chem_comp/A/CA/CA.cif Fetching CCD GLC from https://files.wwpdb.org/pub/pdb/refdata/chem_comp/C/GLC/GLC.cif 7df2 title: Crystal structure of a C2 domain protein from Ramazzottius varieornatus [more info...] Chain information for 7df2 #1 --- Chain | Description | UniProt A | C2 domain protein | A0A1D1UCW7_RAMVA 21-213 Non-standard residues in 7df2 #1 --- BGC — beta-D-glucopyranose (beta-D-glucose; D-glucose; glucose) CA — calcium ion GLC — alpha-D-glucopyranose (alpha-D-glucose; D-glucose; glucose) 110 atoms have alternate locations. Control/examine alternate locations with Altloc Explorer [start tool...] or the altlocs command. > select /A 1544 atoms, 1373 bonds, 22 pseudobonds, 372 residues, 2 models selected > open 5p21 fromDatabase pdb format mmcif Summary of feedback from opening 5p21 fetched from pdb --- notes | Fetching compressed mmCIF 5p21 from http://files.rcsb.org/download/5p21.cif Fetching CCD GNP from https://files.wwpdb.org/pub/pdb/refdata/chem_comp/P/GNP/GNP.cif Fetching CCD MG from https://files.wwpdb.org/pub/pdb/refdata/chem_comp/G/MG/MG.cif 5p21 title: Refined crystal structure of the triphosphate conformation of H-ras P21 At 1.35 angstroms resolution: implications for the mechanism of GTP hydrolysis [more info...] Chain information for 5p21 #2 --- Chain | Description | UniProt A | C-H-RAS P21 PROTEIN | RASH_HUMAN 1-166 Non-standard residues in 5p21 #2 --- GNP — phosphoaminophosphonic acid-guanylate ester MG — magnesium ion 5p21 mmCIF Assemblies --- 1| author_defined_assembly > hide #!1 models Traceback (most recent call last): File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\triggerset.py", line 149, in invoke return self._func(self._name, data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\cmd_line\tool.py", line 351, in _command_started_cb self.history_dialog.add(self._just_typed_command or cmd_text, File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\cmd_line\tool.py", line 456, in add self._history.enqueue((item, typed)) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 182, in enqueue self.save() File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 212, in save self._history.save(self._queue) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 119, in save with SaveTextFile(self._filename) as f: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 192, in __init__ SaveFile.__init__(self, filename, open=open_text, critical=critical) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 85, in __init__ self._f = open(self._tmp_filename) ^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 191, in open_text return open(filename, 'w', newline=newline, encoding=encoding) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ PermissionError: [Errno 13] Permission denied: 'C:\\\Users\\\10033023\\\AppData\\\Local\\\UCSF\\\ChimeraX\\\commands.4604.tmp' Error processing trigger "command started": PermissionError: [Errno 13] Permission denied: 'C:\\\Users\\\10033023\\\AppData\\\Local\\\UCSF\\\ChimeraX\\\commands.4604.tmp' File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 191, in open_text return open(filename, 'w', newline=newline, encoding=encoding) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See log for complete Python traceback. > show #!1 models Traceback (most recent call last): File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\triggerset.py", line 149, in invoke return self._func(self._name, data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\cmd_line\tool.py", line 351, in _command_started_cb self.history_dialog.add(self._just_typed_command or cmd_text, File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\cmd_line\tool.py", line 456, in add self._history.enqueue((item, typed)) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 182, in enqueue self.save() File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 212, in save self._history.save(self._queue) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 119, in save with SaveTextFile(self._filename) as f: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 192, in __init__ SaveFile.__init__(self, filename, open=open_text, critical=critical) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 85, in __init__ self._f = open(self._tmp_filename) ^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 191, in open_text return open(filename, 'w', newline=newline, encoding=encoding) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ PermissionError: [Errno 13] Permission denied: 'C:\\\Users\\\10033023\\\AppData\\\Local\\\UCSF\\\ChimeraX\\\commands.4604.tmp' Error processing trigger "command started": PermissionError: [Errno 13] Permission denied: 'C:\\\Users\\\10033023\\\AppData\\\Local\\\UCSF\\\ChimeraX\\\commands.4604.tmp' File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 191, in open_text return open(filename, 'w', newline=newline, encoding=encoding) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See log for complete Python traceback. > hide #!1 models Traceback (most recent call last): File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\triggerset.py", line 149, in invoke return self._func(self._name, data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\cmd_line\tool.py", line 351, in _command_started_cb self.history_dialog.add(self._just_typed_command or cmd_text, File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\cmd_line\tool.py", line 456, in add self._history.enqueue((item, typed)) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 182, in enqueue self.save() File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 212, in save self._history.save(self._queue) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\history.py", line 119, in save with SaveTextFile(self._filename) as f: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 192, in __init__ SaveFile.__init__(self, filename, open=open_text, critical=critical) File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 85, in __init__ self._f = open(self._tmp_filename) ^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 191, in open_text return open(filename, 'w', newline=newline, encoding=encoding) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ PermissionError: [Errno 13] Permission denied: 'C:\\\Users\\\10033023\\\AppData\\\Local\\\UCSF\\\ChimeraX\\\commands.4604.tmp' Error processing trigger "command started": PermissionError: [Errno 13] Permission denied: 'C:\\\Users\\\10033023\\\AppData\\\Local\\\UCSF\\\ChimeraX\\\commands.4604.tmp' File "C:\Program Files\ChimeraX 1.9\bin\Lib\site- packages\chimerax\core\safesave.py", line 191, in open_text return open(filename, 'w', newline=newline, encoding=encoding) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ See log for complete Python traceback. OpenGL version: 3.3.0 - Build 32.0.101.5973 OpenGL renderer: Intel(R) UHD Graphics 770 OpenGL vendor: Intel Python: 3.11.4 Locale: ca_ES.cp1252 Qt version: PyQt6 6.7.1, Qt 6.7.1 Qt runtime version: 6.7.3 Qt platform: windows Manufacturer: HP Model: HP Elite SFF 600 G9 Desktop PC OS: Microsoft Windows 11 Education (Build 22631) Memory: 16,833,392,640 MaxProcessMemory: 137,438,953,344 CPU: 20 13th Gen Intel(R) Core(TM) i5-13500 OSLanguage: es-ES Installed Packages: alabaster: 1.0.0 anyio: 4.7.0 appdirs: 1.4.4 asttokens: 3.0.0 auditwheel: 6.1.0 babel: 2.16.0 beautifulsoup4: 4.12.3 blockdiag: 3.0.0 blosc2: 3.0.0 build: 1.2.1 certifi: 2024.8.30 cftime: 1.6.4.post1 charset-normalizer: 3.4.0 ChimeraX-AddCharge: 1.5.18 ChimeraX-AddH: 2.2.6 ChimeraX-AlignmentAlgorithms: 2.0.2 ChimeraX-AlignmentHdrs: 3.5 ChimeraX-AlignmentMatrices: 2.1 ChimeraX-Alignments: 2.16.1 ChimeraX-AlphaFold: 1.0.1 ChimeraX-AltlocExplorer: 1.1.2 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.1 ChimeraX-Atomic: 1.58.8 ChimeraX-AtomicLibrary: 14.1.11 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.4 ChimeraX-BasicActions: 1.1.2 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 3.0.0 ChimeraX-BondRot: 2.0.4 ChimeraX-BugReporter: 1.0.1 ChimeraX-BuildStructure: 2.13.1 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.4.0 ChimeraX-ButtonPanel: 1.0.1 ChimeraX-CageBuilder: 1.0.1 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.4 ChimeraX-ChangeChains: 1.1 ChimeraX-CheckWaters: 1.4 ChimeraX-ChemGroup: 2.0.1 ChimeraX-Clashes: 2.3 ChimeraX-ColorActions: 1.0.5 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.6 ChimeraX-CommandLine: 1.2.5 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.9 ChimeraX-CoreFormats: 1.2 ChimeraX-coulombic: 1.4.4 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.3 ChimeraX-Dicom: 1.2.6 ChimeraX-DistMonitor: 1.4.2 ChimeraX-DockPrep: 1.1.3 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ESMFold: 1.0 ChimeraX-FileHistory: 1.0.1 ChimeraX-FunctionKey: 1.0.1 ChimeraX-Geometry: 1.3 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.4.1 ChimeraX-Hbonds: 2.5 ChimeraX-Help: 1.3 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.3 ChimeraX-ItemsInspection: 1.0.1 ChimeraX-IUPAC: 1.0 ChimeraX-KVFinder: 1.2.1 ChimeraX-Label: 1.1.14 ChimeraX-ListInfo: 1.2.2 ChimeraX-Log: 1.2 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.9.1 ChimeraX-Map: 1.3 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0.1 ChimeraX-MapFilter: 2.0.1 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.1.1 ChimeraX-Markers: 1.0.1 ChimeraX-Mask: 1.0.2 ChimeraX-MatchMaker: 2.1.6 ChimeraX-MCopy: 1.0 ChimeraX-MDcrds: 2.7.2 ChimeraX-MedicalToolbar: 1.1 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1.1 ChimeraX-mmCIF: 2.14.2 ChimeraX-MMTF: 2.2 ChimeraX-ModelArchive: 1.0 ChimeraX-Modeller: 1.5.18 ChimeraX-ModelPanel: 1.5 ChimeraX-ModelSeries: 1.0.1 ChimeraX-Mol2: 2.0.3 ChimeraX-Mole: 1.0 ChimeraX-Morph: 1.0.2 ChimeraX-MouseModes: 1.2 ChimeraX-Movie: 1.0 ChimeraX-MutationScores: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nifti: 1.2 ChimeraX-NMRSTAR: 1.0.2 ChimeraX-NRRD: 1.2 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OpenCommand: 1.14 ChimeraX-OrthoPick: 1.0.1 ChimeraX-PDB: 2.7.6 ChimeraX-PDBBio: 1.0.1 ChimeraX-PDBLibrary: 1.0.4 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1.2 ChimeraX-PubChem: 2.2 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.2 ChimeraX-RemoteControl: 1.0 ChimeraX-RenderByAttr: 1.6.2 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.3.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 4.0 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.5.1 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0.2 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0.1 ChimeraX-Segmentations: 3.5.6 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.14 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.2.0 ChimeraX-ShowSequences: 1.0.3 ChimeraX-SideView: 1.0.1 ChimeraX-SimilarStructures: 1.0.1 ChimeraX-Smiles: 2.1.2 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.18.1 ChimeraX-STL: 1.0.1 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.2.1 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0.1 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.5 ChimeraX-TapeMeasure: 1.0 ChimeraX-TaskManager: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.2.3 ChimeraX-ToolshedUtils: 1.2.4 ChimeraX-Topography: 1.0 ChimeraX-ToQuest: 1.0 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.41 ChimeraX-Umap: 1.0 ChimeraX-uniprot: 2.3.1 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.4.4 ChimeraX-VIPERdb: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0.1 ChimeraX-vrml: 1.0 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0.2 ChimeraX-WebServices: 1.1.4 ChimeraX-Zone: 1.0.1 colorama: 0.4.6 comm: 0.2.2 comtypes: 1.4.5 contourpy: 1.3.1 cxservices: 1.2.3 cycler: 0.12.1 Cython: 3.0.10 debugpy: 1.8.9 decorator: 5.1.1 docutils: 0.21.2 executing: 2.1.0 filelock: 3.15.4 fonttools: 4.55.3 funcparserlib: 2.0.0a0 glfw: 2.8.0 grako: 3.16.5 h11: 0.14.0 h5py: 3.12.1 html2text: 2024.2.26 httpcore: 1.0.7 httpx: 0.28.1 idna: 3.10 ihm: 1.3 imagecodecs: 2024.6.1 imagesize: 1.4.1 ipykernel: 6.29.5 ipython: 8.26.0 ipywidgets: 8.1.5 jedi: 0.19.1 Jinja2: 3.1.4 jupyter_client: 8.6.2 jupyter_core: 5.7.2 jupyterlab_widgets: 3.0.13 kiwisolver: 1.4.7 line_profiler: 4.1.3 lxml: 5.2.2 lz4: 4.3.3 MarkupSafe: 3.0.2 matplotlib: 3.9.2 matplotlib-inline: 0.1.7 msgpack: 1.0.8 ndindex: 1.9.2 nest-asyncio: 1.6.0 netCDF4: 1.6.5 networkx: 3.3 nibabel: 5.2.0 nptyping: 2.5.0 numexpr: 2.10.2 numpy: 1.26.4 openvr: 1.26.701 packaging: 23.2 ParmEd: 4.2.2 parso: 0.8.4 pep517: 0.13.1 pillow: 10.4.0 pip: 24.2 pkginfo: 1.11.1 platformdirs: 4.3.6 prompt_toolkit: 3.0.48 psutil: 6.0.0 pure_eval: 0.2.3 py-cpuinfo: 9.0.0 pycollada: 0.8 pydicom: 2.4.4 pyelftools: 0.31 Pygments: 2.18.0 pynmrstar: 3.3.4 pynrrd: 1.0.0 PyOpenGL: 3.1.7 PyOpenGL-accelerate: 3.1.7 pyopenxr: 1.0.3401 pyparsing: 3.2.0 pyproject_hooks: 1.2.0 PyQt6-commercial: 6.7.1 PyQt6-Qt6: 6.7.3 PyQt6-WebEngine-commercial: 6.7.0 PyQt6-WebEngine-Qt6: 6.7.3 PyQt6-WebEngineSubwheel-Qt6: 6.7.3 PyQt6_sip: 13.8.0 python-dateutil: 2.9.0.post0 pytz: 2024.2 pywin32: 306 pyzmq: 26.2.0 qtconsole: 5.5.2 QtPy: 2.4.2 qtshim: 1.0 RandomWords: 0.4.0 requests: 2.32.3 scipy: 1.14.0 setuptools: 72.1.0 sfftk-rw: 0.8.1 six: 1.16.0 sniffio: 1.3.1 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 soupsieve: 2.6 Sphinx: 8.0.2 sphinx-autodoc-typehints: 2.2.3 sphinxcontrib-applehelp: 2.0.0 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 2.0.0 sphinxcontrib-htmlhelp: 2.1.0 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 2.0.0 sphinxcontrib-serializinghtml: 2.0.0 stack-data: 0.6.3 superqt: 0.6.3 tables: 3.10.1 tcia_utils: 1.5.1 tifffile: 2024.7.24 tinyarray: 1.2.4 tornado: 6.4.2 traitlets: 5.14.3 typing_extensions: 4.12.2 tzdata: 2024.2 urllib3: 2.2.3 wcwidth: 0.2.13 webcolors: 24.6.0 wheel: 0.43.0 wheel-filename: 1.4.1 widgetsnbextension: 4.0.13 WMI: 1.5.1
Change History (3)
comment:1 by , 8 months ago
Cc: | added |
---|---|
Component: | Unassigned → Input/Output |
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Permission denied writing command history |
comment:2 by , 8 months ago
We only see this problem on Windows. Windows is special in that if a file is already opened and you try to open it again then it gives a permission error. I got burned by this in some foldseek code that wrote a temporary file and then before the temporary file was closed tried to open and read it.
One other random idea is maybe there is more than one ChimeraX running and both try to write the same temporary file. Seems unlikely.
comment:3 by , 8 months ago
Well, this is the command-history file, which I believe only gets read at startup, so I can't envision it being a reading-unclosed-file issue.
Similarly, the number embedded in the file name (4604 in this case) is the process ID, to avoid the two-ChimeraXs-making-same-file problem. In fact, in newer versions of ChimeraX it also embeds the process start time since ChimeraXs running out of different singularity containers can easily have the same "process ID" (usually "2").
Nonetheless, it's not like I'm full of ideas, so any suggestions are appreciated.
The user did multiple commands before starting to get "Permission denied" writing the command history. Why?