# Configuring python3.9 for common workflows

**URL:** <https://aiida.discourse.group/t/configuring-python3-9-for-common-workflows/156>\
**Category:** General Usage\
**Created:** [November 15, 2023, 9:16am UTC](https://aiida.discourse.group/t/configuring-python3-9-for-common-workflows/156 "2023-11-15T09:16:20Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![ljbeal](https://avatars.discourse-cdn.com/v4/letter/l/7ea924/32.png) [@ljbeal](https://aiida.discourse.group/u/ljbeal)\
**Post date:** [November 15, 2023, 9:16am UTC](https://aiida.discourse.group/t/configuring-python3-9-for-common-workflows/156/1 "2023-11-15T09:16:20Z")

</div>

I’m unsure as to how well this is known, but just in case it helps someone else:

Currently when building python3.9 for the common workflows package, there are some steps to be aware of.

If `python>=3.10`, you will have to install 3.9. I did this from source (`Python-3.9.18`), and hit a snag with the database. `no module named '_sqlite3'` would appear when trying to set up a profile (or any other db access)

Solved by installing sqlite3-dev (`sudo apt install libsqlite3-dev`) and then building with:  
`./configure --enable-loadable-sqlite-extensions --with-ensurepip=install && make -j 4 && sudo make altinstall`

Note, I’m building here with `--with-ensurepip=install` (installs pip), and `sudo make altinstall` (does not override the main python version)

I recreated the venv after this, though I’m not sure that’s neccessary.

---

<div class="post-metadata">

**Author:** ![mbercx](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/mbercx/32/345_2.png) [@mbercx](https://aiida.discourse.group/u/mbercx)\
**Post date:** [November 15, 2023, 9:22am UTC](https://aiida.discourse.group/t/configuring-python3-9-for-common-workflows/156/2 "2023-11-15T09:22:26Z")

</div>

Thanks @ljbeal! Good to know about these installation hurdles. What OS are you running? I’ll see about adding these notes to a troubleshooting section in the docs.

---

<div class="post-metadata">

**Author:** ![ljbeal](https://avatars.discourse-cdn.com/v4/letter/l/7ea924/32.png) [@ljbeal](https://aiida.discourse.group/u/ljbeal)\
**Post date:** [November 15, 2023, 9:24am UTC](https://aiida.discourse.group/t/configuring-python3-9-for-common-workflows/156/3 "2023-11-15T09:24:27Z")

</div>

Ah sorry, I should have mentioned that in the main body! I’m testing on a (relatively fresh) Ubuntu 22.04.3 install

---

<div class="post-metadata">

**Author:** ![mbercx](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/mbercx/32/345_2.png) [@mbercx](https://aiida.discourse.group/u/mbercx)\
**Post date:** [November 15, 2023, 9:29am UTC](https://aiida.discourse.group/t/configuring-python3-9-for-common-workflows/156/4 "2023-11-15T09:29:21Z")

</div>

No worries at all! I’ll also give installation a try again and polish the docs a bit.

Should probably also look into finalising the release for `aiida-core` v2, but there is never enough time. 😅

---

<div class="post-metadata">

**Author:** ![sphuber](https://yyz2.discourse-cdn.com/free1/user_avatar/aiida.discourse.group/sphuber/32/6_2.png) [@sphuber](https://aiida.discourse.group/u/sphuber)\
**Post date:** [November 15, 2023, 10:20am UTC](https://aiida.discourse.group/t/configuring-python3-9-for-common-workflows/156/5 "2023-11-15T10:20:51Z")

</div>

On that note, how is the release for `aiida-bigdft` coming along @ljbeal ? That was one of the few remaining blocking dependencies.

---

<div class="post-metadata">

**Author:** ![ljbeal](https://avatars.discourse-cdn.com/v4/letter/l/7ea924/32.png) [@ljbeal](https://aiida.discourse.group/u/ljbeal)\
**Post date:** [November 15, 2023, 12:30pm UTC](https://aiida.discourse.group/t/configuring-python3-9-for-common-workflows/156/6 "2023-11-15T12:30:43Z")

</div>

Progess is coming along just fine, jobs can be submitted and the CI is passing (though it’s more of a framework than a full test suite).

I wanted to get the common workflows functional again before pushing, however I’m running into issues getting the base common workflows running. Possibly more to come on that front depending on how my next few experiments go.

So in short, the _plugin_ works, but I’m not convinced that the workflows do
