# "Namespace GooCanvas not available" while trying to run desktop client via source

**URL:** <https://discuss.tryton.org/t/namespace-goocanvas-not-available-while-trying-to-run-desktop-client-via-source/6948>\
**Category:** System Administrator\
**Created:** [February 3, 2024, 7:04am UTC](https://discuss.tryton.org/t/namespace-goocanvas-not-available-while-trying-to-run-desktop-client-via-source/6948 "2024-02-03T07:04:23Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![ggktm](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ggktm/32/2790_2.png) [@ggktm](https://discuss.tryton.org/u/ggktm)\
**Post date:** [February 3, 2024, 7:04am UTC](https://discuss.tryton.org/t/namespace-goocanvas-not-available-while-trying-to-run-desktop-client-via-source/6948/1 "2024-02-03T07:04:24Z")

</div>

**Issue**  
According to the title, the desktop client wouldn’t run because GooCanvas library is “not” exist, indicated at this mentioned namespace on traceback error (`goocalendar` need this kind of dependency) but is it [already bundled inside the PyGObject library](https://lazka.github.io/pgi-docs/GooCanvas-2.0/index.html#)?

I’ve already check this GooCanvas repo, especially PyGoocanvas binding is already “removed” but in their [latest git repository](https://gitlab.gnome.org/GNOME/goocanvas) they already stop to maintain this kind of library until the new maintainer takes over.

Should I rebuild this library from their source code or is there a better way?

**Traceback Error**

```auto
Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/goocalendar/ __init__.py", line 8, in <module>
    gi.require_version('GooCanvas', '3.0')
  File "/usr/lib/python3.11/site-packages/gi/ __init__.py", line 126, in require_version
    raise ValueError('Namespace %s not available' % namespace)
ValueError: Namespace GooCanvas not available

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/mnt/h/tryton-dev-env/tryton7.0/tryton/./bin/tryton", line 55, in <module>
    from tryton.client import main
  File "/mnt/h/tryton-dev-env/tryton7.0/tryton/tryton/ __init__.py", line 23, in <module>
    import goocalendar # noqa: F401
    ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/goocalendar/ __init__.py", line 10, in <module>
    gi.require_version('GooCanvas', '2.0')
  File "/usr/lib/python3.11/site-packages/gi/ __init__.py", line 126, in require_version
    raise ValueError('Namespace %s not available' % namespace)
ValueError: Namespace GooCanvas not available

```

**How to reproduce the issue (note: assume that the `trytond` server is already running)**

1. Running WSL2 inside folder `tryton-dev-env` (with `Alpine` distro as default)
2. Set the virtual env. (`source venv-nix/bin/activate`)
3. Navigate inside `tryton/tryton` folder
4. Run the binary directly (`./bin/tryton)`

**Dev. Environment**

- WSL2 (Alpine - Alpine Linux v3.18) @ Windows 11 22H2 22621.2134
- Python **3.11.6** / pip **23.3.2** / virtualenv **20.25.0**
- Library installed inside venv:

```auto
Package Version
--------------------------------- ---------------
aeb43 0.1.0
alabaster 0.7.16
appdirs 1.4.4
apyori 1.1.2
argcomplete 3.2.2
argon2-cffi 23.1.0
argon2-cffi-bindings 21.2.0
arrow 1.3.0
attrs 23.2.0
Babel 2.14.0
backports.entry-points-selectable 1.3.0
bcrypt 4.1.2
beautifulsoup4 4.12.2
binaryornot 0.4.4
braintree 4.26.0
Brotli 1.1.0
cached-property 1.5.2
cachetools 5.3.2
certifi 2023.11.17
cffi 1.16.0
chardet 5.2.0
charset-normalizer 3.3.2
click 8.1.7
colorama 0.4.6
cookiecutter 2.5.0
cryptography 41.0.7
csb43 0.9.3
cssselect2 0.7.0
cx_Freeze 6.15.13
defusedxml 0.7.1
distlib 0.3.8
dnspython 2.5.0
docutils 0.20.1
efficient-apriori 2.0.3
elastic-transport 8.11.0
elasticsearch 8.11.1
elementpath 4.1.5
email-validator 2.1.0.post1
febelfin-coda 0.2.0
filelock 3.13.1
fonttools 4.47.2
future 0.18.3
Genshi 0.7.7
geomet 1.1.0
gevent 23.9.1
GooCalendar 0.8.0
greenlet 3.0.3
html2text 2020.1.16
html5lib 1.1
idna 3.6
imagesize 1.4.1
importlib-metadata 7.0.1
iso3166 2.1.1
isodate 0.6.1
Jinja2 3.1.3
ldap3 2.9.1
Levenshtein 0.23.0
lxml 5.1.0
markdown-it-py 3.0.0
MarkupSafe 2.1.3
mdurl 0.1.2
mercurial 6.4.5
mt940 0.6.0
numpy 1.26.3
oauthlib 3.2.2
ofxparse 0.21
packaging 23.2
pandas 2.1.4
passlib 1.7.4
patchelf 0.17.2.1
pgi 0.0.11.2
phonenumbers 8.13.27
pillow 10.2.0
pip 23.3.2
pkgconfig 1.5.5
platformdirs 4.1.0
playsound 1.3.0
pluggy 1.4.0
polib 1.2.0
proteus 6.7.dev0
psycopg2-binary 2.9.9
pyactiveresource 2.2.2
pyasn1 0.5.1
pycairo 1.25.1
pycountry 23.12.11
pycparser 2.21
pydot 2.0.0
pydyf 0.8.0
pygal 3.0.4
Pygments 2.17.2
PyGObject 3.46.0
PyJWT 2.8.0
pyOpenSSL 23.3.0
pyparsing 3.1.1
pypdf 4.0.1
PyPDF2 3.0.1
pyphen 0.14.0
pypng 0.20220715.0
pyproject-api 1.6.1
pysaml2 7.4.2
python-barcode 0.15.1
python-dateutil 2.8.2
python-Levenshtein 0.23.0
python-magic 0.4.27
python-slugify 8.0.2
python-sql 1.4.3
python-stdnum 1.19
pytz 2023.3.post1
PyYAML 6.0.1
qrcode 7.4.2
rapidfuzz 3.6.1
regex 2023.12.25
relatorio 0.10.1
requests 2.31.0
requests-file 1.5.1
requests-oauthlib 1.3.1
requests-toolbelt 1.0.0
rich 13.7.0
rnc2rng 2.6.6
rply 0.7.8
schwifty 2024.1.1.post0
setuptools 69.0.3
ShopifyAPI 12.3.0
simpleeval 0.9.13
six 1.16.0
snowballstemmer 2.2.0
soupsieve 2.5
Sphinx 7.2.6
sphinx-lint 0.9.1
sphinxcontrib-applehelp 1.0.8
sphinxcontrib-devhelp 1.0.6
sphinxcontrib-htmlhelp 2.0.5
sphinxcontrib-jsmath 1.0.1
sphinxcontrib-qthelp 1.0.7
sphinxcontrib-serializinghtml 1.1.10
SQLAlchemy 2.0.25
stripe 7.12.0
text-unidecode 1.3
tinycss2 1.2.1
tox 4.12.1
types-python-dateutil 2.8.19.20240106
typing_extensions 4.9.0
tzdata 2023.4
urllib3 2.1.0
virtualenv 20.25.0
weasyprint 60.2
webcolors 1.13
webencodings 0.5.1
Werkzeug 2.3.0
wheel 0.42.0
wrapt 1.16.0
xmlschema 3.0.1
zeep 4.2.1
zipp 3.17.0
zope.event 5.0
zope.interface 6.1
zopfli 0.2.3

```

---

<div class="post-metadata">

**Author:** ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)\
**Post date:** [February 3, 2024, 9:13am UTC](https://discuss.tryton.org/t/namespace-goocanvas-not-available-while-trying-to-run-desktop-client-via-source/6948/2 "2024-02-03T09:13:13Z")

</div>

> [@ggktm](#):
>
> but is it [already bundled inside the PyGObject library](https://lazka.github.io/pgi-docs/GooCanvas-2.0/index.html#)?

Usually goocanvas is not packaged with PyGobject. Your OS should have a goocanvas package.
