diff --git a/dockerfiles/devenv.Dockerfile b/dockerfiles/devenv.Dockerfile
index 5725f4453044148b7f3745c863a06509e97d66e0..38944e712bd87013a2e4532516ee440166d30109 100644
--- a/dockerfiles/devenv.Dockerfile
+++ b/dockerfiles/devenv.Dockerfile
@@ -1,7 +1,8 @@
 ARG ROS_DISTRO
-
 FROM osrf/ros:${ROS_DISTRO}-desktop-full
-RUN echo "Building devenv for ROS" $ROS_DISTRO
+
+ARG SHELL
+RUN echo "Building devenv for ROS" $ROS_DISTRO "with shell" $SHELL
 
 # Avoid warnings by switching to noninteractive
 ENV DEBIAN_FRONTEND=noninteractive
@@ -45,21 +46,27 @@ RUN apt-get update && \
     openssh-client \
     trash-cli \
     valgrind \
-    xterm \
-    wget \
-    zsh
+    wget
 
-# ZSH tools based on ubuntu version
+RUN if [ "$SHELL" = "zsh" ]; \
+    then \
+        apt-get -y install zsh; \
+    fi
+
+# Install extra libs from .deb files
 WORKDIR /tmp/srcs/
 COPY /extra_libs/* ./
 
-RUN if [ "${ROS_DISTRO}" = "melodic"  ]; \
+# Enviroment tools based on ubuntu version
+RUN if [ -f "common_libs.txt" ]; \
     then \
-        dpkg -i *.deb; \
-    else \
-        dpkg -i bat*.deb; \
-        dpkg -i lsd*.deb; \
-        dpkg -i ripgrep*.deb; \
+        grep -v '^#' common_libs.txt | xargs dpkg -i ;\
+    fi
+
+# Extra libs, e.g. vtk-7.1_20221201-1_amd64.deb
+RUN if [ -f "${ROS_DISTRO}_libs.txt" ]; \
+    then \
+        grep -v '^#' ${ROS_DISTRO}_libs.txt | xargs dpkg -i ;\
     fi
 
 RUN rm -rf *
@@ -151,11 +158,14 @@ RUN apt-get update \
 COPY ./ros_entrypoint.sh /
 RUN chmod a+x /ros_entrypoint.sh
 
-ENTRYPOINT ["/ros_entrypoint.sh"]
-CMD ["zsh"]
 ENV ROS_DISTRO "${ROS_DISTRO}"
-ENV SHELL /usr/bin/zsh
+ENV SHELL "${SHELL}"
 ENV RUNNING_IN_DOCKER true
 
+# SHELL ["/bin/${SHELL}"]
+
 # Switch back to dialog for any ad-hoc use of apt-get
 ENV DEBIAN_FRONTEND=
+
+ENTRYPOINT ["/ros_entrypoint.sh"]
+CMD /usr/bin/$SHELL
\ No newline at end of file
diff --git a/dockerfiles/extra_libs/common_libs.txt b/dockerfiles/extra_libs/common_libs.txt
new file mode 100644
index 0000000000000000000000000000000000000000..70c87b04839a3f4d494bcbc04f76e0211772880f
--- /dev/null
+++ b/dockerfiles/extra_libs/common_libs.txt
@@ -0,0 +1,4 @@
+# List with the additional libraries to install in devenv image
+bat-musl_0.24.0_amd64.deb
+lsd-musl_1.0.0_amd64.deb
+ripgrep_13.0.0_amd64.deb
\ No newline at end of file
diff --git a/dockerfiles/extra_libs/melodic_libs.txt b/dockerfiles/extra_libs/melodic_libs.txt
new file mode 100644
index 0000000000000000000000000000000000000000..7e013609f01d2b2f23d14104d23eb89717c41ad7
--- /dev/null
+++ b/dockerfiles/extra_libs/melodic_libs.txt
@@ -0,0 +1,3 @@
+# Lits of the particualr libs to install in melodic docker image
+pcl-1.9.1_20221201-1_amd64.deb
+vtk-7.1_20221201-1_amd64.deb
\ No newline at end of file
diff --git a/dockerfiles/builder.Dockerfile b/dockerfiles/other/builder.Dockerfile
similarity index 100%
rename from dockerfiles/builder.Dockerfile
rename to dockerfiles/other/builder.Dockerfile
diff --git a/dockerfiles/id_rsa_TecnaliaUB20 b/dockerfiles/other/id_rsa_TecnaliaUB20
similarity index 100%
rename from dockerfiles/id_rsa_TecnaliaUB20
rename to dockerfiles/other/id_rsa_TecnaliaUB20
diff --git a/dockerfiles/old_devenv.Dockerfile b/dockerfiles/other/old_devenv.Dockerfile
similarity index 100%
rename from dockerfiles/old_devenv.Dockerfile
rename to dockerfiles/other/old_devenv.Dockerfile
diff --git a/dotfiles/docker.sh b/dotfiles/docker.sh
index 5822deb8ccc06899cf40cd0e1d4f31f3667b1f1a..29feba47877c6ea5ebd51c485ab96e00f63c28a8 100644
--- a/dotfiles/docker.sh
+++ b/dotfiles/docker.sh
@@ -1,4 +1,6 @@
 # docker common commands
+export dockerfiles_DIR=~/srcs/development_environment/dockerfiles;
+
 alias dim="docker images"
 alias dpsa="docker ps -a"
 alias dps="docker ps"
@@ -10,8 +12,26 @@ alias dimp="docker image prune"
 # Build docker image
 # usage: dockbuild {noetic, melodic}
 function dockbuild(){
-	cd ~/srcs/development_environment/dockerfiles;
-	docker build -t devenv:$1 --build-arg ROS_DISTRO=$1 -f devenv.Dockerfile .
+    if [ $# -lt 1 ]; then
+        echo "Usage: dockbuild <ROS_DISTRO> [build_args]"
+        echo "build_args:"
+        echo "      SHELL - zsh (default) or bash"
+        return 1
+    fi
+
+	cd $dockerfiles_DIR;
+
+    if [ $# -lt 2 ]; then
+        echo "Building ROS_DISTRO:"$1 "with SHELL_VERISON: zsh"
+        docker build -t devenv:$1 --build-arg ROS_DISTRO=$1 --build-arg SHELL="zsh" -f devenv.Dockerfile .
+    else
+        if [ $2 = "bash" ]; then
+            echo "Building ROS_DISTRO:"$1 "with SHELL_VERISON:"$2
+            docker build -t devenv:$1 --build-arg ROS_DISTRO=$1 --build-arg SHELL=$2 -f devenv.Dockerfile .
+        else
+            echo "SHELL_VERISON:"$2 "not supported"
+        fi
+    fi
 }
 
 # Run container with rocker