Compare commits
	
		
			2 commits
		
	
	
		
			988bf503c7
			...
			f29bcb7940
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| f29bcb7940 | |||
| bd0b200118 | 
					 19 changed files with 917 additions and 978 deletions
				
			
		
							
								
								
									
										43
									
								
								bin/config/ansible.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								bin/config/ansible.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,43 @@ | ||||||
|  | # Ansible gitignore | ||||||
|  | 
 | ||||||
|  | # Ansible roles downloaded from Galaxy | ||||||
|  | roles/* | ||||||
|  | !roles/requirements.yml | ||||||
|  | 
 | ||||||
|  | # Ansible vault password file | ||||||
|  | .vault_pass | ||||||
|  | 
 | ||||||
|  | # Inventory files with sensitive data | ||||||
|  | inventory/group_vars/*/vault.yml | ||||||
|  | inventory/host_vars/*/vault.yml | ||||||
|  | 
 | ||||||
|  | # Retry files | ||||||
|  | *.retry | ||||||
|  | 
 | ||||||
|  | # Log files | ||||||
|  | *.log | ||||||
|  | 
 | ||||||
|  | # Runtime files | ||||||
|  | *.pid | ||||||
|  | 
 | ||||||
|  | # Python artifacts | ||||||
|  | __pycache__/ | ||||||
|  | *.py[cod] | ||||||
|  | *$py.class | ||||||
|  | *.so | ||||||
|  | .Python | ||||||
|  | env/ | ||||||
|  | build/ | ||||||
|  | develop-eggs/ | ||||||
|  | dist/ | ||||||
|  | downloads/ | ||||||
|  | eggs/ | ||||||
|  | .eggs/ | ||||||
|  | lib/ | ||||||
|  | lib64/ | ||||||
|  | parts/ | ||||||
|  | sdist/ | ||||||
|  | var/ | ||||||
|  | *.egg-info/ | ||||||
|  | .installed.cfg | ||||||
|  | *.egg | ||||||
							
								
								
									
										76
									
								
								bin/config/c.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								bin/config/c.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,76 @@ | ||||||
|  | # C gitignore | ||||||
|  | 
 | ||||||
|  | # Prerequisites | ||||||
|  | *.d | ||||||
|  | 
 | ||||||
|  | # Object files | ||||||
|  | *.o | ||||||
|  | *.ko | ||||||
|  | *.obj | ||||||
|  | *.elf | ||||||
|  | 
 | ||||||
|  | # Linker output | ||||||
|  | *.ilk | ||||||
|  | *.map | ||||||
|  | *.exp | ||||||
|  | 
 | ||||||
|  | # Precompiled Headers | ||||||
|  | *.gch | ||||||
|  | *.pch | ||||||
|  | 
 | ||||||
|  | # Libraries | ||||||
|  | *.lib | ||||||
|  | *.a | ||||||
|  | *.la | ||||||
|  | *.lo | ||||||
|  | 
 | ||||||
|  | # Shared objects (inc. Windows DLLs) | ||||||
|  | *.dll | ||||||
|  | *.so | ||||||
|  | *.so.* | ||||||
|  | *.dylib | ||||||
|  | 
 | ||||||
|  | # Executables | ||||||
|  | *.exe | ||||||
|  | *.out | ||||||
|  | *.app | ||||||
|  | *.i*86 | ||||||
|  | *.x86_64 | ||||||
|  | *.hex | ||||||
|  | 
 | ||||||
|  | # Debug files | ||||||
|  | *.dSYM/ | ||||||
|  | *.su | ||||||
|  | *.idb | ||||||
|  | *.pdb | ||||||
|  | 
 | ||||||
|  | # Kernel Module Compile Results | ||||||
|  | *.mod* | ||||||
|  | *.cmd | ||||||
|  | .tmp_versions/ | ||||||
|  | modules.order | ||||||
|  | Module.symvers | ||||||
|  | Mkfile.old | ||||||
|  | dkms.conf | ||||||
|  | 
 | ||||||
|  | # CMake build | ||||||
|  | build/ | ||||||
|  | CMakeFiles/ | ||||||
|  | CMakeCache.txt | ||||||
|  | cmake_install.cmake | ||||||
|  | Makefile | ||||||
|  | *.cmake | ||||||
|  | 
 | ||||||
|  | # IDE specific files | ||||||
|  | .vscode/ | ||||||
|  | .idea/ | ||||||
|  | *.swp | ||||||
|  | *.swo | ||||||
|  | *~ | ||||||
|  | 
 | ||||||
|  | # Logs | ||||||
|  | *.log | ||||||
|  | 
 | ||||||
|  | # Test binary | ||||||
|  | test_* | ||||||
|  | !test_*.c | ||||||
							
								
								
									
										52
									
								
								bin/config/cobol.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								bin/config/cobol.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,52 @@ | ||||||
|  | # COBOL gitignore | ||||||
|  | 
 | ||||||
|  | # Objetos compilados | ||||||
|  | *.o | ||||||
|  | *.so | ||||||
|  | *.dll | ||||||
|  | *.exe | ||||||
|  | *.out | ||||||
|  | *.obj | ||||||
|  | 
 | ||||||
|  | # Archivos intermedios | ||||||
|  | *.int | ||||||
|  | *.gnt | ||||||
|  | *.idy | ||||||
|  | *.lst | ||||||
|  | *.i | ||||||
|  | *.x | ||||||
|  | *.d | ||||||
|  | *.lis | ||||||
|  | 
 | ||||||
|  | # Archivos de respaldo | ||||||
|  | *~ | ||||||
|  | *.bak | ||||||
|  | *.back | ||||||
|  | *.backup | ||||||
|  | 
 | ||||||
|  | # Logs y archivos temporales | ||||||
|  | *.log | ||||||
|  | *.tmp | ||||||
|  | temp/ | ||||||
|  | tmp/ | ||||||
|  | 
 | ||||||
|  | # Archivos específicos de IDE | ||||||
|  | .vscode/ | ||||||
|  | .idea/ | ||||||
|  | *.sublime-project | ||||||
|  | *.sublime-workspace | ||||||
|  | 
 | ||||||
|  | # Directorios de compilación  | ||||||
|  | build/ | ||||||
|  | bin/ | ||||||
|  | obj/ | ||||||
|  | 
 | ||||||
|  | # Archivos de configuración local | ||||||
|  | *.env | ||||||
|  | .env | ||||||
|  | local_settings.txt | ||||||
|  | 
 | ||||||
|  | # Archivos de datos de prueba | ||||||
|  | *.dat | ||||||
|  | *.idx | ||||||
|  | *.testdata | ||||||
							
								
								
									
										96
									
								
								bin/config/cpp.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										96
									
								
								bin/config/cpp.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,96 @@ | ||||||
|  | # C++ gitignore | ||||||
|  | 
 | ||||||
|  | # Prerequisites | ||||||
|  | *.d | ||||||
|  | 
 | ||||||
|  | # Compiled Object files | ||||||
|  | *.slo | ||||||
|  | *.lo | ||||||
|  | *.o | ||||||
|  | *.obj | ||||||
|  | 
 | ||||||
|  | # Precompiled Headers | ||||||
|  | *.gch | ||||||
|  | *.pch | ||||||
|  | 
 | ||||||
|  | # Compiled Dynamic libraries | ||||||
|  | *.so | ||||||
|  | *.dylib | ||||||
|  | *.dll | ||||||
|  | 
 | ||||||
|  | # Fortran module files | ||||||
|  | *.mod | ||||||
|  | *.smod | ||||||
|  | 
 | ||||||
|  | # Compiled Static libraries | ||||||
|  | *.lai | ||||||
|  | *.la | ||||||
|  | *.a | ||||||
|  | *.lib | ||||||
|  | 
 | ||||||
|  | # Executables | ||||||
|  | *.exe | ||||||
|  | *.out | ||||||
|  | *.app | ||||||
|  | 
 | ||||||
|  | # Build directories | ||||||
|  | build/ | ||||||
|  | debug/ | ||||||
|  | release/ | ||||||
|  | bin/ | ||||||
|  | obj/ | ||||||
|  | 
 | ||||||
|  | # CMake artifacts | ||||||
|  | CMakeFiles/ | ||||||
|  | CMakeCache.txt | ||||||
|  | cmake_install.cmake | ||||||
|  | compile_commands.json | ||||||
|  | CTestTestfile.cmake | ||||||
|  | Makefile | ||||||
|  | *.cmake | ||||||
|  | 
 | ||||||
|  | # IDE specific files | ||||||
|  | .vscode/ | ||||||
|  | .idea/ | ||||||
|  | *.sublime-workspace | ||||||
|  | *.sublime-project | ||||||
|  | *.swp | ||||||
|  | *.swo | ||||||
|  | *~ | ||||||
|  | .vs/ | ||||||
|  | *.ncb | ||||||
|  | *.suo | ||||||
|  | *.sdf | ||||||
|  | *.opensdf | ||||||
|  | *.user | ||||||
|  | *.filters | ||||||
|  | ipch/ | ||||||
|  | 
 | ||||||
|  | # Editor specific | ||||||
|  | *.bak | ||||||
|  | *.tmp | ||||||
|  | 
 | ||||||
|  | # Qt | ||||||
|  | moc_*.cpp | ||||||
|  | qrc_*.cpp | ||||||
|  | ui_*.h | ||||||
|  | object_script.* | ||||||
|  | *.pro.user | ||||||
|  | *.pro.user.* | ||||||
|  | *.qbs.user | ||||||
|  | *.qbs.user.* | ||||||
|  | *.moc | ||||||
|  | 
 | ||||||
|  | # Doxygen | ||||||
|  | html/ | ||||||
|  | latex/ | ||||||
|  | docs/ | ||||||
|  | 
 | ||||||
|  | # Logs | ||||||
|  | *.log | ||||||
|  | 
 | ||||||
|  | # Dependencies | ||||||
|  | conan.lock | ||||||
|  | conanbuildinfo.* | ||||||
|  | conaninfo.* | ||||||
|  | graph_info.json | ||||||
							
								
								
									
										114
									
								
								bin/config/csharp.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										114
									
								
								bin/config/csharp.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,114 @@ | ||||||
|  | # C# gitignore | ||||||
|  | 
 | ||||||
|  | # User-specific files | ||||||
|  | *.suo | ||||||
|  | *.user | ||||||
|  | *.userosscache | ||||||
|  | *.sln.docstates | ||||||
|  | *.userprefs | ||||||
|  | 
 | ||||||
|  | # Build results | ||||||
|  | [Dd]ebug/ | ||||||
|  | [Dd]ebugPublic/ | ||||||
|  | [Rr]elease/ | ||||||
|  | [Rr]eleases/ | ||||||
|  | x64/ | ||||||
|  | x86/ | ||||||
|  | bld/ | ||||||
|  | [Bb]in/ | ||||||
|  | [Oo]bj/ | ||||||
|  | [Ll]og/ | ||||||
|  | 
 | ||||||
|  | # Visual Studio files | ||||||
|  | .vs/ | ||||||
|  | *_i.c | ||||||
|  | *_p.c | ||||||
|  | *_i.h | ||||||
|  | *.ilk | ||||||
|  | *.meta | ||||||
|  | *.obj | ||||||
|  | *.pch | ||||||
|  | *.pdb | ||||||
|  | *.pgc | ||||||
|  | *.pgd | ||||||
|  | *.rsp | ||||||
|  | *.sbr | ||||||
|  | *.tlb | ||||||
|  | *.tli | ||||||
|  | *.tlh | ||||||
|  | *.tmp | ||||||
|  | *.tmp_proj | ||||||
|  | *.log | ||||||
|  | *.vspscc | ||||||
|  | *.vssscc | ||||||
|  | .builds | ||||||
|  | *.pidb | ||||||
|  | *.svclog | ||||||
|  | *.scc | ||||||
|  | *.psess | ||||||
|  | *.vsp | ||||||
|  | *.vspx | ||||||
|  | *.sap | ||||||
|  | 
 | ||||||
|  | # NuGet Packages | ||||||
|  | *.nupkg | ||||||
|  | # The packages folder can be ignored because of Package Restore | ||||||
|  | **/packages/* | ||||||
|  | # except build/, which is used as an MSBuild target. | ||||||
|  | !**/packages/build/ | ||||||
|  | # NuGet v3's project.json files produces more ignorable files | ||||||
|  | *.nuget.props | ||||||
|  | *.nuget.targets | ||||||
|  | 
 | ||||||
|  | # MSTest test Results | ||||||
|  | [Tt]est[Rr]esult*/ | ||||||
|  | [Bb]uild[Ll]og.* | ||||||
|  | 
 | ||||||
|  | # NUNIT | ||||||
|  | *.VisualState.xml | ||||||
|  | TestResult.xml | ||||||
|  | 
 | ||||||
|  | # Build Results of an ATL Project | ||||||
|  | [Dd]ebugPS/ | ||||||
|  | [Rr]eleasePS/ | ||||||
|  | dlldata.c | ||||||
|  | 
 | ||||||
|  | # .NET Core | ||||||
|  | project.lock.json | ||||||
|  | project.fragment.lock.json | ||||||
|  | artifacts/ | ||||||
|  | **/Properties/launchSettings.json | ||||||
|  | 
 | ||||||
|  | # Visual Studio code coverage results | ||||||
|  | *.coverage | ||||||
|  | *.coveragexml | ||||||
|  | 
 | ||||||
|  | # ReSharper | ||||||
|  | _ReSharper*/ | ||||||
|  | *.[Rr]e[Ss]harper | ||||||
|  | *.DotSettings.user | ||||||
|  | 
 | ||||||
|  | # JustCode | ||||||
|  | .JustCode | ||||||
|  | 
 | ||||||
|  | # TeamCity | ||||||
|  | _TeamCity* | ||||||
|  | 
 | ||||||
|  | # DotCover | ||||||
|  | *.dotCover | ||||||
|  | 
 | ||||||
|  | # NCrunch | ||||||
|  | _NCrunch_* | ||||||
|  | .*crunch*.local.xml | ||||||
|  | nCrunchTemp_* | ||||||
|  | 
 | ||||||
|  | # Logs | ||||||
|  | *.log | ||||||
|  | *.logs | ||||||
|  | 
 | ||||||
|  | # Rider | ||||||
|  | .idea/ | ||||||
|  | *.sln.iml | ||||||
|  | 
 | ||||||
|  | # User-specific files | ||||||
|  | *.rsuser | ||||||
							
								
								
									
										77
									
								
								bin/config/nodejs.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								bin/config/nodejs.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,77 @@ | ||||||
|  | # Node.js gitignore | ||||||
|  | 
 | ||||||
|  | # Dependencias | ||||||
|  | node_modules/ | ||||||
|  | jspm_packages/ | ||||||
|  | 
 | ||||||
|  | # Logs | ||||||
|  | logs | ||||||
|  | *.log | ||||||
|  | npm-debug.log* | ||||||
|  | yarn-debug.log* | ||||||
|  | yarn-error.log* | ||||||
|  | lerna-debug.log* | ||||||
|  | .pnpm-debug.log* | ||||||
|  | 
 | ||||||
|  | # Archivos de diagnóstico | ||||||
|  | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json | ||||||
|  | 
 | ||||||
|  | # Datos en tiempo de ejecución | ||||||
|  | pids | ||||||
|  | *.pid | ||||||
|  | *.seed | ||||||
|  | *.pid.lock | ||||||
|  | 
 | ||||||
|  | # Directorio para bibliotecas instrumentadas generadas por jscoverage/JSCover | ||||||
|  | lib-cov | ||||||
|  | 
 | ||||||
|  | # Directorio de cobertura utilizado por herramientas como istanbul | ||||||
|  | coverage | ||||||
|  | *.lcov | ||||||
|  | 
 | ||||||
|  | # nyc test coverage | ||||||
|  | .nyc_output | ||||||
|  | 
 | ||||||
|  | # Almacenamiento intermedio de TypeScript | ||||||
|  | *.tsbuildinfo | ||||||
|  | 
 | ||||||
|  | # Directorios opcionales de npm | ||||||
|  | .npm | ||||||
|  | .node_repl_history | ||||||
|  | 
 | ||||||
|  | # Salida de 'npm pack' | ||||||
|  | *.tgz | ||||||
|  | 
 | ||||||
|  | # dotenv environment variable files | ||||||
|  | .env | ||||||
|  | .env.development.local | ||||||
|  | .env.test.local | ||||||
|  | .env.production.local | ||||||
|  | .env.local | ||||||
|  | 
 | ||||||
|  | # Cache y build | ||||||
|  | .cache/ | ||||||
|  | dist/ | ||||||
|  | build/ | ||||||
|  | .next/ | ||||||
|  | out/ | ||||||
|  | .nuxt/ | ||||||
|  | .output/ | ||||||
|  | .vuepress/dist | ||||||
|  | 
 | ||||||
|  | # Directorios específicos del sistema | ||||||
|  | .DS_Store | ||||||
|  | Thumbs.db | ||||||
|  | 
 | ||||||
|  | # yarn v2 | ||||||
|  | .yarn/cache | ||||||
|  | .yarn/unplugged | ||||||
|  | .yarn/build-state.yml | ||||||
|  | .yarn/install-state.gz | ||||||
|  | .pnp.* | ||||||
|  | 
 | ||||||
|  | # Archivos de bloqueo | ||||||
|  | package-lock.json | ||||||
|  | yarn.lock | ||||||
|  | # Mantener en el repositorio | ||||||
|  | !.yarn.lock | ||||||
							
								
								
									
										63
									
								
								bin/config/odoo.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								bin/config/odoo.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,63 @@ | ||||||
|  | # Odoo gitignore | ||||||
|  | 
 | ||||||
|  | # Data directory - No hacer seguimiento de la carpeta data y su contenido | ||||||
|  | data/ | ||||||
|  | /data/ | ||||||
|  | 
 | ||||||
|  | # Bytecode | ||||||
|  | *.py[cod] | ||||||
|  | __pycache__/ | ||||||
|  | 
 | ||||||
|  | # Archivos generados por Odoo | ||||||
|  | *.pot | ||||||
|  | *.pyc | ||||||
|  | *.pyo | ||||||
|  | *.mo | ||||||
|  | *.egg-info | ||||||
|  | *.egg | ||||||
|  | 
 | ||||||
|  | # Directorios generados por Odoo | ||||||
|  | .eggs/ | ||||||
|  | eggs/ | ||||||
|  | develop-eggs/ | ||||||
|  | node_modules/ | ||||||
|  | /venv/ | ||||||
|  | /.venv/ | ||||||
|  | 
 | ||||||
|  | # Logs y bases de datos de prueba | ||||||
|  | filestore/ | ||||||
|  | logs/ | ||||||
|  | *.log | ||||||
|  | *.sql | ||||||
|  | *.sqlite | ||||||
|  | *.rdb | ||||||
|  | 
 | ||||||
|  | # IDE y configuración de entorno | ||||||
|  | .idea/ | ||||||
|  | .vscode/ | ||||||
|  | .DS_Store | ||||||
|  | .env | ||||||
|  | .env* | ||||||
|  | !.env.example | ||||||
|  | 
 | ||||||
|  | # Configuración local | ||||||
|  | odoo.conf | ||||||
|  | .odoorc | ||||||
|  | .odoorpc | ||||||
|  | 
 | ||||||
|  | # Archivos temporales | ||||||
|  | *.swp | ||||||
|  | *.tmp | ||||||
|  | *~ | ||||||
|  | *.bak | ||||||
|  | 
 | ||||||
|  | # Archivos de sesión | ||||||
|  | .directory | ||||||
|  | .Trash-* | ||||||
|  | 
 | ||||||
|  | # Archivos de virtualenv | ||||||
|  | bin/ | ||||||
|  | include/ | ||||||
|  | lib/ | ||||||
|  | share/ | ||||||
|  | pip-selfcheck.json | ||||||
|  | @ -1 +0,0 @@ | ||||||
| git@git.rosero.one:mrosero/devs_odoo.git |  | ||||||
|  | @ -1 +0,0 @@ | ||||||
| https://git.rosero.one/mrosero/devs_odoo.git |  | ||||||
							
								
								
									
										94
									
								
								bin/config/otros.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								bin/config/otros.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,94 @@ | ||||||
|  | # Archivo .gitignore genérico para diversos proyectos | ||||||
|  | 
 | ||||||
|  | # Archivos temporales | ||||||
|  | *.tmp | ||||||
|  | *.temp | ||||||
|  | *.swp | ||||||
|  | *.swo | ||||||
|  | *~ | ||||||
|  | ._* | ||||||
|  | *# | ||||||
|  | 
 | ||||||
|  | # Archivos de log | ||||||
|  | *.log | ||||||
|  | log/ | ||||||
|  | logs/ | ||||||
|  | 
 | ||||||
|  | # Archivos de entorno | ||||||
|  | .env | ||||||
|  | .env.* | ||||||
|  | !.env.example | ||||||
|  | 
 | ||||||
|  | # Archivos de caché | ||||||
|  | .cache/ | ||||||
|  | cache/ | ||||||
|  | .cached/ | ||||||
|  | .sass-cache/ | ||||||
|  | .eslintcache | ||||||
|  | .npm | ||||||
|  | .yarn/cache | ||||||
|  | 
 | ||||||
|  | # Dependencias | ||||||
|  | node_modules/ | ||||||
|  | vendor/ | ||||||
|  | bower_components/ | ||||||
|  | jspm_packages/ | ||||||
|  | .pnp/ | ||||||
|  | .pnp.js | ||||||
|  | 
 | ||||||
|  | # Archivos de construcción | ||||||
|  | dist/ | ||||||
|  | build/ | ||||||
|  | out/ | ||||||
|  | output/ | ||||||
|  | target/ | ||||||
|  | bin/ | ||||||
|  | obj/ | ||||||
|  | 
 | ||||||
|  | # Archivos de IDE | ||||||
|  | .idea/ | ||||||
|  | .vscode/ | ||||||
|  | *.sublime-project | ||||||
|  | *.sublime-workspace | ||||||
|  | .project | ||||||
|  | .settings/ | ||||||
|  | .classpath | ||||||
|  | .DS_Store | ||||||
|  | .directory | ||||||
|  | Thumbs.db | ||||||
|  | .vs/ | ||||||
|  | 
 | ||||||
|  | # Archivos de cobertura y testing | ||||||
|  | coverage/ | ||||||
|  | .coverage | ||||||
|  | htmlcov/ | ||||||
|  | test-results/ | ||||||
|  | .pytest_cache/ | ||||||
|  | .nyc_output/ | ||||||
|  | .phpunit.result.cache | ||||||
|  | junit.xml | ||||||
|  | *.lcov | ||||||
|  | 
 | ||||||
|  | # Documentación generada | ||||||
|  | docs/_build/ | ||||||
|  | docs/generated/ | ||||||
|  | api-docs/ | ||||||
|  | jsdoc/ | ||||||
|  | apidoc/ | ||||||
|  | 
 | ||||||
|  | # Archivos de configuración local y datos | ||||||
|  | *.sqlite | ||||||
|  | *.sqlite3 | ||||||
|  | *.db | ||||||
|  | *.sql | ||||||
|  | *.dat | ||||||
|  | *.bak | ||||||
|  | config/local.json | ||||||
|  | config/local.yaml | ||||||
|  | config/local.yml | ||||||
|  | local.conf | ||||||
|  | 
 | ||||||
|  | # Sistema específico | ||||||
|  | .DS_Store | ||||||
|  | Thumbs.db | ||||||
|  | desktop.ini | ||||||
							
								
								
									
										85
									
								
								bin/config/php.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										85
									
								
								bin/config/php.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,85 @@ | ||||||
|  | # PHP gitignore | ||||||
|  | 
 | ||||||
|  | # Composer | ||||||
|  | /vendor/ | ||||||
|  | composer.phar | ||||||
|  | /composer.lock | ||||||
|  | 
 | ||||||
|  | # Archivos de configuración sensibles | ||||||
|  | .env | ||||||
|  | .env.backup | ||||||
|  | .phpunit.result.cache | ||||||
|  | phpunit.xml | ||||||
|  | 
 | ||||||
|  | # Archivos de caché | ||||||
|  | *.cache | ||||||
|  | 
 | ||||||
|  | # Archivos de logs | ||||||
|  | *.log | ||||||
|  | logs/ | ||||||
|  | error_log | ||||||
|  | access_log | ||||||
|  | 
 | ||||||
|  | # Archivos y directorios específicos de frameworks | ||||||
|  | /bootstrap/cache/ | ||||||
|  | /storage/ | ||||||
|  | /public/storage | ||||||
|  | /public/hot | ||||||
|  | 
 | ||||||
|  | # Laravel Mix | ||||||
|  | /node_modules/ | ||||||
|  | /public/css/ | ||||||
|  | /public/js/ | ||||||
|  | /public/mix-manifest.json | ||||||
|  | 
 | ||||||
|  | # Symfony | ||||||
|  | /bin/* | ||||||
|  | /var/ | ||||||
|  | /vendor/ | ||||||
|  | /.env.local | ||||||
|  | /.env.local.php | ||||||
|  | /.env.*.local | ||||||
|  | /config/secrets/prod/prod.decrypt.private.php | ||||||
|  | /public/bundles/ | ||||||
|  | 
 | ||||||
|  | # PHPUnit | ||||||
|  | /.phpunit.cache | ||||||
|  | .phpunit.result.cache | ||||||
|  | /phpunit.xml | ||||||
|  | 
 | ||||||
|  | # Directorios específicos del sistema | ||||||
|  | .DS_Store | ||||||
|  | Thumbs.db | ||||||
|  | 
 | ||||||
|  | # IDE y editores | ||||||
|  | /.idea/ | ||||||
|  | /.vscode/ | ||||||
|  | /.vagrant/ | ||||||
|  | .project | ||||||
|  | .settings/ | ||||||
|  | *.swp | ||||||
|  | *.swo | ||||||
|  | *~ | ||||||
|  | .vs/ | ||||||
|  | *.sublime-project | ||||||
|  | *.sublime-workspace | ||||||
|  | *.code-workspace | ||||||
|  | 
 | ||||||
|  | # Archivos específicos de WordPress | ||||||
|  | /wp-config.php | ||||||
|  | /wp-content/uploads/ | ||||||
|  | /wp-content/cache/ | ||||||
|  | /wp-content/backup-db/ | ||||||
|  | /wp-content/upgrade/ | ||||||
|  | /wp-content/updraft/ | ||||||
|  | /wp-content/advanced-cache.php | ||||||
|  | /wp-content/wp-cache-config.php | ||||||
|  | /wp-content/debug.log | ||||||
|  | 
 | ||||||
|  | # Archivos de sistema | ||||||
|  | *.com | ||||||
|  | *.class | ||||||
|  | *.dll | ||||||
|  | *.exe | ||||||
|  | *.o | ||||||
|  | *.so | ||||||
							
								
								
									
										83
									
								
								bin/config/python.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								bin/config/python.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,83 @@ | ||||||
|  | # Python gitignore | ||||||
|  | 
 | ||||||
|  | # Bytecode | ||||||
|  | __pycache__/ | ||||||
|  | *.py[cod] | ||||||
|  | *$py.class | ||||||
|  | 
 | ||||||
|  | # Distribución y empaquetado | ||||||
|  | .Python | ||||||
|  | build/ | ||||||
|  | develop-eggs/ | ||||||
|  | dist/ | ||||||
|  | downloads/ | ||||||
|  | eggs/ | ||||||
|  | .eggs/ | ||||||
|  | lib/ | ||||||
|  | lib64/ | ||||||
|  | parts/ | ||||||
|  | sdist/ | ||||||
|  | var/ | ||||||
|  | wheels/ | ||||||
|  | share/python-wheels/ | ||||||
|  | *.egg-info/ | ||||||
|  | .installed.cfg | ||||||
|  | *.egg | ||||||
|  | MANIFEST | ||||||
|  | 
 | ||||||
|  | # Unit test / coverage reports | ||||||
|  | htmlcov/ | ||||||
|  | .tox/ | ||||||
|  | .nox/ | ||||||
|  | .coverage | ||||||
|  | .coverage.* | ||||||
|  | .cache | ||||||
|  | nosetests.xml | ||||||
|  | coverage.xml | ||||||
|  | *.cover | ||||||
|  | *.py,cover | ||||||
|  | .hypothesis/ | ||||||
|  | .pytest_cache/ | ||||||
|  | cover/ | ||||||
|  | 
 | ||||||
|  | # Documentación | ||||||
|  | docs/_build/ | ||||||
|  | docs/api/ | ||||||
|  | docs/generated/ | ||||||
|  | 
 | ||||||
|  | # Ambientes virtuales | ||||||
|  | .env | ||||||
|  | .venv | ||||||
|  | env/ | ||||||
|  | venv/ | ||||||
|  | ENV/ | ||||||
|  | env.bak/ | ||||||
|  | venv.bak/ | ||||||
|  | 
 | ||||||
|  | # Archivos de configuración y datos locales | ||||||
|  | .spyderproject | ||||||
|  | .spyproject | ||||||
|  | .ropeproject | ||||||
|  | local_settings.py | ||||||
|  | db.sqlite3 | ||||||
|  | db.sqlite3-journal | ||||||
|  | instance/ | ||||||
|  | .webassets-cache | ||||||
|  | .ipynb_checkpoints | ||||||
|  | profile_default/ | ||||||
|  | ipython_config.py | ||||||
|  | 
 | ||||||
|  | # Mypy | ||||||
|  | .mypy_cache/ | ||||||
|  | .dmypy.json | ||||||
|  | dmypy.json | ||||||
|  | 
 | ||||||
|  | # Entornos IDE | ||||||
|  | .idea/ | ||||||
|  | .vscode/ | ||||||
|  | *.swp | ||||||
|  | *.swo | ||||||
|  | *~ | ||||||
|  | 
 | ||||||
|  | # Logs | ||||||
|  | *.log | ||||||
							
								
								
									
										11
									
								
								bin/config/python.head
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								bin/config/python.head
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,11 @@ | ||||||
|  | #!/usr/bin/env python3 | ||||||
|  | # -*- coding: utf-8 -*- | ||||||
|  | """ | ||||||
|  | Programa:[program filename]  | ||||||
|  | Descripción: [short program description] | ||||||
|  | Autor: [git user fullname <git user email>]  | ||||||
|  | Creación: [Created Date] | ||||||
|  | Actualización: [updated] | ||||||
|  | Versión: [from version file] | ||||||
|  | Licencia:  AGPL | ||||||
|  | """ | ||||||
							
								
								
									
										1
									
								
								bin/config/rate_temperature.ai
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								bin/config/rate_temperature.ai
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1 @@ | ||||||
|  | 0.4 | ||||||
							
								
								
									
										61
									
								
								bin/config/rust.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								bin/config/rust.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,61 @@ | ||||||
|  | # Rust gitignore | ||||||
|  | 
 | ||||||
|  | # Generated by Cargo | ||||||
|  | /target/ | ||||||
|  | Cargo.lock | ||||||
|  | 
 | ||||||
|  | # Remove Cargo.lock from gitignore if creating an executable, leave it for libraries | ||||||
|  | # More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html | ||||||
|  | 
 | ||||||
|  | # These are backup files generated by rustfmt | ||||||
|  | **/*.rs.bk | ||||||
|  | 
 | ||||||
|  | # MSVC Windows builds of rustc generate these, which store debugging information | ||||||
|  | *.pdb | ||||||
|  | 
 | ||||||
|  | # IDE specific files | ||||||
|  | .idea/ | ||||||
|  | .vscode/ | ||||||
|  | *.swp | ||||||
|  | *.swo | ||||||
|  | 
 | ||||||
|  | # Generated documentation | ||||||
|  | /doc/ | ||||||
|  | /target/doc/ | ||||||
|  | 
 | ||||||
|  | # Coverage reports | ||||||
|  | coverage/ | ||||||
|  | *.profraw | ||||||
|  | 
 | ||||||
|  | # Logs | ||||||
|  | *.log | ||||||
|  | 
 | ||||||
|  | # Environment variables | ||||||
|  | .env | ||||||
|  | .env.* | ||||||
|  | !.env.example | ||||||
|  | 
 | ||||||
|  | # Compiled files | ||||||
|  | *.rlib | ||||||
|  | *.rmeta | ||||||
|  | *.a | ||||||
|  | *.so | ||||||
|  | *.dylib | ||||||
|  | *.dll | ||||||
|  | 
 | ||||||
|  | # Debug symbols | ||||||
|  | *.dSYM/ | ||||||
|  | 
 | ||||||
|  | # Test binaries | ||||||
|  | tests/test_*/ | ||||||
|  | 
 | ||||||
|  | # Optional: remove all test binaries in debug folder | ||||||
|  | target/debug/deps/* | ||||||
|  | !target/debug/deps/*.d | ||||||
|  | 
 | ||||||
|  | # Profiling data | ||||||
|  | *.prof | ||||||
|  | 
 | ||||||
|  | # OS specific | ||||||
|  | .DS_Store | ||||||
|  | Thumbs.db | ||||||
							
								
								
									
										56
									
								
								bin/config/sp32home.gitignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								bin/config/sp32home.gitignore
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,56 @@ | ||||||
|  | # ESP32/Arduino gitignore | ||||||
|  | 
 | ||||||
|  | # Platformio | ||||||
|  | .pio | ||||||
|  | .pioenvs | ||||||
|  | .piolibdeps | ||||||
|  | .clang_complete | ||||||
|  | .gcc-flags.json | ||||||
|  | .vscode/.browse.c_cpp.db* | ||||||
|  | .vscode/c_cpp_properties.json | ||||||
|  | .vscode/launch.json | ||||||
|  | .vscode/ipch | ||||||
|  | 
 | ||||||
|  | # Archivos Arduino específicos | ||||||
|  | .build/ | ||||||
|  | /build/ | ||||||
|  | .arduino15/ | ||||||
|  | ArduinoOutput/ | ||||||
|  | 
 | ||||||
|  | # IDE específicos | ||||||
|  | .vscode/ | ||||||
|  | .idea/ | ||||||
|  | *.iml | ||||||
|  | *.iws | ||||||
|  | *.ipr | ||||||
|  | .DS_Store | ||||||
|  | .directory | ||||||
|  | 
 | ||||||
|  | # Archivos binarios y de compilación | ||||||
|  | *.bin | ||||||
|  | *.elf | ||||||
|  | *.hex | ||||||
|  | *.map | ||||||
|  | *.d | ||||||
|  | *.o | ||||||
|  | *.a | ||||||
|  | *.mk | ||||||
|  | *.gch | ||||||
|  | 
 | ||||||
|  | # Archivos de configuración privados | ||||||
|  | **/wifi_credentials.h | ||||||
|  | **/credentials.h | ||||||
|  | secrets.h | ||||||
|  | wifi_config.h | ||||||
|  | 
 | ||||||
|  | # Logs | ||||||
|  | *.log | ||||||
|  | debug.txt | ||||||
|  | serial.txt | ||||||
|  | 
 | ||||||
|  | # Archivos temporales | ||||||
|  | *~ | ||||||
|  | ~* | ||||||
|  | ._* | ||||||
|  | *.bak | ||||||
|  | *.swp | ||||||
							
								
								
									
										169
									
								
								bin/odoo_set.sh
									
									
									
									
									
								
							
							
						
						
									
										169
									
								
								bin/odoo_set.sh
									
									
									
									
									
								
							|  | @ -1,169 +0,0 @@ | ||||||
| #\!/bin/bash |  | ||||||
| # |  | ||||||
| # odoo_set.sh |  | ||||||
| # Modified: 2025/03/12 15:00:00 |  | ||||||
| # Derechos de Autor (C) [2025] [Mauro Rosero P. <mauro@rosero.one> (mauro.rosero@gmail.com)] |  | ||||||
| # |  | ||||||
| # Este programa es software libre: usted puede redistribuirlo y/o modificarlo |  | ||||||
| # bajo los términos de la Licencia Pública Affero General de GNU tal como |  | ||||||
| # lo publica la Free Software Foundation, ya sea la versión 3 de la licencia, |  | ||||||
| # o (a su elección) cualquier versión posterior. |  | ||||||
| # |  | ||||||
| # Este programa se distribuye con la esperanza de que sea útil, |  | ||||||
| # pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de |  | ||||||
| # COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la |  | ||||||
| # Licencia Pública Affero General de GNU para obtener más detalles. |  | ||||||
| # |  | ||||||
| # Debería haber recibido una copia de la Licencia Pública Affero General |  | ||||||
| # junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>. |  | ||||||
| 
 |  | ||||||
| # Script para crear proyectos Odoo |  | ||||||
| # Uso: |  | ||||||
| #   ./odoo_set.sh |  | ||||||
| 
 |  | ||||||
| DEVSPATH=devs |  | ||||||
| BIN_HOME=$HOME/$DEVSPATH |  | ||||||
| BIN_MESG=bin/msg |  | ||||||
| BIN_LIBS=bin/lib |  | ||||||
| BIN_CFGS=bin/config |  | ||||||
| VERSION=1.0.0 |  | ||||||
| 
 |  | ||||||
| # CHECK SHELL LANGUAGE |  | ||||||
| BIN_LANG=${LANG:0:2} |  | ||||||
| 
 |  | ||||||
| # LOAD BASE BASH LIBRARY |  | ||||||
| source $BIN_HOME/$BIN_LIBS/base.lib |  | ||||||
| 
 |  | ||||||
| # LOAD CONSOLE BASH LIBRARY |  | ||||||
| source $BIN_HOME/$BIN_LIBS/console.lib |  | ||||||
| 
 |  | ||||||
| # LOAD ODOO BASH LIBRARY |  | ||||||
| source $BIN_HOME/$BIN_LIBS/odoo.lib |  | ||||||
| 
 |  | ||||||
| # Load head messages |  | ||||||
| load_messages $BIN_HOME $BIN_MESG $BIN_LANG "head" |  | ||||||
| 
 |  | ||||||
| # Load odoo messages |  | ||||||
| load_messages $BIN_HOME $BIN_MESG $BIN_LANG "odoo" |  | ||||||
| 
 |  | ||||||
| ########### MAIN PROGRAM ########### |  | ||||||
| 
 |  | ||||||
| # Set program title |  | ||||||
| title="$head_000 $odmsg_000" |  | ||||||
| apps_title="${odmsg_102}" |  | ||||||
| 
 |  | ||||||
| # Check if dialog is not installed, exited\! |  | ||||||
| command_installed "dialog" |  | ||||||
| if [ $? -ne 0 ] |  | ||||||
| then |  | ||||||
|   display_devstools_header "${odmsg_000}" |  | ||||||
|   echo "${head_001}" |  | ||||||
|   exit 200 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| # Check if os is valid\! |  | ||||||
| get_osname |  | ||||||
| if [ "${os_name}" == "${head_unknow}" ] |  | ||||||
| then |  | ||||||
|   dialog_error_box "${head_error}" "${head_os_error}" |  | ||||||
|   exit 3 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| # Obtener el nombre de carpeta de proyectos desde projects.dat |  | ||||||
| if [ -f "$BIN_HOME/$BIN_CFGS/projects.dat" ]; then |  | ||||||
|   PROJECTS_FOLDER=$(cat "$BIN_HOME/$BIN_CFGS/projects.dat" | head -n 1) |  | ||||||
| else |  | ||||||
|   dialog_error_box "${head_error}" "${odmsg_112}" |  | ||||||
|   exit 4 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| # Solicitar nombre del proyecto Odoo |  | ||||||
| clear |  | ||||||
| dialog_input_box "${odmsg_105}" "${odmsg_106}" "" |  | ||||||
| 
 |  | ||||||
| if [ $? -ne 0 ]; then |  | ||||||
|   dialog_error_box "${head_error}" "${head_op_error}" |  | ||||||
|   exit 1 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| # Validar que el nombre no esté vacío |  | ||||||
| if [ -z "$value" ]; then |  | ||||||
|   dialog_error_box "${head_error}" "${odmsg_107}" |  | ||||||
|   exit 2 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| PROJECT_NAME="$value" |  | ||||||
| 
 |  | ||||||
| # Solicitar descripción del proyecto Odoo |  | ||||||
| clear |  | ||||||
| dialog_input_box "${odmsg_117}" "" "" |  | ||||||
| 
 |  | ||||||
| if [ $? -ne 0 ]; then |  | ||||||
|   dialog_error_box "${head_error}" "${head_op_error}" |  | ||||||
|   exit 1 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| PROJECT_DESCRIPTION="$value" |  | ||||||
| # Si no se proporciona descripción, usar un texto predeterminado |  | ||||||
| if [ -z "$PROJECT_DESCRIPTION" ]; then |  | ||||||
|   PROJECT_DESCRIPTION="Este es un proyecto Odoo para gestionar procesos de negocio." |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| # Inicializar la variable result |  | ||||||
| result=0 |  | ||||||
| TEMP_FILE="/tmp/odoo_set_result.$$" |  | ||||||
| 
 |  | ||||||
| # Mostrar progreso de creación |  | ||||||
| ( |  | ||||||
|   echo 0; sleep 1 |  | ||||||
|   echo 20; echo "# ${odmsg_111}" |  | ||||||
|    |  | ||||||
|   # Crear el proyecto Odoo |  | ||||||
|   odoo_create_project "$PROJECT_NAME" "$PROJECTS_FOLDER" "$PROJECT_DESCRIPTION" |  | ||||||
|   result=$? |  | ||||||
|    |  | ||||||
|   # Guardar el resultado en un archivo temporal para recuperarlo después |  | ||||||
|   echo $result > "$TEMP_FILE" |  | ||||||
|    |  | ||||||
|   echo 80;  |  | ||||||
|   # Mensaje basado en el resultado |  | ||||||
|   if [ $result -eq 0 ]; then |  | ||||||
|     echo "# ${odmsg_115}" |  | ||||||
|   elif [ $result -eq 1 ]; then |  | ||||||
|     echo "# ${odmsg_110}" |  | ||||||
|   else |  | ||||||
|     echo "# ${odmsg_109}" |  | ||||||
|   fi |  | ||||||
|   sleep 1 |  | ||||||
|    |  | ||||||
|   # Finalizar |  | ||||||
|   echo 100 |  | ||||||
|   sleep 1 |  | ||||||
| ) | dialog --backtitle "${title}" --title "${apps_title}" --gauge "" 10 70 0 |  | ||||||
| 
 |  | ||||||
| # Recuperar el resultado |  | ||||||
| result=0 # Valor predeterminado en caso de error |  | ||||||
| if [ -f "$TEMP_FILE" ]; then |  | ||||||
|   result=$(cat "$TEMP_FILE") |  | ||||||
|   rm -f "$TEMP_FILE" |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| case $result in |  | ||||||
|   0) |  | ||||||
|     # Mostrar mensaje de éxito con caja de diálogo ampliada para mejor visibilidad |  | ||||||
|     # Bypassing dialog_error_box para tener más control sobre el tamaño |  | ||||||
|     title_text="${head_info} - ${apps_title}" |  | ||||||
|     message_text="${odmsg_108} $HOME/$DEVSPATH/$PROJECTS_FOLDER/$PROJECT_NAME\n\n${odmsg_116}" |  | ||||||
|     dialog --backtitle "${title}" --title "${title_text}" --msgbox "\n${message_text}" 12 80 |  | ||||||
|     ;; |  | ||||||
|   1) |  | ||||||
|     dialog_error_box "${head_warning}" "${odmsg_110}" |  | ||||||
|     ;; |  | ||||||
|   2|3) |  | ||||||
|     dialog_error_box "${head_error}" "${odmsg_109}" |  | ||||||
|     ;; |  | ||||||
| esac |  | ||||||
| 
 |  | ||||||
| # End Main Program |  | ||||||
| clear |  | ||||||
| exit 0 |  | ||||||
|  | @ -1,807 +0,0 @@ | ||||||
| #!/bin/bash |  | ||||||
| # |  | ||||||
| # Script: project_create.sh |  | ||||||
| # Description: Crea una carpeta de proyecto con la estructura requerida |  | ||||||
| # Modified: 2025-03-12 20:26:07 |  | ||||||
| # Derechos de Autor (C) [2025] [Mauro Rosero P. <mauro@rosero.one>] |  | ||||||
| # |  | ||||||
| # Este programa es software libre: usted puede redistribuirlo y/o modificarlo |  | ||||||
| # bajo los términos de la Licencia Pública Affero General de GNU tal como |  | ||||||
| # lo publica la Free Software Foundation, ya sea la versión 3 de la licencia, |  | ||||||
| # o (a su elección) cualquier versión posterior. |  | ||||||
| # |  | ||||||
| # Este programa se distribuye con la esperanza de que sea útil, |  | ||||||
| # pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de |  | ||||||
| # COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la |  | ||||||
| # Licencia Pública Affero General de GNU para obtener más detalles. |  | ||||||
| # |  | ||||||
| # Debería haber recibido una copia de la Licencia Pública Affero General |  | ||||||
| # junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>. |  | ||||||
| 
 |  | ||||||
| # Directorios base |  | ||||||
| SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" |  | ||||||
| BASE_DIR="$(dirname "$SCRIPT_DIR")" |  | ||||||
| CONFIG_DIR="$SCRIPT_DIR/config" |  | ||||||
| LIB_DIR="$SCRIPT_DIR/lib" |  | ||||||
| MSG_DIR="$SCRIPT_DIR/msg" |  | ||||||
| 
 |  | ||||||
| # Cargar libraries |  | ||||||
| source "$LIB_DIR/base.lib" |  | ||||||
| source "$LIB_DIR/console.lib" |  | ||||||
| source "$MSG_DIR/head.es" |  | ||||||
| 
 |  | ||||||
| # Variables globales |  | ||||||
| title="${head_000} ${head_002}" |  | ||||||
| apps_title="${proj_001}" |  | ||||||
| PROJECT_FOLDER="" |  | ||||||
| PROJECT_NAME="" |  | ||||||
| PROJECT_PATH="" |  | ||||||
| PROJECT_TYPE="" |  | ||||||
| PROJECT_DESCRIPTION="" |  | ||||||
| PROJECT_LICENSE="" |  | ||||||
| PROJECT_LICENSE_TEXT="" |  | ||||||
| VALID_TYPES=("ansible" "odoo" "sp32home" "nodejs" "python" "cobol" "php" "c" "cpp" "csharp" "rust" "otros") |  | ||||||
| 
 |  | ||||||
| # Estructura de datos para licencias: nombre, badge, texto corto |  | ||||||
| declare -A LICENSE_BADGES |  | ||||||
| LICENSE_BADGES["AGPL-3.0"]="https://img.shields.io/badge/License-AGPL--3.0-blue.svg" |  | ||||||
| LICENSE_BADGES["GPL-3.0"]="https://img.shields.io/badge/License-GPL--3.0-blue.svg" |  | ||||||
| LICENSE_BADGES["LGPL-3.0"]="https://img.shields.io/badge/License-LGPL--3.0-blue.svg" |  | ||||||
| LICENSE_BADGES["MIT"]="https://img.shields.io/badge/License-MIT-yellow.svg" |  | ||||||
| LICENSE_BADGES["Apache-2.0"]="https://img.shields.io/badge/License-Apache_2.0-blue.svg" |  | ||||||
| LICENSE_BADGES["BSD-3-Clause"]="https://img.shields.io/badge/License-BSD_3--Clause-blue.svg" |  | ||||||
| LICENSE_BADGES["BSD-2-Clause"]="https://img.shields.io/badge/License-BSD_2--Clause-orange.svg" |  | ||||||
| LICENSE_BADGES["CC-BY-4.0"]="https://img.shields.io/badge/License-CC_BY_4.0-lightgrey.svg" |  | ||||||
| LICENSE_BADGES["CC-BY-SA-4.0"]="https://img.shields.io/badge/License-CC_BY--SA_4.0-lightgrey.svg" |  | ||||||
| LICENSE_BADGES["CC0-1.0"]="https://img.shields.io/badge/License-CC0_1.0-lightgrey.svg" |  | ||||||
| LICENSE_BADGES["EPL-2.0"]="https://img.shields.io/badge/License-EPL_2.0-red.svg" |  | ||||||
| LICENSE_BADGES["MPL-2.0"]="https://img.shields.io/badge/License-MPL_2.0-brightgreen.svg" |  | ||||||
| LICENSE_BADGES["Unlicense"]="https://img.shields.io/badge/license-Unlicense-blue.svg" |  | ||||||
| LICENSE_BADGES["OPL-1.0"]="https://img.shields.io/badge/License-OPL--1.0-orange.svg" |  | ||||||
| LICENSE_BADGES["OEEL-1.0"]="https://img.shields.io/badge/License-OEEL--1.0-red.svg" |  | ||||||
| LICENSE_BADGES["CC-BY-NC-4.0"]="https://img.shields.io/badge/License-CC_BY--NC_4.0-lightgrey.svg" |  | ||||||
| LICENSE_BADGES["CC-BY-NC-SA-4.0"]="https://img.shields.io/badge/License-CC_BY--NC--SA_4.0-lightgrey.svg" |  | ||||||
| LICENSE_BADGES["CC-BY-ND-4.0"]="https://img.shields.io/badge/License-CC_BY--ND_4.0-lightgrey.svg" |  | ||||||
| LICENSE_BADGES["CC-BY-NC-ND-4.0"]="https://img.shields.io/badge/License-CC_BY--NC--ND_4.0-lightgrey.svg" |  | ||||||
| LICENSE_BADGES["Copyright"]="https://img.shields.io/badge/License-Copyright-darkred.svg" |  | ||||||
| LICENSE_BADGES["Proprietary"]="https://img.shields.io/badge/License-Proprietary-darkblue.svg" |  | ||||||
| 
 |  | ||||||
| declare -A LICENSE_TEXTS |  | ||||||
| LICENSE_TEXTS["AGPL-3.0"]="Este proyecto está licenciado bajo la Licencia Pública General Affero de GNU (AGPL-3.0)." |  | ||||||
| LICENSE_TEXTS["GPL-3.0"]="Este proyecto está licenciado bajo la Licencia Pública General de GNU (GPL-3.0)." |  | ||||||
| LICENSE_TEXTS["LGPL-3.0"]="Este proyecto está licenciado bajo la Licencia Pública General Menor de GNU (LGPL-3.0)." |  | ||||||
| LICENSE_TEXTS["MIT"]="Este proyecto está licenciado bajo la Licencia MIT." |  | ||||||
| LICENSE_TEXTS["Apache-2.0"]="Este proyecto está licenciado bajo la Licencia Apache 2.0." |  | ||||||
| LICENSE_TEXTS["BSD-3-Clause"]="Este proyecto está licenciado bajo la Licencia BSD de 3 cláusulas." |  | ||||||
| LICENSE_TEXTS["BSD-2-Clause"]="Este proyecto está licenciado bajo la Licencia BSD de 2 cláusulas." |  | ||||||
| LICENSE_TEXTS["CC-BY-4.0"]="Este proyecto está licenciado bajo Creative Commons Attribution 4.0 International." |  | ||||||
| LICENSE_TEXTS["CC-BY-SA-4.0"]="Este proyecto está licenciado bajo Creative Commons Attribution-ShareAlike 4.0 International." |  | ||||||
| LICENSE_TEXTS["CC0-1.0"]="Este proyecto está dedicado al dominio público bajo Creative Commons Zero v1.0 Universal." |  | ||||||
| LICENSE_TEXTS["EPL-2.0"]="Este proyecto está licenciado bajo la Licencia Pública Eclipse 2.0." |  | ||||||
| LICENSE_TEXTS["MPL-2.0"]="Este proyecto está licenciado bajo la Licencia Pública de Mozilla 2.0." |  | ||||||
| LICENSE_TEXTS["Unlicense"]="Este proyecto está en el dominio público bajo The Unlicense." |  | ||||||
| LICENSE_TEXTS["OPL-1.0"]="Este proyecto está licenciado bajo la Licencia Pública de Odoo (OPL-1.0)." |  | ||||||
| LICENSE_TEXTS["OEEL-1.0"]="Este proyecto está licenciado bajo la Licencia de Empresa de Odoo (OEEL-1.0)." |  | ||||||
| LICENSE_TEXTS["CC-BY-NC-4.0"]="Este proyecto está licenciado bajo Creative Commons Attribution-NonCommercial 4.0 International." |  | ||||||
| LICENSE_TEXTS["CC-BY-NC-SA-4.0"]="Este proyecto está licenciado bajo Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International." |  | ||||||
| LICENSE_TEXTS["CC-BY-ND-4.0"]="Este proyecto está licenciado bajo Creative Commons Attribution-NoDerivatives 4.0 International." |  | ||||||
| LICENSE_TEXTS["CC-BY-NC-ND-4.0"]="Este proyecto está licenciado bajo Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International." |  | ||||||
| LICENSE_TEXTS["Copyright"]="Este proyecto está protegido por derechos de autor (Copyright). Todos los derechos reservados." |  | ||||||
| LICENSE_TEXTS["Proprietary"]="Este proyecto está bajo licencia propietaria. Todos los derechos reservados." |  | ||||||
| 
 |  | ||||||
| # Verifica que dialog esté instalado |  | ||||||
| if ! command -v dialog &> /dev/null; then |  | ||||||
|     echo "${head_001}" |  | ||||||
|     exit 1 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| # Función para obtener la carpeta de proyectos desde projects.dat |  | ||||||
| function get_projects_folder() { |  | ||||||
|     if [ -f "$CONFIG_DIR/projects.dat" ]; then |  | ||||||
|         PROJECTS_DIR_NAME=$(head -n 1 "$CONFIG_DIR/projects.dat") |  | ||||||
|     else |  | ||||||
|         PROJECTS_DIR_NAME="proyectos" |  | ||||||
|         echo "$PROJECTS_DIR_NAME" > "$CONFIG_DIR/projects.dat" |  | ||||||
|     fi |  | ||||||
|      |  | ||||||
|     # La carpeta de proyectos siempre está dentro de devs (BASE_DIR) |  | ||||||
|     PROJECT_FOLDER="$BASE_DIR/$PROJECTS_DIR_NAME" |  | ||||||
|      |  | ||||||
|     # Verificar si la carpeta base de proyectos existe, si no, crearla |  | ||||||
|     if [ ! -d "$PROJECT_FOLDER" ]; then |  | ||||||
|         mkdir -p "$PROJECT_FOLDER" |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| # Función para solicitar el nombre del proyecto |  | ||||||
| function request_project_name() { |  | ||||||
|     dialog_input_box "${proj_002}" "${proj_003}" "" |  | ||||||
|      |  | ||||||
|     if [ $codex -ne 0 ]; then |  | ||||||
|         echo "${head_canceled}" |  | ||||||
|         exit 1 |  | ||||||
|     fi |  | ||||||
|      |  | ||||||
|     PROJECT_NAME="$value" |  | ||||||
|      |  | ||||||
|     # Validar que el nombre no esté vacío |  | ||||||
|     if [ -z "$PROJECT_NAME" ]; then |  | ||||||
|         dialog_error_box "$head_error" "${proj_004}" |  | ||||||
|         request_project_name |  | ||||||
|         return |  | ||||||
|     fi |  | ||||||
|      |  | ||||||
|     # Validar que el nombre sea válido para una carpeta |  | ||||||
|     if [[ "$PROJECT_NAME" =~ [^a-zA-Z0-9_-] ]]; then |  | ||||||
|         dialog_error_box "$head_error" "${proj_005}" |  | ||||||
|         request_project_name |  | ||||||
|         return |  | ||||||
|     fi |  | ||||||
|      |  | ||||||
|     PROJECT_PATH="$PROJECT_FOLDER/$PROJECT_NAME" |  | ||||||
|      |  | ||||||
|     # Verificar si el proyecto ya existe |  | ||||||
|     if [ -d "$PROJECT_PATH" ]; then |  | ||||||
|         # Crear mensaje personalizado con el nombre del proyecto |  | ||||||
|         proyecto_existe_msg="El proyecto '$PROJECT_NAME' ya existe. ¿Desea seleccionar otro nombre?" |  | ||||||
|         dialog_yesno "$proyecto_existe_msg" |  | ||||||
|          |  | ||||||
|         if [ $? -eq 0 ]; then |  | ||||||
|             request_project_name |  | ||||||
|         else |  | ||||||
|             echo "${proj_007}" |  | ||||||
|             exit 1 |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| # Función para solicitar el tipo de proyecto |  | ||||||
| function request_project_type() { |  | ||||||
|     # Construir las opciones para el diálogo |  | ||||||
|     OPTIONS="" |  | ||||||
|     for i in "${!VALID_TYPES[@]}"; do |  | ||||||
|         if [ "${VALID_TYPES[$i]}" == "otros" ]; then |  | ||||||
|             # Seleccionar "otros" como opción por defecto |  | ||||||
|             OPTIONS="$OPTIONS ${VALID_TYPES[$i]} ${VALID_TYPES[$i]} on" |  | ||||||
|         else |  | ||||||
|             OPTIONS="$OPTIONS ${VALID_TYPES[$i]} ${VALID_TYPES[$i]} off" |  | ||||||
|         fi |  | ||||||
|     done |  | ||||||
|      |  | ||||||
|     dialog_input_radio "${proj_008}" "${proj_009}" "$OPTIONS" 22 22 70 |  | ||||||
|      |  | ||||||
|     if [ $codex -ne 0 ]; then |  | ||||||
|         echo "${head_canceled}" |  | ||||||
|         exit 1 |  | ||||||
|     fi |  | ||||||
|      |  | ||||||
|     PROJECT_TYPE="$value" |  | ||||||
|      |  | ||||||
|     # Validar que el tipo seleccionado sea válido |  | ||||||
|     VALID_TYPE=0 |  | ||||||
|     for t in "${VALID_TYPES[@]}"; do |  | ||||||
|         if [ "$t" == "$PROJECT_TYPE" ]; then |  | ||||||
|             VALID_TYPE=1 |  | ||||||
|             break |  | ||||||
|         fi |  | ||||||
|     done |  | ||||||
|      |  | ||||||
|     if [ $VALID_TYPE -eq 0 ]; then |  | ||||||
|         dialog_error_box "$head_error" "${proj_010}" |  | ||||||
|         request_project_type |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| # Función para solicitar la licencia del proyecto |  | ||||||
| function request_project_license() { |  | ||||||
|     # Construir las opciones para el diálogo |  | ||||||
|     OPTIONS="" |  | ||||||
|      |  | ||||||
|     # Obtenemos todas las claves del array asociativo |  | ||||||
|     license_keys=("${!LICENSE_BADGES[@]}") |  | ||||||
|      |  | ||||||
|     # Ordenamos las claves alfabéticamente |  | ||||||
|     IFS=$'\n' sorted_keys=($(sort <<<"${license_keys[*]}")) |  | ||||||
|     unset IFS |  | ||||||
|      |  | ||||||
|     # Filtramos las licencias específicas de Odoo si el proyecto no es de tipo odoo |  | ||||||
|     filtered_keys=() |  | ||||||
|     for license in "${sorted_keys[@]}"; do |  | ||||||
|         # Si es licencia de Odoo (OPL o OEEL) y el proyecto no es de tipo odoo, la omitimos |  | ||||||
|         if [[ "$license" == "OPL-1.0" || "$license" == "OEEL-1.0" ]]; then |  | ||||||
|             if [[ "$PROJECT_TYPE" == "odoo" ]]; then |  | ||||||
|                 filtered_keys+=("$license") |  | ||||||
|             fi |  | ||||||
|         else |  | ||||||
|             filtered_keys+=("$license") |  | ||||||
|         fi |  | ||||||
|     done |  | ||||||
|      |  | ||||||
|     # Establecemos AGPL-3.0 como seleccionada por defecto (es la licencia predeterminada del proyecto) |  | ||||||
|     # Para proyectos Odoo, usar OPL-1.0 como predeterminada |  | ||||||
|     default_license="AGPL-3.0" |  | ||||||
|     if [[ "$PROJECT_TYPE" == "odoo" ]]; then |  | ||||||
|         default_license="OPL-1.0" |  | ||||||
|     fi |  | ||||||
|      |  | ||||||
|     for license in "${filtered_keys[@]}"; do |  | ||||||
|         if [ "$license" == "$default_license" ]; then |  | ||||||
|             OPTIONS="$OPTIONS $license \"$license\" on" |  | ||||||
|         else |  | ||||||
|             OPTIONS="$OPTIONS $license \"$license\" off" |  | ||||||
|         fi |  | ||||||
|     done |  | ||||||
|      |  | ||||||
|     # Reducimos el tamaño del diálogo para que muestre menos opciones a la vez |  | ||||||
|     dialog_input_radio "${proj_014}" "${proj_015}" "$OPTIONS" 22 22 70 |  | ||||||
|      |  | ||||||
|     if [ $codex -ne 0 ]; then |  | ||||||
|         echo "${head_canceled}" |  | ||||||
|         exit 1 |  | ||||||
|     fi |  | ||||||
|      |  | ||||||
|     PROJECT_LICENSE="$value" |  | ||||||
|     PROJECT_LICENSE_TEXT="${LICENSE_TEXTS[$PROJECT_LICENSE]}" |  | ||||||
|      |  | ||||||
|     # Si por alguna razón no se encuentra la licencia, usamos la predeterminada según el tipo de proyecto |  | ||||||
|     if [ -z "$PROJECT_LICENSE_TEXT" ]; then |  | ||||||
|         if [[ "$PROJECT_TYPE" == "odoo" ]]; then |  | ||||||
|             PROJECT_LICENSE="OPL-1.0" |  | ||||||
|         else |  | ||||||
|             PROJECT_LICENSE="AGPL-3.0" |  | ||||||
|         fi |  | ||||||
|         PROJECT_LICENSE_TEXT="${LICENSE_TEXTS[$PROJECT_LICENSE]}" |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| # Función para solicitar la descripción del proyecto |  | ||||||
| function request_project_description() { |  | ||||||
|     # Aumentar número de filas y columnas para mostrar más líneas en el diálogo |  | ||||||
|     # Parámetros: mensaje, ayuda, valor_defecto, filas, ancho |  | ||||||
|     # La altura predeterminada es CROWS=8, aumentamos a 12 para mostrar las 3 líneas |  | ||||||
|     dialog_input_box "${proj_012}" "${proj_013}" "" 12 80 |  | ||||||
|      |  | ||||||
|     if [ $codex -ne 0 ]; then |  | ||||||
|         echo "${head_canceled}" |  | ||||||
|         exit 1 |  | ||||||
|     fi |  | ||||||
|      |  | ||||||
|     PROJECT_DESCRIPTION="$value" |  | ||||||
|      |  | ||||||
|     # Usar una descripción por defecto si está vacía |  | ||||||
|     if [ -z "$PROJECT_DESCRIPTION" ]; then |  | ||||||
|         PROJECT_DESCRIPTION="Proyecto de tipo $PROJECT_TYPE creado con MRDevs Tools." |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| # Función para crear la estructura del proyecto |  | ||||||
| function create_project_structure() { |  | ||||||
|     # Crear la carpeta del proyecto |  | ||||||
|     mkdir -p "$PROJECT_PATH" |  | ||||||
|      |  | ||||||
|     # Crear estructura básica común a todos los proyectos |  | ||||||
|     mkdir -p "$PROJECT_PATH/docs" |  | ||||||
|     mkdir -p "$PROJECT_PATH/src" |  | ||||||
|      |  | ||||||
|     # Inicializar repositorio git |  | ||||||
|     cd "$PROJECT_PATH" |  | ||||||
|     git init |  | ||||||
|      |  | ||||||
|     # Crear archivo setup.md básico |  | ||||||
|     cat > "$PROJECT_PATH/docs/setup.md" << EOF |  | ||||||
| # Configuración del Entorno de Desarrollo |  | ||||||
| 
 |  | ||||||
| Este documento describe los pasos necesarios para configurar el entorno de desarrollo para el proyecto $PROJECT_NAME. |  | ||||||
| 
 |  | ||||||
| ## Requisitos Previos |  | ||||||
| 
 |  | ||||||
| - [Requisito 1] |  | ||||||
| - [Requisito 2] |  | ||||||
| - [Requisito 3] |  | ||||||
| 
 |  | ||||||
| ## Instalación |  | ||||||
| 
 |  | ||||||
| 1. Clone el repositorio: |  | ||||||
|    \`\`\`bash |  | ||||||
|    git clone [URL-del-repositorio] |  | ||||||
|    cd $PROJECT_NAME |  | ||||||
|    \`\`\` |  | ||||||
| 
 |  | ||||||
| 2. Configure el entorno según el tipo de proyecto ($PROJECT_TYPE). |  | ||||||
| 
 |  | ||||||
| 3. [Pasos adicionales específicos del proyecto] |  | ||||||
| 
 |  | ||||||
| ## Configuración |  | ||||||
| 
 |  | ||||||
| [Instrucciones de configuración específicas] |  | ||||||
| 
 |  | ||||||
| ## Pruebas |  | ||||||
| 
 |  | ||||||
| [Instrucciones para ejecutar pruebas] |  | ||||||
| 
 |  | ||||||
| ## Solución de Problemas |  | ||||||
| 
 |  | ||||||
| [Problemas comunes y soluciones] |  | ||||||
| 
 |  | ||||||
| --- |  | ||||||
| 
 |  | ||||||
| > Nota: Este es un documento de configuración inicial que debe ser completado con la información específica del proyecto. |  | ||||||
| EOF |  | ||||||
|      |  | ||||||
|     # Obtener fecha actual |  | ||||||
|     CURRENT_DATE=$(date +%Y-%m-%d) |  | ||||||
|      |  | ||||||
|     # Crear archivo README.md mejorado |  | ||||||
|     cat > "$PROJECT_PATH/README.md" << EOF |  | ||||||
| # $PROJECT_NAME |  | ||||||
| 
 |  | ||||||
|  |  | ||||||
|  |  | ||||||
| 
 |  | ||||||
| ## 📋 Descripción |  | ||||||
| 
 |  | ||||||
| $PROJECT_DESCRIPTION |  | ||||||
| 
 |  | ||||||
| ## 🔧 Tecnologías |  | ||||||
| 
 |  | ||||||
| \`\`\` |  | ||||||
| Tipo de Proyecto: $PROJECT_TYPE |  | ||||||
| Fecha de Creación: $CURRENT_DATE |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 📁 Estructura |  | ||||||
| 
 |  | ||||||
| \`\`\` |  | ||||||
| $PROJECT_NAME/ |  | ||||||
| ├── docs/               # Documentación del proyecto |  | ||||||
| ├── src/                # Código fuente |  | ||||||
| EOF |  | ||||||
| 
 |  | ||||||
|     # Añadir estructura específica según el tipo de proyecto |  | ||||||
|     case "$PROJECT_TYPE" in |  | ||||||
|         "ansible") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── inventories/        # Inventarios de Ansible |  | ||||||
| ├── roles/              # Roles de Ansible |  | ||||||
| └── playbooks/          # Playbooks de Ansible |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Actualice el inventario en \`inventories/\` |  | ||||||
| 2. Configure los roles necesarios en \`roles/\` |  | ||||||
| 3. Ejecute los playbooks mediante \`ansible-playbook playbooks/nombre-playbook.yml\` |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "odoo") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── addons/             # Módulos personalizados de Odoo |  | ||||||
| ├── data/               # Archivos de datos |  | ||||||
| ├── scripts/            # Scripts de utilidad |  | ||||||
| └── build/              # Configuración de construcción |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Configure el entorno en la carpeta \`build/\` |  | ||||||
| 2. Ejecute \`scripts/start.sh\` para iniciar el entorno Odoo |  | ||||||
| 3. Acceda a la aplicación en http://localhost:8069 |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "sp32home") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── hardware/           # Diseños y esquemas de hardware |  | ||||||
| ├── firmware/           # Código firmware ESP32 |  | ||||||
| ├── libraries/          # Bibliotecas personalizadas |  | ||||||
| └── build/              # Archivos de construcción |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Revise los esquemas en \`hardware/\` |  | ||||||
| 2. Compile el firmware usando PlatformIO o Arduino IDE |  | ||||||
| 3. Cargue el firmware en su dispositivo ESP32 |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "nodejs") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── src/ |  | ||||||
| │   ├── controllers/    # Controladores de la aplicación |  | ||||||
| │   ├── models/         # Modelos de datos |  | ||||||
| │   └── routes/         # Definición de rutas |  | ||||||
| ├── public/             # Archivos estáticos |  | ||||||
| └── tests/              # Pruebas unitarias y de integración |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Instale las dependencias: \`npm install\` |  | ||||||
| 2. Configure las variables de entorno en \`.env\` |  | ||||||
| 3. Ejecute la aplicación: \`npm start\` |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "python") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── src/ |  | ||||||
| │   └── $PROJECT_NAME/  # Código fuente del paquete |  | ||||||
| └── tests/              # Pruebas unitarias |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Cree un entorno virtual: \`python -m venv .venv\` |  | ||||||
| 2. Active el entorno virtual: \`source .venv/bin/activate\` |  | ||||||
| 3. Instale las dependencias: \`pip install -r requirements.txt\` |  | ||||||
| 4. Instale el paquete en modo desarrollo: \`pip install -e .\` |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "php") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── src/                # Código fuente PHP |  | ||||||
| ├── public/             # Archivos públicos y punto de entrada |  | ||||||
| ├── assets/             # Recursos estáticos (CSS, JS, imágenes) |  | ||||||
| ├── templates/          # Plantillas |  | ||||||
| └── vendor/             # Dependencias (gestionadas por Composer) |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Instale las dependencias: \`composer install\` |  | ||||||
| 2. Configure el servidor web para apuntar a la carpeta \`public/\` |  | ||||||
| 3. Visite la aplicación en su navegador |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "c") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── include/            # Archivos de cabecera (.h) |  | ||||||
| ├── src/                # Archivos fuente (.c) |  | ||||||
| ├── lib/                # Bibliotecas  |  | ||||||
| ├── tests/              # Pruebas unitarias |  | ||||||
| └── build/              # Archivos de compilación |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Configure el proyecto: \`mkdir build && cd build && cmake ..\` |  | ||||||
| 2. Compile el proyecto: \`make\` |  | ||||||
| 3. Ejecute las pruebas: \`make test\` |  | ||||||
| 4. Ejecute la aplicación: \`./bin/$PROJECT_NAME\` |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "cpp") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── include/            # Archivos de cabecera (.hpp) |  | ||||||
| ├── src/                # Archivos fuente (.cpp) |  | ||||||
| ├── lib/                # Bibliotecas  |  | ||||||
| ├── tests/              # Pruebas unitarias |  | ||||||
| └── build/              # Archivos de compilación |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Configure el proyecto: \`mkdir build && cd build && cmake ..\` |  | ||||||
| 2. Compile el proyecto: \`make\` |  | ||||||
| 3. Ejecute las pruebas: \`make test\` |  | ||||||
| 4. Ejecute la aplicación: \`./bin/$PROJECT_NAME\` |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "csharp") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── src/                # Código fuente C# |  | ||||||
| ├── Tests/              # Pruebas unitarias |  | ||||||
| ├── Models/             # Modelos de datos |  | ||||||
| ├── Controllers/        # Controladores (si es una aplicación web) |  | ||||||
| └── Properties/         # Configuraciones y propiedades |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Restaure las dependencias: \`dotnet restore\` |  | ||||||
| 2. Compile el proyecto: \`dotnet build\` |  | ||||||
| 3. Ejecute las pruebas: \`dotnet test\` |  | ||||||
| 4. Ejecute la aplicación: \`dotnet run\` |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "rust") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── src/                # Código fuente Rust |  | ||||||
| ├── tests/              # Pruebas |  | ||||||
| ├── examples/           # Ejemplos de uso |  | ||||||
| └── target/             # Directorio de compilación (generado) |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Compile el proyecto: \`cargo build\` |  | ||||||
| 2. Ejecute las pruebas: \`cargo test\` |  | ||||||
| 3. Ejecute la aplicación: \`cargo run\` |  | ||||||
| 4. Compile para producción: \`cargo build --release\` |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "cobol") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| ├── src/ |  | ||||||
| │   ├── main/           # Programas principales |  | ||||||
| │   └── copy/           # Libros de copybook |  | ||||||
| └── build/              # Archivos de compilación |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| 1. Configure el entorno COBOL según su implementación (GnuCOBOL, MicroFocus, etc.) |  | ||||||
| 2. Compile los programas usando la configuración en \`build/\` |  | ||||||
| 3. Ejecute los programas compilados |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "otros") |  | ||||||
|             cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| \`\`\` |  | ||||||
| 
 |  | ||||||
| ## 🚀 Uso |  | ||||||
| 
 |  | ||||||
| Consulte la documentación específica en la carpeta \`docs/\` para instrucciones de configuración y uso. |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|     esac |  | ||||||
| 
 |  | ||||||
|     # Añadir secciones comunes al final |  | ||||||
|     cat >> "$PROJECT_PATH/README.md" << EOF |  | ||||||
| 
 |  | ||||||
| ## 🔍 Prerrequisitos |  | ||||||
| 
 |  | ||||||
| > Por definir según las necesidades específicas del proyecto |  | ||||||
| 
 |  | ||||||
| ## ⚙️ Configuración |  | ||||||
| 
 |  | ||||||
| Para configurar el entorno de desarrollo, siga las instrucciones en [docs/setup.md](docs/setup.md). |  | ||||||
| 
 |  | ||||||
| ## 📄 Licencia |  | ||||||
| 
 |  | ||||||
| $PROJECT_LICENSE_TEXT |  | ||||||
| Ver el archivo [LICENSE](LICENSE) para más detalles. |  | ||||||
| 
 |  | ||||||
| ## 👥 Autores |  | ||||||
| 
 |  | ||||||
| - **$(git config user.name)** - Desarrollador Principal - [$(git config user.email)](mailto:$(git config user.email)) |  | ||||||
| 
 |  | ||||||
| --- |  | ||||||
| 
 |  | ||||||
| Generado con MRDevs Tools © $(date +%Y) |  | ||||||
| EOF |  | ||||||
|      |  | ||||||
|     # Crear estructura específica según el tipo de proyecto |  | ||||||
|     case "$PROJECT_TYPE" in |  | ||||||
|         "ansible") |  | ||||||
|             mkdir -p "$PROJECT_PATH/inventories" |  | ||||||
|             mkdir -p "$PROJECT_PATH/roles" |  | ||||||
|             mkdir -p "$PROJECT_PATH/playbooks" |  | ||||||
|             touch "$PROJECT_PATH/ansible.cfg" |  | ||||||
|             ;; |  | ||||||
|         "odoo") |  | ||||||
|             mkdir -p "$PROJECT_PATH/addons" |  | ||||||
|             mkdir -p "$PROJECT_PATH/data" |  | ||||||
|             mkdir -p "$PROJECT_PATH/scripts" |  | ||||||
|             mkdir -p "$PROJECT_PATH/build" |  | ||||||
|             touch "$PROJECT_PATH/.typset" |  | ||||||
|             ;; |  | ||||||
|         "sp32home") |  | ||||||
|             mkdir -p "$PROJECT_PATH/hardware" |  | ||||||
|             mkdir -p "$PROJECT_PATH/firmware" |  | ||||||
|             mkdir -p "$PROJECT_PATH/libraries" |  | ||||||
|             mkdir -p "$PROJECT_PATH/build" |  | ||||||
|             ;; |  | ||||||
|         "nodejs") |  | ||||||
|             mkdir -p "$PROJECT_PATH/src/controllers" |  | ||||||
|             mkdir -p "$PROJECT_PATH/src/models" |  | ||||||
|             mkdir -p "$PROJECT_PATH/src/routes" |  | ||||||
|             mkdir -p "$PROJECT_PATH/public" |  | ||||||
|             mkdir -p "$PROJECT_PATH/tests" |  | ||||||
|             touch "$PROJECT_PATH/package.json" |  | ||||||
|             ;; |  | ||||||
|         "python") |  | ||||||
|             mkdir -p "$PROJECT_PATH/src/$PROJECT_NAME" |  | ||||||
|             mkdir -p "$PROJECT_PATH/tests" |  | ||||||
|             touch "$PROJECT_PATH/setup.py" |  | ||||||
|             touch "$PROJECT_PATH/requirements.txt" |  | ||||||
|             # Crear un __init__.py básico |  | ||||||
|             touch "$PROJECT_PATH/src/$PROJECT_NAME/__init__.py" |  | ||||||
|             ;; |  | ||||||
|         "php") |  | ||||||
|             mkdir -p "$PROJECT_PATH/src" |  | ||||||
|             mkdir -p "$PROJECT_PATH/public" |  | ||||||
|             mkdir -p "$PROJECT_PATH/assets/css" |  | ||||||
|             mkdir -p "$PROJECT_PATH/assets/js" |  | ||||||
|             mkdir -p "$PROJECT_PATH/assets/img" |  | ||||||
|             mkdir -p "$PROJECT_PATH/templates" |  | ||||||
|             mkdir -p "$PROJECT_PATH/vendor" |  | ||||||
|             # Crear un archivo index.php básico |  | ||||||
|             echo '<?php\n// Punto de entrada de la aplicación\nrequire_once __DIR__ . "/../vendor/autoload.php";\n' > "$PROJECT_PATH/public/index.php" |  | ||||||
|             # Crear composer.json básico |  | ||||||
|             cat > "$PROJECT_PATH/composer.json" << EOF |  | ||||||
| { |  | ||||||
|     "name": "rosero-one/$PROJECT_NAME", |  | ||||||
|     "description": "Proyecto PHP $PROJECT_NAME", |  | ||||||
|     "type": "project", |  | ||||||
|     "require": { |  | ||||||
|         "php": ">=7.4" |  | ||||||
|     }, |  | ||||||
|     "autoload": { |  | ||||||
|         "psr-4": { |  | ||||||
|             "App\\\\": "src/" |  | ||||||
|         } |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "c") |  | ||||||
|             mkdir -p "$PROJECT_PATH/include" |  | ||||||
|             mkdir -p "$PROJECT_PATH/src" |  | ||||||
|             mkdir -p "$PROJECT_PATH/lib" |  | ||||||
|             mkdir -p "$PROJECT_PATH/tests" |  | ||||||
|             mkdir -p "$PROJECT_PATH/build" |  | ||||||
|             # Crear un archivo CMakeLists.txt básico |  | ||||||
|             cat > "$PROJECT_PATH/CMakeLists.txt" << EOF |  | ||||||
| cmake_minimum_required(VERSION 3.10) |  | ||||||
| project($PROJECT_NAME C) |  | ||||||
| 
 |  | ||||||
| set(CMAKE_C_STANDARD 11) |  | ||||||
| set(CMAKE_C_STANDARD_REQUIRED ON) |  | ||||||
| 
 |  | ||||||
| include_directories(include) |  | ||||||
| 
 |  | ||||||
| file(GLOB SOURCES "src/*.c") |  | ||||||
| add_executable(\${PROJECT_NAME} \${SOURCES}) |  | ||||||
| EOF |  | ||||||
|             # Crear un archivo main.c básico |  | ||||||
|             cat > "$PROJECT_PATH/src/main.c" << EOF |  | ||||||
| #include <stdio.h> |  | ||||||
| 
 |  | ||||||
| int main(int argc, char *argv[]) { |  | ||||||
|     printf("Hola desde $PROJECT_NAME!\n"); |  | ||||||
|     return 0; |  | ||||||
| } |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "cpp") |  | ||||||
|             mkdir -p "$PROJECT_PATH/include" |  | ||||||
|             mkdir -p "$PROJECT_PATH/src" |  | ||||||
|             mkdir -p "$PROJECT_PATH/lib" |  | ||||||
|             mkdir -p "$PROJECT_PATH/tests" |  | ||||||
|             mkdir -p "$PROJECT_PATH/build" |  | ||||||
|             # Crear un archivo CMakeLists.txt básico |  | ||||||
|             cat > "$PROJECT_PATH/CMakeLists.txt" << EOF |  | ||||||
| cmake_minimum_required(VERSION 3.10) |  | ||||||
| project($PROJECT_NAME CXX) |  | ||||||
| 
 |  | ||||||
| set(CMAKE_CXX_STANDARD 17) |  | ||||||
| set(CMAKE_CXX_STANDARD_REQUIRED ON) |  | ||||||
| 
 |  | ||||||
| include_directories(include) |  | ||||||
| 
 |  | ||||||
| file(GLOB SOURCES "src/*.cpp") |  | ||||||
| add_executable(\${PROJECT_NAME} \${SOURCES}) |  | ||||||
| EOF |  | ||||||
|             # Crear un archivo main.cpp básico |  | ||||||
|             cat > "$PROJECT_PATH/src/main.cpp" << EOF |  | ||||||
| #include <iostream> |  | ||||||
| 
 |  | ||||||
| int main(int argc, char *argv[]) { |  | ||||||
|     std::cout << "Hola desde $PROJECT_NAME!" << std::endl; |  | ||||||
|     return 0; |  | ||||||
| } |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "csharp") |  | ||||||
|             mkdir -p "$PROJECT_PATH/src" |  | ||||||
|             mkdir -p "$PROJECT_PATH/Tests" |  | ||||||
|             mkdir -p "$PROJECT_PATH/Models" |  | ||||||
|             mkdir -p "$PROJECT_PATH/Controllers" |  | ||||||
|             mkdir -p "$PROJECT_PATH/Properties" |  | ||||||
|             # Crear un archivo de proyecto .csproj básico |  | ||||||
|             cat > "$PROJECT_PATH/$PROJECT_NAME.csproj" << EOF |  | ||||||
| <Project Sdk="Microsoft.NET.Sdk"> |  | ||||||
| 
 |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <OutputType>Exe</OutputType> |  | ||||||
|     <TargetFramework>net6.0</TargetFramework> |  | ||||||
|     <ImplicitUsings>enable</ImplicitUsings> |  | ||||||
|     <Nullable>enable</Nullable> |  | ||||||
|   </PropertyGroup> |  | ||||||
| 
 |  | ||||||
| </Project> |  | ||||||
| EOF |  | ||||||
|             # Crear un archivo Program.cs básico |  | ||||||
|             cat > "$PROJECT_PATH/src/Program.cs" << EOF |  | ||||||
| namespace $PROJECT_NAME; |  | ||||||
| 
 |  | ||||||
| public class Program |  | ||||||
| { |  | ||||||
|     public static void Main(string[] args) |  | ||||||
|     { |  | ||||||
|         Console.WriteLine("Hola desde $PROJECT_NAME!"); |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "rust") |  | ||||||
|             mkdir -p "$PROJECT_PATH/src" |  | ||||||
|             mkdir -p "$PROJECT_PATH/tests" |  | ||||||
|             mkdir -p "$PROJECT_PATH/examples" |  | ||||||
|             # Crear un archivo Cargo.toml básico |  | ||||||
|             cat > "$PROJECT_PATH/Cargo.toml" << EOF |  | ||||||
| [package] |  | ||||||
| name = "$PROJECT_NAME" |  | ||||||
| version = "0.1.0" |  | ||||||
| edition = "2021" |  | ||||||
| 
 |  | ||||||
| [dependencies] |  | ||||||
| EOF |  | ||||||
|             # Crear un archivo main.rs básico |  | ||||||
|             cat > "$PROJECT_PATH/src/main.rs" << EOF |  | ||||||
| fn main() { |  | ||||||
|     println!("Hola desde $PROJECT_NAME!"); |  | ||||||
| } |  | ||||||
| EOF |  | ||||||
|             # Crear un archivo lib.rs básico |  | ||||||
|             cat > "$PROJECT_PATH/src/lib.rs" << EOF |  | ||||||
| // Biblioteca principal para $PROJECT_NAME |  | ||||||
| 
 |  | ||||||
| #[cfg(test)] |  | ||||||
| mod tests { |  | ||||||
|     #[test] |  | ||||||
|     fn it_works() { |  | ||||||
|         assert_eq!(2 + 2, 4); |  | ||||||
|     } |  | ||||||
| } |  | ||||||
| EOF |  | ||||||
|             ;; |  | ||||||
|         "cobol") |  | ||||||
|             mkdir -p "$PROJECT_PATH/src/main" |  | ||||||
|             mkdir -p "$PROJECT_PATH/src/copy" |  | ||||||
|             mkdir -p "$PROJECT_PATH/build" |  | ||||||
|             ;; |  | ||||||
|         "otros") |  | ||||||
|             # Estructura mínima, ya creada anteriormente |  | ||||||
|             ;; |  | ||||||
|     esac |  | ||||||
|      |  | ||||||
|     # Crear archivo de configuración para indicar el tipo de proyecto |  | ||||||
|     echo "$PROJECT_TYPE" > "$PROJECT_PATH/.protype" |  | ||||||
|      |  | ||||||
|     # Guardar información de la licencia en un archivo |  | ||||||
|     echo "$PROJECT_LICENSE" > "$PROJECT_PATH/.license" |  | ||||||
|      |  | ||||||
|     # Hacer commit inicial del proyecto |  | ||||||
|     cd "$PROJECT_PATH" |  | ||||||
|     git add . |  | ||||||
|     git commit -m "[INIT] Proyecto $PROJECT_NAME" |  | ||||||
|      |  | ||||||
|     # Mostrar mensaje de éxito |  | ||||||
|     dialog_error_box "$head_info" "${proj_011}\n$PROJECT_PATH" |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| # Función principal |  | ||||||
| function main() { |  | ||||||
|     clear |  | ||||||
|      |  | ||||||
|     # Obtener la carpeta de proyectos |  | ||||||
|     get_projects_folder |  | ||||||
|      |  | ||||||
|     # Solicitar nombre del proyecto |  | ||||||
|     request_project_name |  | ||||||
|      |  | ||||||
|     # Solicitar tipo de proyecto |  | ||||||
|     request_project_type |  | ||||||
|      |  | ||||||
|     # Solicitar licencia del proyecto |  | ||||||
|     request_project_license |  | ||||||
|      |  | ||||||
|     # Solicitar descripción del proyecto |  | ||||||
|     request_project_description |  | ||||||
|      |  | ||||||
|     # Crear estructura del proyecto |  | ||||||
|     create_project_structure |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| # Ejecutar función principal |  | ||||||
| main |  | ||||||
|  | @ -335,6 +335,11 @@ function create_project_structure() { | ||||||
|     cd "$PROJECT_PATH" |     cd "$PROJECT_PATH" | ||||||
|     git init |     git init | ||||||
|      |      | ||||||
|  |     # Copiar archivo .gitignore específico para el tipo de proyecto | ||||||
|  |     if [ -f "$CONFIG_DIR/${PROJECT_TYPE}.gitignore" ]; then | ||||||
|  |         cp "$CONFIG_DIR/${PROJECT_TYPE}.gitignore" "$PROJECT_PATH/.gitignore" | ||||||
|  |     fi | ||||||
|  |      | ||||||
|     # Crear archivo setup.md básico |     # Crear archivo setup.md básico | ||||||
|     cat > "$PROJECT_PATH/docs/setup.md" << EOF |     cat > "$PROJECT_PATH/docs/setup.md" << EOF | ||||||
| # Configuración del Entorno de Desarrollo | # Configuración del Entorno de Desarrollo | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue