From b3f644be0c88e5072ae2438d7c70b9b1e1177d95 Mon Sep 17 00:00:00 2001 From: Akshay Rukade Date: Wed, 11 Feb 2026 16:30:41 +0530 Subject: [PATCH] feat(installer): add IHP Open PDK installation support to Ubuntu scripts --- .../install-eSim-22.04.sh | 34 +++++++++++++++++ .../install-eSim-23.04.sh | 37 +++++++++++++++++++ .../install-eSim-24.04.sh | 34 +++++++++++++++++ 3 files changed, 105 insertions(+) diff --git a/Ubuntu/install-eSim-scripts/install-eSim-22.04.sh b/Ubuntu/install-eSim-scripts/install-eSim-22.04.sh index c996ed22e..7e8f4658f 100644 --- a/Ubuntu/install-eSim-scripts/install-eSim-22.04.sh +++ b/Ubuntu/install-eSim-scripts/install-eSim-22.04.sh @@ -15,6 +15,8 @@ # AUTHORS: Fahim Khan, Rahul Paknikar, Saurabh Bansode, # Sumanto Kar, Partha Singha Roy, Shiva Krishna Sangati, # Jayanth Tatineni, Anshul Verma +# MENTORS: Sumanto Kar, Varad Patil, Shanti Priya K, Aditya M +# INTERNS: Akshay Rukade, Haripriyan R # ORGANIZATION: eSim Team, FOSSEE, IIT Bombay # CREATED: Wednesday 15 July 2015 15:26 # REVISION: Sunday 25 May 2025 17:40 @@ -103,6 +105,29 @@ function installSky130Pdk } +function installIhpPdk +{ + echo -n "Do you want to install IHP Open PDK for analog IC design? (y/n): " + read installIhp + + if [ "$installIhp" == "y" -o "$installIhp" == "Y" ]; then + echo "Installing IHP Open PDK........................" + + if [ -f "ihp/ihp-install-script.sh" ]; then + cd ihp/ + chmod +x ihp-install-script.sh + trap "" ERR + ./ihp-install-script.sh --install + trap error_exit ERR + cd ../ + else + echo "IHP install script not found. Skipping..." + fi + else + echo "Skipping IHP Open PDK installation" + fi +} + function installKicad { echo "Installing KiCad..." @@ -383,6 +408,7 @@ if [ $option == "--install" ];then copyKicadLibrary installNghdl installSky130Pdk + installIhpPdk createDesktopStartScript if [ $? -ne 0 ];then @@ -413,6 +439,14 @@ elif [ $option == "--uninstall" ];then echo "Removing SKY130 PDK......................" sudo rm -R /usr/share/local/sky130_fd_pr + echo "Removing IHP Open PDK...................." + if [ -f "ihp/install-ihp-openpdk.sh" ]; then + cd ihp/ + chmod +x install-ihp-openpdk.sh + ./install-ihp-openpdk.sh --uninstall + cd ../ + fi + echo "Removing NGHDL..........................." rm -rf library/modelParamXML/Nghdl/* rm -rf library/modelParamXML/Ngveri/* diff --git a/Ubuntu/install-eSim-scripts/install-eSim-23.04.sh b/Ubuntu/install-eSim-scripts/install-eSim-23.04.sh index a4dfb28d5..236c1f16b 100644 --- a/Ubuntu/install-eSim-scripts/install-eSim-23.04.sh +++ b/Ubuntu/install-eSim-scripts/install-eSim-23.04.sh @@ -15,6 +15,8 @@ # AUTHORS: Fahim Khan, Rahul Paknikar, Saurabh Bansode, # Sumanto Kar, Partha Singha Roy, Jayanth Tatineni, # Anshul Verma +# MENTORS: Sumanto Kar, Varad Patil, Shanti Priya K, Aditya M +# INTERNS: Akshay Rukade, Haripriyan R # ORGANIZATION: eSim Team, FOSSEE, IIT Bombay # CREATED: Wednesday 15 July 2015 15:26 # REVISION: Sunday 25 May 2025 17:40 @@ -175,6 +177,7 @@ function installSky130Pdk sudo mv /usr/share/local/volare/sky130/versions/0fe599b2afb6708d281543108caf8310912f54af/sky130A/libs.ref/sky130_fd_pr /usr/share/local/ rm -rf /usr/share/local/volare/ + # Change ownership from root to the user sudo chown -R $USER:$USER /usr/share/local/sky130_fd_pr/ @@ -182,6 +185,31 @@ function installSky130Pdk } +function installIhpPdk +{ + echo -n "Do you want to install IHP Open PDK for analog IC design? (y/n): " + read installIhp + + if [ "$installIhp" == "y" -o "$installIhp" == "Y" ]; then + echo "Installing IHP Open PDK........................" + + if [ -f "ihp/ihp-install-script.sh" ]; then + cd ihp/ + chmod +x ihp-install-script.sh + trap "" ERR + ./ihp-install-script.sh --install + trap error_exit ERR + cd ../ + else + echo "IHP install script not found. Skipping..." + fi + else + echo "Skipping IHP Open PDK installation" + fi +} + + + function installKicad { @@ -426,6 +454,7 @@ if [ $option == "--install" ];then copyKicadLibrary installNghdl installSky130Pdk + installIhpPdk createDesktopStartScript if [ $? -ne 0 ];then @@ -455,6 +484,14 @@ elif [ $option == "--uninstall" ];then echo "Removing SKY130 PDK......................" sudo rm -rf /usr/share/local/sky130_fd_pr + echo "Removing IHP Open PDK...................." + if [ -f "ihp/install-ihp-openpdk.sh" ]; then + cd ihp/ + chmod +x install-ihp-openpdk.sh + ./install-ihp-openpdk.sh --uninstall + cd ../ + fi + echo "Removing NGHDL..........................." rm -rf library/modelParamXML/Nghdl/* rm -rf library/modelParamXML/Ngveri/* diff --git a/Ubuntu/install-eSim-scripts/install-eSim-24.04.sh b/Ubuntu/install-eSim-scripts/install-eSim-24.04.sh index 4e8948fdf..1ec7d15a2 100644 --- a/Ubuntu/install-eSim-scripts/install-eSim-24.04.sh +++ b/Ubuntu/install-eSim-scripts/install-eSim-24.04.sh @@ -15,6 +15,8 @@ # AUTHORS: Fahim Khan, Rahul Paknikar, Saurabh Bansode, # Sumanto Kar, Partha Singha Roy, Harsha Narayana P, # Jayanth Tatineni, Anshul Verma +# MENTORS: Sumanto Kar, Varad Patil, Shanti Priya K, Aditya M +# INTERNS: Akshay Rukade, Haripriyan R # ORGANIZATION: eSim Team, FOSSEE, IIT Bombay # CREATED: Wednesday 15 July 2015 15:26 # REVISION: Sunday 25 May 2025 17:40 @@ -103,6 +105,29 @@ function installSky130Pdk } +function installIhpPdk +{ + echo -n "Do you want to install IHP Open PDK for analog IC design? (y/n): " + read installIhp + + if [ "$installIhp" == "y" -o "$installIhp" == "Y" ]; then + echo "Installing IHP Open PDK........................" + + if [ -f "ihp/ihp-install-script.sh" ]; then + cd ihp/ + chmod +x ihp-install-script.sh + trap "" ERR + ./ihp-install-script.sh --install + trap error_exit ERR + cd ../ + else + echo "IHP install script not found. Skipping..." + fi + else + echo "Skipping IHP Open PDK installation" + fi +} + function installKicad { @@ -399,6 +424,7 @@ if [ $option == "--install" ];then copyKicadLibrary installNghdl installSky130Pdk + installIhpPdk createDesktopStartScript if [ $? -ne 0 ];then @@ -429,6 +455,14 @@ elif [ $option == "--uninstall" ];then echo "Removing SKY130 PDK......................" sudo rm -R /usr/share/local/sky130_fd_pr + echo "Removing IHP Open PDK...................." + if [ -f "ihp/install-ihp-openpdk.sh" ]; then + cd ihp/ + chmod +x install-ihp-openpdk.sh + ./install-ihp-openpdk.sh --uninstall + cd ../ + fi + echo "Removing NGHDL..........................." rm -rf library/modelParamXML/Nghdl/* rm -rf library/modelParamXML/Ngveri/*