<@U01RSNFAM55> I have added now the `KLAYOUT_HOME`...
# ihp-sg13g2
h
@Boris Murmann I have added now the
KLAYOUT_HOME
setting, but I don’t know whether this is the right thing to do. From the KLayout documentation you linked above, it looks like KLayout wants to write to this location from time to time. However, the
/foss/pdks
should be handled as read-only. Plus, there is also KLayout stuff in
/headless/.klayout
which looks to be tailored to SKY130. I think we need a holistic plan, and I revert the
KLAYOUT_HOME
addition for now. 1. The read-only PDK stuff needs to be stored in
$PDKPATH/libs.tech/klayout
— what is the proper way of telling this to KLayout? 2. The read-only PDK-independent stuff needs to be stored in
/headless/.klayout
— again, how to tell KLayout? 3. The r/w stuff needs to go into
/foss/designs/.klayout
— how to tell KLayout? @Krzysztof Herman @Matthias Köfferlein Any ideas how to set this up correctly?
b
I fully agree, Harald. We should think this through and make sure that KLayout can also store settings as needed. I saw in some of the SKY130 posts that people also set
KLAYOUT_HOME
to a non-writeable location inside the PDK, but it does seem wrong given that KLayout wants to store settings there. One option could be to have everything in
/foss/designs/klayout
and add symbolic links to the PDK directories (tech files and gds libraries).
Will try this.
The approach below seems to work for the container (but perhaps not the most elegant method?). Note that I am also changing the tech file grid (it is not set correctly in the PDK version of the current container).
Copy code
cd /foss/designs
mkdir .klayout
mkdir .klayout/libraries
ln -s $PDKPATH/libs.ref/sg13g2_pr/gds/sg13g2_pr.gds ./.klayout/libraries
ln -s $PDKPATH/libs.ref/sg13g2_stdcell/gds/sg13g2_stdcell.gds ./.klayout/libraries
ln -s $PDKPATH/libs.tech/klayout/python ./.klayout/
cp -r $PDKPATH/libs.tech/klayout/tech ./.klayout/
sed -i 's:<dbu>0.001</dbu>:<dbu>0.005</dbu>:g' ./.klayout/tech/sg13g2.lyt
export KLAYOUT_HOME=/foss/designs/.klayout