Giter Site home page Giter Site logo

theporgs / exegol Goto Github PK

View Code? Open in Web Editor NEW
1.6K 34.0 167.0 32.39 MB

Fully featured and community-driven hacking environment

Home Page: https://exegol.readthedocs.io/

License: GNU General Public License v3.0

Python 98.26% Shell 1.74%
hacking penetration-testing ctf linux pentesting docker python

exegol's People

Contributors

arnco avatar cse-ocd avatar cyrinux avatar dramelac avatar driikolu avatar erk3 avatar fisjkars avatar mathisca avatar mayfly277 avatar megadose avatar naacbin avatar nodauf avatar p0dalirius avatar shutdownrepo avatar snovvcrash avatar spameier avatar thibaudrobin avatar wlayzz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

exegol's Issues

dependencies issue

onii@cat:~$ sudo exegol
Mandatory dependencies are missing: No module named 'rich'
Please install them with pip3 install -r requirements.txt
onii@cat:~$ python3
Python 3.8.10 (default, Jun 22 2022, 20:18:18)
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import rich
>>>

I also have the right version of rich
Requirement already satisfied: rich in ./.local/lib/python3.8/site-packages (11.2.0)

[Question] - All my images have been deleted, what can I do?

Hi there,
After installing the tool I downloaded 2 images (AD, FULL)

each image with several containers

when I saw the disk space I had left thanks to the df -h command, I realized that I needed to clean up a bit
I decided to delete all the images available on the machine (docker rmi $(docker images -a -q))

After that, I wanted to install a new image of exegol, and I was confronted with the following error:

image

image

image

image

Currently, I have downloaded a new image (full), then created a new container and the kali works perfectly, however I still have the following stacktrace
do you have a tip to correct this?

image

Currently, my trick to see my images and their versions is to use the exegol update

image

Thanks in advance,

Image up to date but not really

Having an issue with exegol update, see screenshot below.
image

Below are debug command outputs.

$ exegol info -vvv                
[*] Exegol is currently in version v4.0.3b1
[D] Pip installation: Off ๐Ÿช“                                                                                                                                                                                                                                                              
[D] Git source installation: On โœ”                                                                                                                                                                                                                                                         
[D] Host OS: Linux                                                                                                                                                                                                                                                                        
[D] Arch: amd64                                                                                                                                                                                                                                                                           
[D] Docker desktop: Off ๐Ÿช“                                                                                                                                                                                                                                                                
[D] Shell type: Linux                                                                                                                                                                                                                                                                     
[D] Loading git at /opt/projects/Exegol                                                                                                                                                                                                                                                   
[D] Repo path: /opt/projects/Exegol/.git                                                                                                                                                                                                                                                  
[D] Git repository successfully loaded                                                                                                                                                                                                                                                    
[D] Fetch flags : 4                                                                                                                                                                                                                                                                       
[D] Fetch note :                                                                                                                                                                                                                                                                          
[D] Fetch old commit : None                                                                                                                                                                                                                                                               
[D] Fetch remote path : dev                                                                                                                                                                                                                                                               
[D] HEAD UP TO DATE flag detected                                                                                                                                                                                                                                                         

[V] Listing user configurations                                                                                                                                                                                                                                                           

๐Ÿง  User configurations                                     
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Private workspace: /home/cbromberg/.exegol/workspaces   โ”‚
โ”‚ Exegol resources: /opt/projects/Exegol/exegol-resources โ”‚
โ”‚ My resources: /home/cbromberg/.exegol/my-resources      โ”‚
โ”‚ Auto-check updates: On โœ”                                โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[V] Listing git repositories                                                                                                                                                                                                                                                              
[D] Loading git at /opt/projects/Exegol                                                                                                                                                                                                                                                   
[D] Repo path: /opt/projects/Exegol/.git                                                                                                                                                                                                                                                  
[D] Git repository successfully loaded                                                                                                                                                                                                                                                    
[V] Git wrapper init submodules                                                                                                                                                                                                                                                           
[D] Git submodule repository detected                                                                                                                                                                                                                                                     
[D] Loading git at /opt/projects/Exegol/exegol-docker-build                                                                                                                                                                                                                               
[D] Repo path: /opt/projects/Exegol/.git/modules/sources                                                                                                                                                                                                                                  
[D] Git repository successfully loaded                                                                                                                                                                                                                                                    
[D] Git submodule repository detected                                                                                                                                                                                                                                                     
[D] Loading git at /opt/projects/Exegol/exegol-resources                                                                                                                                                                                                                                  
[D] Repo path: /opt/projects/Exegol/.git/modules/exegol-resources                                                                                                                                                                                                                         
[D] Git repository successfully loaded                                                                                                                                                                                                                                                    
[D] Fetch flags : 4                                                                                                                                                                                                                                                                       
[D] Fetch note :                                                                                                                                                                                                                                                                          
[D] Fetch old commit : None                                                                                                                                                                                                                                                               
[D] Fetch remote path : dev                                                                                                                                                                                                                                                               
[D] HEAD UP TO DATE flag detected                                                                                                                                                                                                                                                         
[D] Fetch flags : 4                                                                                                                                                                                                                                                                       
[D] Fetch note :                                                                                                                                                                                                                                                                          
[D] Fetch old commit : None                                                                                                                                                                                                                                                               
[D] Fetch remote path : dev                                                                                                                                                                                                                                                               
[D] HEAD UP TO DATE flag detected                                                                                                                                                                                                                                                         
[D] Fetch flags : 4                                                                                                                                                                                                                                                                       
[D] Fetch note :                                                                                                                                                                                                                                                                          
[D] Fetch old commit : None                                                                                                                                                                                                                                                               
[D] Fetch remote path : main                                                                                                                                                                                                                                                              
[D] HEAD UP TO DATE flag detected                                                                                                                                                                                                                                                         

๐Ÿ™ Project modules                         
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Name      โ”‚ Status     โ”‚ Current branch โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ Wrapper   โ”‚ Up to date โ”‚ dev            โ”‚
โ”‚ Images    โ”‚ Up to date โ”‚ dev            โ”‚
โ”‚ Resources โ”‚ Up to date โ”‚ main           โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[D] Fetching remote image tags, digests and sizes                                                                                                                                                                                                                                         
[D] Fetching information from: https://hub.docker.com/v2/repositories/nwodtuhs/exegol/tags?page_size=20                                                                                                                                                                                   
[D] โ””โ”€โ”€ nightly โ†’ (remote) sha256:415150be34aa33bc3967a1f4b93d1173f61c51b98e1880a046b11d4193cb377a                                                                                                                                                                                        
[D] โ””โ”€โ”€ full-2.0.2      โ†’ (remote) sha256:7d4a12cc5a1e9844f133c8888ed35c3aaceceed1911fb7aace946a8ffe77a232                                                                                                                                                                                
[D] โ””โ”€โ”€ full    โ†’ (remote) sha256:7d4a12cc5a1e9844f133c8888ed35c3aaceceed1911fb7aace946a8ffe77a232                                                                                                                                                                                        
[D] โ””โ”€โ”€ light-2.0.2     โ†’ (remote) sha256:630b085d3d8f4e077844ea9b530c4a5856d2db9f7abdcf5ece2ae87fadc80d4d                                                                                                                                                                                
[D] โ””โ”€โ”€ light   โ†’ (remote) sha256:630b085d3d8f4e077844ea9b530c4a5856d2db9f7abdcf5ece2ae87fadc80d4d                                                                                                                                                                                        
[D] โ””โ”€โ”€ ad-2.0.2        โ†’ (remote) sha256:a141d1c4e4f50d481a0ab8f2a4d60161c4a099f388485e6f1f8042ed66065611                                                                                                                                                                                
[D] โ””โ”€โ”€ ad      โ†’ (remote) sha256:a141d1c4e4f50d481a0ab8f2a4d60161c4a099f388485e6f1f8042ed66065611                                                                                                                                                                                        
[D] โ””โ”€โ”€ web-2.0.2       โ†’ (remote) sha256:f1a210d22838306b14fbd0afcfda51103464239cfb75b752f19bf1b3a8e098be                                                                                                                                                                                
[D] โ””โ”€โ”€ web     โ†’ (remote) sha256:f1a210d22838306b14fbd0afcfda51103464239cfb75b752f19bf1b3a8e098be                                                                                                                                                                                        
[D] โ””โ”€โ”€ osint-2.0.2     โ†’ (remote) sha256:d63405881d637711ac2f0a09a321e84ad9caae743cb3b0acc7e9f6ff2558a668                                                                                                                                                                                
[D] โ””โ”€โ”€ osint   โ†’ (remote) sha256:d63405881d637711ac2f0a09a321e84ad9caae743cb3b0acc7e9f6ff2558a668                                                                                                                                                                                        
[D] โ””โ”€โ”€ full-2.0.1      โ†’ (remote) sha256:8ff1870bd0dc5c7d79772454b67651d79a23f2b6ad15ab490f00822f6ee324f1                                                                                                                                                                                
[D] โ””โ”€โ”€ ad-2.0.1        โ†’ (remote) sha256:55e5271e6d8a73d745c3200ce4cb0298b4063e20dfd9f762fc506ca359805d51                                                                                                                                                                                
[D] โ””โ”€โ”€ web-2.0.1       โ†’ (remote) sha256:ca9c34fb433797ee51199e75b0cebc051fde9b1fe837a03ca5b286478cc05250                                                                                                                                                                                
[D] โ””โ”€โ”€ light-2.0.1     โ†’ (remote) sha256:9e7f1228f18ec1cc687d2e45fe6ca50013dc30a2f2b0ff4a9cd2bfcbb468dc5d                                                                                                                                                                                
[D] โ””โ”€โ”€ osint-2.0.1     โ†’ (remote) sha256:7ea562eb869ccc1b729e6468af151b0e4f3d1aeb739baf5d9f20207c5f8b104a                                                                                                                                                                                
[D] โ””โ”€โ”€ web-2.0.0       โ†’ (remote) sha256:f74fcc92b8e3f31f45e4141fb9eb7f9e85c29e61785eda85b2aa989c56d94571                                                                                                                                                                                
[D] โ””โ”€โ”€ light-2.0.0     โ†’ (remote) sha256:18fc89446474dfd8ceb2951df41baa571447e4eb6ea7df1b127d8cd6caea222c                                                                                                                                                                                
[D] โ””โ”€โ”€ osint-2.0.0     โ†’ (remote) sha256:e5e1832f98ce7cc69b9317bab5a9374e2a9d3c0489c36db6572c6ca4387d86b1                                                                                                                                                                                
[D] โ””โ”€โ”€ full-2.0.0b5    โ†’ (remote) sha256:252afb0667c3d51670d53fdfb53550d71fc7a4d45c4f326b158ff346f0bb0b14                                                                                                                                                                                
[D] Fetching information from: https://hub.docker.com/v2/repositories/nwodtuhs/exegol/tags?page=2&page_size=20                                                                                                                                                                            
[D] โ””โ”€โ”€ ad-2.0.0b5      โ†’ (remote) sha256:42ac024f403e51dbd5d500afad3750b7666456fa22348740412071ec90481108                                                                                                                                                                                
[D] โ””โ”€โ”€ web-2.0.0b5     โ†’ (remote) sha256:cc4966d12043bc6a8d98647ab185eef1d157b0bc9103d5ec2cebb3b6e91b98c1                                                                                                                                                                                
[D] โ””โ”€โ”€ light-2.0.0b5   โ†’ (remote) sha256:b0409163fc61ac9e987843894c9ac53bf117bedce3f36f019115c668fc0c5123                                                                                                                                                                                
[D] โ””โ”€โ”€ osint-2.0.0b5   โ†’ (remote) sha256:2f693307e10d40785ec0724ccc8b28ef7b7ca4ff6efd21c66da71d0af7d432cd                                                                                                                                                                                
[D] Fetching local image tags, digests (and other attributes)                                                                                                                                                                                                                             
[D] โ””โ”€โ”€ nightly โ†’ (remote) sha256:f32095a44b8702b9030aba26750e89aace61216cec8662c35f3bc921245ad904                                                                                                                                                                                        
[D] == Loading container : exegol-ec2                                                                                                                                                                                                                                                     
[D] Parsing envs : DISPLAY=:1                                                                                                                                                                                                                                                             
[D] Adding env DISPLAY=:1                                                                                                                                                                                                                                                                 
[D] Parsing envs : _JAVA_AWT_WM_NONREPARENTING=1                                                                                                                                                                                                                                          
[D] Adding env _JAVA_AWT_WM_NONREPARENTING=1                                                                                                                                                                                                                                              
[D] Parsing envs : QT_X11_NO_MITSHM=1                                                                                                                                                                                                                                                     
[D] Adding env QT_X11_NO_MITSHM=1                                                                                                                                                                                                                                                         
[D] Parsing envs : PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin                                                                                                                                                                                                      
[D] Adding env PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin                                                                                                                                                                                                          
[D] Capabilities : []                                                                                                                                                                                                                                                                     
[D] Load devices : []                                                                                                                                                                                                                                                                     
[D] Parsing mount : {'Type': 'bind', 'Source': '/etc/localtime', 'Destination': '/etc/localtime', 'Mode': '', 'RW': False, 'Propagation': 'rprivate'}                                                                                                                                     
[D] Parsing mount : {'Type': 'bind', 'Source': '/etc/timezone', 'Destination': '/etc/timezone', 'Mode': '', 'RW': False, 'Propagation': 'rprivate'}                                                                                                                                       
[D] Parsing mount : {'Type': 'bind', 'Source': '/home/cbromberg/.exegol/my-resources', 'Destination': '/my-resources', 'Mode': '', 'RW': True, 'Propagation': 'rprivate'}                                                                                                                 
[D] Parsing mount : {'Type': 'bind', 'Source': '/opt/projects/Exegol/exegol-resources', 'Destination': '/opt/resources', 'Mode': '', 'RW': True, 'Propagation': 'rprivate'}                                                                                                               
[D] Parsing mount : {'Type': 'bind', 'Source': '/tmp/.X11-unix', 'Destination': '/tmp/.X11-unix', 'Mode': '', 'RW': True, 'Propagation': 'rprivate'}                                                                                                                                      
[D] Parsing mount : {'Type': 'bind', 'Source': '/home/cbromberg/Downloads', 'Destination': '/workspace', 'Mode': '', 'RW': True, 'Propagation': 'rprivate'}                                                                                                                               
[D] Loading workspace volume source : /home/cbromberg/Downloads                                                                                                                                                                                                                           
[D] Custom workspace detected                                                                                                                                                                                                                                                             
[D] โ””โ”€โ”€ nightly โ†’ (remote) sha256:f32095a44b8702b9030aba26750e89aace61216cec8662c35f3bc921245ad904                                                                                                                                                                                        
[V] Listing local and remote Exegol images                                                                                                                                                                                                                                                

๐Ÿ›ธ Available images                                                                                    
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Id            โ”‚ Image tag โ”‚ Download size โ”‚ Size on disk โ”‚ Build date (UTC) โ”‚ Status                โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ ffb373e4eef2  โ”‚ nightly   โ”‚ N/A           โ”‚ 26.8GB       โ”‚ 29/05/2022 10:42 โ”‚ Outdated (v.1efeb9f9) โ”‚
โ”‚ e9ac88beb24a  โ”‚ nightly   โ”‚ 12.1GB        โ”‚ 26.8GB       โ”‚ 13/06/2022 09:10 โ”‚ Update available      โ”‚
โ”‚ Not installed โ”‚ full      โ”‚ 12.6GB        โ”‚ N/A          โ”‚ N/A              โ”‚ Not installed         โ”‚
โ”‚ Not installed โ”‚ light     โ”‚ 4.3GB         โ”‚ N/A          โ”‚ N/A              โ”‚ Not installed         โ”‚
โ”‚ Not installed โ”‚ ad        โ”‚ 9.3GB         โ”‚ N/A          โ”‚ N/A              โ”‚ Not installed         โ”‚
โ”‚ Not installed โ”‚ web       โ”‚ 7.3GB         โ”‚ N/A          โ”‚ N/A              โ”‚ Not installed         โ”‚
โ”‚ Not installed โ”‚ osint     โ”‚ 3.1GB         โ”‚ N/A          โ”‚ N/A              โ”‚ Not installed         โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[V] Listing local Exegol containers                                                                                                                                                                                                                                                       
[*] Number of Exegol containers: 1

๐Ÿ‘ฝ Available containers                                                                                                                                                                                                                           
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Id         โ”‚ Container tag โ”‚ State   โ”‚ Image tag                     โ”‚ Configurations          โ”‚ Mounts                                                  โ”‚ Devices โ”‚ Ports โ”‚ Envs                                                              โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ 8fbb243111 โ”‚ ec2           โ”‚ Stopped โ”‚ nightly (outdated v.1efeb9f9) โ”‚ Privileged: Off โœ”       โ”‚ /etc/localtime โžก /etc/localtime (RO)                    โ”‚         โ”‚       โ”‚ DISPLAY=:1                                                        โ”‚
โ”‚            โ”‚               โ”‚         โ”‚                               โ”‚ GUI: On โœ”               โ”‚ /etc/timezone โžก /etc/timezone (RO)                      โ”‚         โ”‚       โ”‚ _JAVA_AWT_WM_NONREPARENTING=1                                     โ”‚
โ”‚            โ”‚               โ”‚         โ”‚                               โ”‚ Network mode: host      โ”‚ /home/cbromberg/.exegol/my-resources โžก /my-resources    โ”‚         โ”‚       โ”‚ QT_X11_NO_MITSHM=1                                                โ”‚
โ”‚            โ”‚               โ”‚         โ”‚                               โ”‚ Share timezone: On โœ”    โ”‚ /opt/projects/Exegol/exegol-resources โžก /opt/resources  โ”‚         โ”‚       โ”‚ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin โ”‚
โ”‚            โ”‚               โ”‚         โ”‚                               โ”‚ Exegol resources: On โœ”  โ”‚ /tmp/.X11-unix โžก /tmp/.X11-unix                         โ”‚         โ”‚       โ”‚                                                                   โ”‚
โ”‚            โ”‚               โ”‚         โ”‚                               โ”‚ My resources: On โœ”      โ”‚ /home/cbromberg/Downloads โžก /workspace                  โ”‚         โ”‚       โ”‚                                                                   โ”‚
โ”‚            โ”‚               โ”‚         โ”‚                               โ”‚                         โ”‚                                                         โ”‚         โ”‚       โ”‚                                                                   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
$ exegol update nightly --skip-git -vvv
[D] Running update module                                                                                                                                                                                                                                                                 
[*] Exegol is currently in version v4.0.3b1
[D] Pip installation: Off ๐Ÿช“                                                                                                                                                                                                                                                              
[D] Git source installation: On โœ”                                                                                                                                                                                                                                                         
[D] Host OS: Linux                                                                                                                                                                                                                                                                        
[D] Arch: amd64                                                                                                                                                                                                                                                                           
[D] Docker desktop: Off ๐Ÿช“                                                                                                                                                                                                                                                                
[D] Shell type: Linux                                                                                                                                                                                                                                                                     
[D] Loading git at /opt/projects/Exegol                                                                                                                                                                                                                                                   
[D] Repo path: /opt/projects/Exegol/.git                                                                                                                                                                                                                                                  
[D] Git repository successfully loaded                                                                                                                                                                                                                                                    
[D] Fetch flags : 4                                                                                                                                                                                                                                                                       
[D] Fetch note :                                                                                                                                                                                                                                                                          
[D] Fetch old commit : None                                                                                                                                                                                                                                                               
[D] Fetch remote path : dev                                                                                                                                                                                                                                                               
[D] HEAD UP TO DATE flag detected                                                                                                                                                                                                                                                         

[D] Fetching remote image tags, digests and sizes                                                                                                                                                                                                                                         
[D] Fetching information from: https://hub.docker.com/v2/repositories/nwodtuhs/exegol/tags?page_size=20                                                                                                                                                                                   
[D] โ””โ”€โ”€ nightly โ†’ (remote) sha256:415150be34aa33bc3967a1f4b93d1173f61c51b98e1880a046b11d4193cb377a                                                                                                                                                                                        
[D] โ””โ”€โ”€ full-2.0.2      โ†’ (remote) sha256:7d4a12cc5a1e9844f133c8888ed35c3aaceceed1911fb7aace946a8ffe77a232                                                                                                                                                                                
[D] โ””โ”€โ”€ full    โ†’ (remote) sha256:7d4a12cc5a1e9844f133c8888ed35c3aaceceed1911fb7aace946a8ffe77a232                                                                                                                                                                                        
[D] โ””โ”€โ”€ light-2.0.2     โ†’ (remote) sha256:630b085d3d8f4e077844ea9b530c4a5856d2db9f7abdcf5ece2ae87fadc80d4d                                                                                                                                                                                
[D] โ””โ”€โ”€ light   โ†’ (remote) sha256:630b085d3d8f4e077844ea9b530c4a5856d2db9f7abdcf5ece2ae87fadc80d4d                                                                                                                                                                                        
[D] โ””โ”€โ”€ ad-2.0.2        โ†’ (remote) sha256:a141d1c4e4f50d481a0ab8f2a4d60161c4a099f388485e6f1f8042ed66065611                                                                                                                                                                                
[D] โ””โ”€โ”€ ad      โ†’ (remote) sha256:a141d1c4e4f50d481a0ab8f2a4d60161c4a099f388485e6f1f8042ed66065611                                                                                                                                                                                        
[D] โ””โ”€โ”€ web-2.0.2       โ†’ (remote) sha256:f1a210d22838306b14fbd0afcfda51103464239cfb75b752f19bf1b3a8e098be                                                                                                                                                                                
[D] โ””โ”€โ”€ web     โ†’ (remote) sha256:f1a210d22838306b14fbd0afcfda51103464239cfb75b752f19bf1b3a8e098be                                                                                                                                                                                        
[D] โ””โ”€โ”€ osint-2.0.2     โ†’ (remote) sha256:d63405881d637711ac2f0a09a321e84ad9caae743cb3b0acc7e9f6ff2558a668                                                                                                                                                                                
[D] โ””โ”€โ”€ osint   โ†’ (remote) sha256:d63405881d637711ac2f0a09a321e84ad9caae743cb3b0acc7e9f6ff2558a668                                                                                                                                                                                        
[D] โ””โ”€โ”€ full-2.0.1      โ†’ (remote) sha256:8ff1870bd0dc5c7d79772454b67651d79a23f2b6ad15ab490f00822f6ee324f1                                                                                                                                                                                
[D] โ””โ”€โ”€ ad-2.0.1        โ†’ (remote) sha256:55e5271e6d8a73d745c3200ce4cb0298b4063e20dfd9f762fc506ca359805d51                                                                                                                                                                                
[D] โ””โ”€โ”€ web-2.0.1       โ†’ (remote) sha256:ca9c34fb433797ee51199e75b0cebc051fde9b1fe837a03ca5b286478cc05250                                                                                                                                                                                
[D] โ””โ”€โ”€ light-2.0.1     โ†’ (remote) sha256:9e7f1228f18ec1cc687d2e45fe6ca50013dc30a2f2b0ff4a9cd2bfcbb468dc5d                                                                                                                                                                                
[D] โ””โ”€โ”€ osint-2.0.1     โ†’ (remote) sha256:7ea562eb869ccc1b729e6468af151b0e4f3d1aeb739baf5d9f20207c5f8b104a                                                                                                                                                                                
[D] โ””โ”€โ”€ web-2.0.0       โ†’ (remote) sha256:f74fcc92b8e3f31f45e4141fb9eb7f9e85c29e61785eda85b2aa989c56d94571                                                                                                                                                                                
[D] โ””โ”€โ”€ light-2.0.0     โ†’ (remote) sha256:18fc89446474dfd8ceb2951df41baa571447e4eb6ea7df1b127d8cd6caea222c                                                                                                                                                                                
[D] โ””โ”€โ”€ osint-2.0.0     โ†’ (remote) sha256:e5e1832f98ce7cc69b9317bab5a9374e2a9d3c0489c36db6572c6ca4387d86b1                                                                                                                                                                                
[D] โ””โ”€โ”€ full-2.0.0b5    โ†’ (remote) sha256:252afb0667c3d51670d53fdfb53550d71fc7a4d45c4f326b158ff346f0bb0b14                                                                                                                                                                                
[D] Fetching information from: https://hub.docker.com/v2/repositories/nwodtuhs/exegol/tags?page=2&page_size=20                                                                                                                                                                            
[D] โ””โ”€โ”€ ad-2.0.0b5      โ†’ (remote) sha256:42ac024f403e51dbd5d500afad3750b7666456fa22348740412071ec90481108                                                                                                                                                                                
[D] โ””โ”€โ”€ web-2.0.0b5     โ†’ (remote) sha256:cc4966d12043bc6a8d98647ab185eef1d157b0bc9103d5ec2cebb3b6e91b98c1                                                                                                                                                                                
[D] โ””โ”€โ”€ light-2.0.0b5   โ†’ (remote) sha256:b0409163fc61ac9e987843894c9ac53bf117bedce3f36f019115c668fc0c5123                                                                                                                                                                                
[D] โ””โ”€โ”€ osint-2.0.0b5   โ†’ (remote) sha256:2f693307e10d40785ec0724ccc8b28ef7b7ca4ff6efd21c66da71d0af7d432cd                                                                                                                                                                                
[D] Fetching local image tags, digests (and other attributes)                                                                                                                                                                                                                             
[D] โ””โ”€โ”€ nightly โ†’ (remote) sha256:f32095a44b8702b9030aba26750e89aace61216cec8662c35f3bc921245ad904                                                                                                                                                                                        
[*] Updating exegol image : nightly                                                                                                                                                                                                                                                       
[!] This image is already up to date. Skipping. 

Windows implementation

Hi,

Is Exegol implemented to run on Windows ?

Based on Docker and python3, Exegol seems to be OK to run on Windows.
But the installation failed here

[*] Creating the container
[!] (cmd stderr)     Error response from daemon: failed to mount local volume: mount D:\VM\Exegol/shared-re
sources:/var/lib/docker/volumes/ea114eb184c97f20dc87511f2618285366861236866654bf0f23a5a964e1698e/_data, flags:
0x1000: no such file or directory
[!] Something went wrong...

It looks like path is linux/windows mixed.
I don't like Windows but I have to use it, so a linux-based container is a good workaround for me.

Thanks,
JD

History persistence

History is reset when Exegol restarts. Need to find a way to keep a persistent history file.

Goals

  • users can find their own commands in the history even after Exegol stops
  • users can delete that history file without removing the original content

John The Ripper not working

Issue

Hi,

With a fresh new default container, the program John The Ripper is not working.

john --fork=4 --format='dynamic=sha512($p.$s)' --wordlist=`fzf-wordlists` hash
zsh: no such file or directory: /opt/tools/john/run/john

The john alias is set to /opt/tools/john/run/john

alias | grep john                       
john=/opt/tools/john/run/john

But the executable file is not present :

find / -name "john*" -type f 2>/dev/null
/opt/tools/john/run/john.conf
/opt/tools/john/run/john.zsh_completion
/opt/tools/john/run/john.bash_completion
/opt/tools/john/doc/extras/john-1.7.9-jumbo-7-licensing-stats.txt
/opt/tools/john/doc/extras/john-1.7.9-jumbo-7-licensing.txt
/opt/tools/john/src/john.asm
/opt/tools/john/src/john.com
/opt/tools/john/src/johnswap.h
/opt/tools/john/src/john_mpi.c
/opt/tools/john/src/john_mpi.h
/opt/tools/john/src/john.h
/opt/tools/john/src/john_build_rule.h
/opt/tools/john/src/john.c
/usr/share/seclists/Passwords/Software/john-the-ripper.txt

Tested on stable and web images.

FIX

Installing (the classic way) john from apt fixes the issue.

apt install john
unalias john

Add feature: Exegol-version

Hi Shutdown,

It would be nice to be able to compare the local and the github version of Exegol to be sure to be up to date with a command like: "version".
Great tool by the way! ;)

Unable to start under mac (xhost error)

System configuration

os version: macOSCatalina (10.15.7)

iterm version: 3.3.12

shell: zsh 5.8 (x86_64-apple-darwin19.3.0)

Steps to reproduce

[+] Exegol image exists
[+] Exegol container exists
[+] Exegol container is up
[*] Running xhost command for display sharing
Traceback (most recent call last):
  File "/MYPATH/Exegol/exegol.py", line 603, in <module>
    globals()[options.action]()
  File "/MYPATH/Exegol/exegol.py", line 395, in start
    exec_popen(
  File "/MYPATH/Exegol/exegol.py", line 326, in exec_popen
    output = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
  File "/usr/local/Cellar/[email protected]/3.9.0_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 947, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/local/Cellar/[email protected]/3.9.0_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 1819, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'xhost'

Sadly the exegol --no-default start still launch xhost...

Raison :

https://support.apple.com/en-gb/HT201341

Solution :

Install xquartz (https://gist.github.com/cschiewek/246a244ba23da8b9f0e7b11a68bf3285)

brew install xquartz
exegol start
~ โฏโฏโฏ exegol start
[+] Exegol image exists
[+] Exegol container exists
[+] Exegol container is up
[*] Running xhost command for display sharing
[!] (cmd stderr)        xhost:  unable to open display "my_hostname:0"
[*] Entering Exegol
[Nov 13, 2020 - 11:51:27 (UTC)] Exegol /data #

Display sharing will still not work but at least, the project can start.

(not sure if it has to be an open issue. But as I lost 1 hours on the setup, I wanted to keep trace).

Missing timezone file on host prevents container start

Existing container can't start because of missing timezone file.

Environment

[*] Exegol is currently in version v4.0.5b1
[D] Pip installation: Off ๐Ÿช“
[D] Git source installation: On โœ”
[D] Host OS: Mac
[D] Arch: arm64
[D] Docker desktop: On โœ”
[D] Shell type: Mac
[D] Last update check: 12/09/2022

Traceback

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ Traceback (most recent call last) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/api/client.py:268 in           โ”‚
โ”‚ _raise_for_status                                                                                โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   265 โ”‚   def _raise_for_status(self, response):                                                 โ”‚
โ”‚   266 โ”‚   โ”‚   """Raises stored :class:`APIError`, if one occurred."""                            โ”‚
โ”‚   267 โ”‚   โ”‚   try:                                                                               โ”‚
โ”‚ โฑ 268 โ”‚   โ”‚   โ”‚   response.raise_for_status()                                                    โ”‚
โ”‚   269 โ”‚   โ”‚   except requests.exceptions.HTTPError as e:                                         โ”‚
โ”‚   270 โ”‚   โ”‚   โ”‚   raise create_api_error_from_http_exception(e) from e                           โ”‚
โ”‚   271                                                                                            โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                               โ”‚
โ”‚ โ”‚ response = <Response [400]>                                    โ”‚                               โ”‚
โ”‚ โ”‚     self = <docker.api.client.APIClient object at 0x1028dc1c0> โ”‚                               โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                               โ”‚
โ”‚ /Users/charlie/Library/Python/3.8/lib/python/site-packages/requests/models.py:960 in             โ”‚
โ”‚ raise_for_status                                                                                 โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   957 โ”‚   โ”‚   โ”‚   http_error_msg = u'%s Server Error: %s for url: %s' % (self.status_code, rea   โ”‚
โ”‚   958 โ”‚   โ”‚                                                                                      โ”‚
โ”‚   959 โ”‚   โ”‚   if http_error_msg:                                                                 โ”‚
โ”‚ โฑ 960 โ”‚   โ”‚   โ”‚   raise HTTPError(http_error_msg, response=self)                                 โ”‚
โ”‚   961 โ”‚                                                                                          โ”‚
โ”‚   962 โ”‚   def close(self):                                                                       โ”‚
โ”‚   963 โ”‚   โ”‚   """Releases the connection back to the pool. Once this method has been             โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚
โ”‚ โ”‚ http_error_msg = '400 Client Error: Bad Request for url:                                     โ”‚ โ”‚
โ”‚ โ”‚                  http+docker://localhost/v1.41/containers/'+70                               โ”‚ โ”‚
โ”‚ โ”‚         reason = 'Bad Request'                                                               โ”‚ โ”‚
โ”‚ โ”‚           self = <Response [400]>                                                            โ”‚ โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
HTTPError: 400 Client Error: Bad Request for url:
http+docker://localhost/v1.41/containers/68349ee30f9fc8007d2a0e384a3913ce418ed67a1e518cf31e44c554c237bceb/start

The above exception was the direct cause of the following exception:

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ Traceback (most recent call last) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Projects/Exegol/exegol/manager/ExegolController.py:35 in main                     โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   32 โ”‚   โ”‚   # Set logger verbosity depending on user input                                      โ”‚
โ”‚   33 โ”‚   โ”‚   ExeLog.setVerbosity(ParametersManager().verbosity, ParametersManager().quiet)       โ”‚
โ”‚   34 โ”‚   โ”‚   # Start Main controller & Executing action selected by user CLI                     โ”‚
โ”‚ โฑ 35 โ”‚   โ”‚   ExegolController.call_action()                                                      โ”‚
โ”‚   36 โ”‚   except KeyboardInterrupt:                                                               โ”‚
โ”‚   37 โ”‚   โ”‚   logger.empty_line()                                                                 โ”‚
โ”‚   38 โ”‚   โ”‚   logger.info("Exiting")                                                              โ”‚
โ”‚ /Users/charlie/Projects/Exegol/exegol/manager/ExegolController.py:23 in call_action              โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   20 โ”‚   โ”‚   โ”‚   # Fetch main operation function                                                 โ”‚
โ”‚   21 โ”‚   โ”‚   โ”‚   main_action = cls.__action()                                                    โ”‚
โ”‚   22 โ”‚   โ”‚   โ”‚   # Execute main function                                                         โ”‚
โ”‚ โฑ 23 โ”‚   โ”‚   โ”‚   main_action()                                                                   โ”‚
โ”‚   24 โ”‚   โ”‚   else:                                                                               โ”‚
โ”‚   25 โ”‚   โ”‚   โ”‚   # TODO review required parameters                                               โ”‚
โ”‚   26 โ”‚   โ”‚   โ”‚   logger.error(f"These parameters are mandatory but missing: {','.join(missing    โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚
โ”‚ โ”‚            cls = <class 'exegol.manager.ExegolController.ExegolController'>                  โ”‚ โ”‚
โ”‚ โ”‚    main_action = <bound method ExegolManager.start of <class                                 โ”‚ โ”‚
โ”‚ โ”‚                  'exegol.manager.ExegolManager.ExegolManager'>>                              โ”‚ โ”‚
โ”‚ โ”‚ missing_params = []                                                                          โ”‚ โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Projects/Exegol/exegol/manager/ExegolManager.py:79 in start                       โ”‚
โ”‚                                                                                                  โ”‚
โ”‚    76 โ”‚   โ”‚   if not container.isNew():                                                          โ”‚
โ”‚    77 โ”‚   โ”‚   โ”‚   # Check and warn user if some parameters don't apply to the current session    โ”‚
โ”‚    78 โ”‚   โ”‚   โ”‚   cls.__checkUselessParameters()                                                 โ”‚
โ”‚ โฑ  79 โ”‚   โ”‚   container.start()                                                                  โ”‚
โ”‚    80 โ”‚   โ”‚   container.spawnShell()                                                             โ”‚
โ”‚    81 โ”‚                                                                                          โ”‚
โ”‚    82 โ”‚   @classmethod                                                                           โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ             โ”‚
โ”‚ โ”‚       cls = <class 'exegol.manager.ExegolManager.ExegolManager'>                 โ”‚             โ”‚
โ”‚ โ”‚ container = <exegol.model.ExegolContainer.ExegolContainer object at 0x102997eb0> โ”‚             โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ             โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Projects/Exegol/exegol/model/ExegolContainer.py:103 in start                      โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   100 โ”‚   โ”‚   โ”‚   logger.info(f"Starting container {self.name}")                                 โ”‚
โ”‚   101 โ”‚   โ”‚   โ”‚   self.preStartSetup()                                                           โ”‚
โ”‚   102 โ”‚   โ”‚   โ”‚   with console.status(f"Waiting to start {self.name}", spinner_style="blue"):    โ”‚
โ”‚ โฑ 103 โ”‚   โ”‚   โ”‚   โ”‚   self.__container.start()                                                   โ”‚
โ”‚   104 โ”‚                                                                                          โ”‚
โ”‚   105 โ”‚   def stop(self, timeout: int = 10):                                                     โ”‚
โ”‚   106 โ”‚   โ”‚   """Stop the docker container"""                                                    โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                  โ”‚
โ”‚ โ”‚ self = <exegol.model.ExegolContainer.ExegolContainer object at 0x102997eb0> โ”‚                  โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                  โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/models/containers.py:404 in    โ”‚
โ”‚ start                                                                                            โ”‚
โ”‚                                                                                                  โ”‚
โ”‚    401 โ”‚   โ”‚   โ”‚   :py:class:`docker.errors.APIError`                                            โ”‚
โ”‚    402 โ”‚   โ”‚   โ”‚   โ”‚   If the server returns an error.                                           โ”‚
โ”‚    403 โ”‚   โ”‚   """                                                                               โ”‚
โ”‚ โฑ  404 โ”‚   โ”‚   return self.client.api.start(self.id, **kwargs)                                   โ”‚
โ”‚    405 โ”‚                                                                                         โ”‚
โ”‚    406 โ”‚   def stats(self, **kwargs):                                                            โ”‚
โ”‚    407 โ”‚   โ”‚   """                                                                               โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                                                           โ”‚
โ”‚ โ”‚ kwargs = {}                        โ”‚                                                           โ”‚
โ”‚ โ”‚   self = <Container: 68349ee30f9f> โ”‚                                                           โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                                                           โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/utils/decorators.py:19 in      โ”‚
โ”‚ wrapped                                                                                          โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   16 โ”‚   โ”‚   โ”‚   โ”‚   raise errors.NullResource(                                                  โ”‚
โ”‚   17 โ”‚   โ”‚   โ”‚   โ”‚   โ”‚   'Resource ID was not provided'                                          โ”‚
โ”‚   18 โ”‚   โ”‚   โ”‚   โ”‚   )                                                                           โ”‚
โ”‚ โฑ 19 โ”‚   โ”‚   โ”‚   return f(self, resource_id, *args, **kwargs)                                    โ”‚
โ”‚   20 โ”‚   โ”‚   return wrapped                                                                      โ”‚
โ”‚   21 โ”‚   return decorator                                                                        โ”‚
โ”‚   22                                                                                             โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ           โ”‚
โ”‚ โ”‚          args = ()                                                                 โ”‚           โ”‚
โ”‚ โ”‚             f = <function ContainerApiMixin.start at 0x1026341f0>                  โ”‚           โ”‚
โ”‚ โ”‚        kwargs = {}                                                                 โ”‚           โ”‚
โ”‚ โ”‚   resource_id = '68349ee30f9fc8007d2a0e384a3913ce418ed67a1e518cf31e44c554c237bceb' โ”‚           โ”‚
โ”‚ โ”‚ resource_name = 'container'                                                        โ”‚           โ”‚
โ”‚ โ”‚          self = <docker.api.client.APIClient object at 0x1028dc1c0>                โ”‚           โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ           โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/api/container.py:1121 in start โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   1118 โ”‚   โ”‚   โ”‚   )                                                                             โ”‚
โ”‚   1119 โ”‚   โ”‚   url = self._url("/containers/{0}/start", container)                               โ”‚
โ”‚   1120 โ”‚   โ”‚   res = self._post(url)                                                             โ”‚
โ”‚ โฑ 1121 โ”‚   โ”‚   self._raise_for_status(res)                                                       โ”‚
โ”‚   1122 โ”‚                                                                                         โ”‚
โ”‚   1123 โ”‚   @utils.check_resource('container')                                                    โ”‚
โ”‚   1124 โ”‚   def stats(self, container, decode=None, stream=True):                                 โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚
โ”‚ โ”‚      args = ()                                                                               โ”‚ โ”‚
โ”‚ โ”‚ container = '68349ee30f9fc8007d2a0e384a3913ce418ed67a1e518cf31e44c554c237bceb'               โ”‚ โ”‚
โ”‚ โ”‚    kwargs = {}                                                                               โ”‚ โ”‚
โ”‚ โ”‚       res = <Response [400]>                                                                 โ”‚ โ”‚
โ”‚ โ”‚      self = <docker.api.client.APIClient object at 0x1028dc1c0>                              โ”‚ โ”‚
โ”‚ โ”‚       url = 'http+docker://localhost/v1.41/containers/68349ee30f9fc8007d2a0e384a3913ce418edโ€ฆ โ”‚ โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/api/client.py:270 in           โ”‚
โ”‚ _raise_for_status                                                                                โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   267 โ”‚   โ”‚   try:                                                                               โ”‚
โ”‚   268 โ”‚   โ”‚   โ”‚   response.raise_for_status()                                                    โ”‚
โ”‚   269 โ”‚   โ”‚   except requests.exceptions.HTTPError as e:                                         โ”‚
โ”‚ โฑ 270 โ”‚   โ”‚   โ”‚   raise create_api_error_from_http_exception(e) from e                           โ”‚
โ”‚   271 โ”‚                                                                                          โ”‚
โ”‚   272 โ”‚   def _result(self, response, json=False, binary=False):                                 โ”‚
โ”‚   273 โ”‚   โ”‚   assert not (json and binary)                                                       โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                               โ”‚
โ”‚ โ”‚ response = <Response [400]>                                    โ”‚                               โ”‚
โ”‚ โ”‚     self = <docker.api.client.APIClient object at 0x1028dc1c0> โ”‚                               โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                               โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /Users/charlie/Library/Python/3.8/lib/python/site-packages/docker/errors.py:39 in                โ”‚
โ”‚ create_api_error_from_http_exception                                                             โ”‚
โ”‚                                                                                                  โ”‚
โ”‚    36 โ”‚   โ”‚   โ”‚   cls = ImageNotFound                                                            โ”‚
โ”‚    37 โ”‚   โ”‚   else:                                                                              โ”‚
โ”‚    38 โ”‚   โ”‚   โ”‚   cls = NotFound                                                                 โ”‚
โ”‚ โฑ  39 โ”‚   raise cls(e, response=response, explanation=explanation) from e                        โ”‚
โ”‚    40                                                                                            โ”‚
โ”‚    41                                                                                            โ”‚
โ”‚    42 class APIError(requests.exceptions.HTTPError, DockerException):                            โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚
โ”‚ โ”‚         cls = <class 'docker.errors.APIError'>                                               โ”‚ โ”‚
โ”‚ โ”‚           e = HTTPError('400 Client Error: Bad Request for url:                              โ”‚ โ”‚
โ”‚ โ”‚               http+docker://localhost/v1.41/containers/68349ee30f9fc8007d2a0e384a3913ce418eโ€ฆ โ”‚ โ”‚
โ”‚ โ”‚ explanation = 'invalid mount config for type "bind": bind source path does not exist:        โ”‚ โ”‚
โ”‚ โ”‚               /host_mnt'+59                                                                  โ”‚ โ”‚
โ”‚ โ”‚    response = <Response [400]>                                                               โ”‚ โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
APIError: 400 Client Error for http+docker://localhost/v1.41/containers/68349ee30f9fc8007d2a0e384a3913ce418ed67a1e518cf31e44c554c237bceb/start: Bad
Request ("invalid mount config for type "bind": bind source path does not exist:
/host_mnt/private/var/db/timezone/tz/2022a.1.0/zoneinfo/Europe/Paris")

X11 / GUI Tools issue when using Exegol on WSL

Hey,

I freshly installed Exegol on an Ubuntu image under WSL, couldn't manage to get the GUI working.
The default build of the latest full image from an up to date Exegol repo was successful but without GUI support.

I got a full debug trace of the container creation process if needed.
Here's the short error message :

[?] Do you want to enable GUI? [y/N]: y
[!] Graphical interface sharing could not be enabled: Exegol tried to create a container with GUI support on a Windows host without having performed the availability tests
before.

Environment :

  • Windows 11 (build 10.0.22000)
  • WSL 2 running Ubuntu (where Exegol has been installed)
  • And I meet the requirements

I previously did a

powershell> wsl --update

Docker Desktop is up and running and well configured (as on Shutdown's tutorial/requirements).

Exegol_container_GUI_off

Any idea how we could fix it ?

Add Mobile pentesting tools

Hello,
First, thanks for the project!
I would like if you are interested to integrate mobile-pentest oriented tools such as apktool, adb, objection, qark etc... in Exegol.
We can imagine to integrate ios and android like you did for proxmark.

I will be glad to contribute on this project,

Maxime

Mounting current directory

Hi,

First of all thank you for this amazing project... I recently started to use it and it is really nice... just wanted to create an issue since it seems that the mounting current directory is not working (exegol start --cwd-mount) or maybe I am not using it as it should ?

Zsh history is not empty

Hi,

Thank you for Exegol, I love it!

I just have a small issue to report: at startup, the zsh history is not empty.

A quick fix is to delete the file .zsh_history.

Thanks again for your work ;)

Exegol Image fails to start on Mac

Specs

image

  • Docker Version: 4.10.1 (82475)
  • Python Version: 3.9.0
  • Exegol Version: 4.0.2
  • XQuartz: 2.8.2 (installed via brew)

(let me know if you need any more information about my system)

Bug

The Exegol image fails to start on my Mac due to some weird error around a source path not existing (when it seemingly does).

Using the installer, I receive this error:

[7/07/22 19:19:08]โžœ  ~ exegol start full
[*] Exegol is currently in version v4.0.2
[*] Starting exegol                                                                                                               
[*] Arguments supplied with the command, skipping interactive mode                                                                

๐Ÿ›ธ Available images                                       
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Image tag โ”‚ Size                โ”‚ Status               โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ full      โ”‚ 27.3GB              โ”‚ Up to date (v.2.0.2) โ”‚
โ”‚ nightly   โ”‚ 11.8GB (compressed) โ”‚ Not installed        โ”‚
โ”‚ light     โ”‚ 4.3GB (compressed)  โ”‚ Not installed        โ”‚
โ”‚ ad        โ”‚ 9.3GB (compressed)  โ”‚ Not installed        โ”‚
โ”‚ web       โ”‚ 7.3GB (compressed)  โ”‚ Not installed        โ”‚
โ”‚ osint     โ”‚ 3.1GB (compressed)  โ”‚ Not installed        โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[*] You can use a name that does not already exist to build a new image from local sources                                        
[?] Select an image by its name (full): 
[!] Docker desktop (Windows & macOS) does not support sharing of host network interfaces.                                         
[*] To share network ports between the host and exegol, use the --port parameter.                                                 

โญ Container summary                              
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚             Name โ”‚ full                        โ”‚
โ”‚            Image โ”‚ full - v.2.0.2 (Up to date) โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚              GUI โ”‚ On โœ”                        โ”‚
โ”‚          Network โ”‚ bridge                      โ”‚
โ”‚         Timezone โ”‚ On โœ”                        โ”‚
โ”‚ Exegol resources โ”‚ On โœ” (/opt/resources)       โ”‚
โ”‚     My resources โ”‚ On โœ” (/my-resources)        โ”‚
โ”‚              VPN โ”‚ N/A                         โ”‚
โ”‚       Privileged โ”‚ Off โœ”                       โ”‚
โ”‚        Workspace โ”‚ Dedicated (/workspace)      โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[*] Creating new exegol container                                                                                                 
[-] invalid mount config for type "bind": bind source path does not exist: /tmp/.X11-unix                                         
[!] Error while creating exegol container. Exiting.

That directory does exist but it appears to be symlinked to private/tmp (which might be why I am getting an error tbf)

[7/07/22 19:21:25]โžœ  ~ ls -la /tmp 
lrwxr-xr-x@ 1 root  wheel  11  1 Jan  2020 /tmp -> private/tmp                                                               /0.0s
[7/07/22 19:21:30]โžœ  ~ cat /tmp 
cat: /tmp: Is a directory                                                                                                    /0.0s
[7/07/22 19:21:34]โžœ  ~ mkdir /tmp/.X11-unix 
mkdir: /tmp/.X11-unix: File exists

This also happens within XQuartz's xterm too.

Failed Fixes

  • I have tried the usual debugging steps (restarting docker, restarting system, running as --privileged etc).
  • I haven't tried removing the symlink yet as I am curious if it would be possible for exegol to support the symlink.
  • Running as root also doesn't work as XQuartz is not configured as root and I really don't want to run programs as root if I don't have to
  • It appears to affect the full image and the light image at the very least

Docker Hub fails to build

Lately, Docker Hub builds tend to fail.
The error thrown in the logs is always the same: no space left on device.
Right now, Exegol weighs 10.4GB, maybe the build size is limited?
I think the issue is on the Docker Hub side, there is no problem at all when building locally.

Docker download error when trying to install nightly

[*] You can use a name that does not already exist to build a new image from local sources
[?] Select an image by its name (nightly): nightly
[*] Installing exegol image : nightly
[*] Starting download. Please wait, this might be (very) long.
Downloading nwodtuhs/exegol:nightly โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ” 100.0% โ€ข 27/27      โ€ข ?         โ€ข 0:11:13 โ€ข 0:00:00
Extracting nwodtuhs/exegol:nightly  โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•ธโ”โ”โ”โ” 85.2%  โ€ข 23/27      โ€ข 0 bytes/s โ€ข 0:14:11 โ€ข 0:00:22
Extracting 8f2749ce8f4a             โ”โ”โ”โ”โ”โ”โ”โ•บโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ” 24.5%  โ€ข 0.3/1.3 GB โ€ข 46.0 MB/s โ€ข 0:00:06 โ€ข 0:00:21
[-] Docker download error: failed to register layer: Error processing tar file(exit status 1): write

Numpy dependency issue on Windows.

Hello,

Thanks again for your project!

I've noticed a strange behavior today with the master branch inside the exegol.py on Windows.
The requirements.txt file indicate a dependency for pandas 1.0.5. This dependency required numpy >= 1.13.3.

The last version numpy-1.19.4 is not compatible with windows and will display the following message when you tried to use the Python script.

The current Numpy installation ('C:\\Users\\XXXX\\AppData\\Local\\Programs\\Python\\Python37\\lib\\site-packages\\numpy\\__init__.py') fails to pass a sanity check due to a bug in the windows runtime. See this issue for more information: https://tinyurl.com/y3dm3h86

The solution is to manually downgrade numpy to 1.19.4 with these commands:

python -m pip uninstall numpy
pip install numpy==1.19.3
python -m pip install -r requirements.txt

I hope this thread could save some time to others users ;)

See ya

Unable to locate python-pip

During new installs, the docker raises the following error

E: Unable to locate package python-pip

This issue seems to affect other users as well. Maybe python-pip has been removed from the official sources ?

[Warn] - During an image update

Hello,
Following the release of exegol 4.0.2 I decided to update the tool and also the AD image

After 2 hours of downloading I got the following error:

image

when I look at the version, it looks like it went well :

image

and when I run the container it works so nothing serious but I wanted to notify the "problem" :

image

nmap issue on Mac M1 (pcap_create(eth0) FAILED:)

Hello guys !
First of all, thanks a lot for your great job !

I would like to submit an issue that I faced with nmap on Mac M1. I don't know if I am the only one having this issue related to pcap ?

โžœ Exegol exegol start
[] Exegol is currently in version v4.0.1
[
] Starting exegol

๐Ÿ‘ฝ Available containers
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Container tag โ”‚ State โ”‚ Image tag โ”‚ Configurations โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ test โ”‚ Running โ”‚ nightly โ”‚ Privileged: On ๐Ÿ”ฅ โ”‚
โ”‚ โ”‚ โ”‚ โ”‚ GUI: Off ๐Ÿช“ โ”‚
โ”‚ โ”‚ โ”‚ โ”‚ Share timezone: Off ๐Ÿช“ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[] You can use a name that does not already exist to create a new container
[?] Select a container by its name (test):
[
] Location of the exegol workspace on the host : /Users/adrien/.exegol/workspaces/test
[+] Opening shell in Exegol 'test'
[May 19, 2022 - 22:42:00 (CEST)] exegol-test /workspace # nmap -sS -n --open -p 88 192.168.1.0/24
Starting Nmap 7.92 ( https://nmap.org ) at 2022-05-19 22:42 CEST
pcap_create(eth0) FAILED: eth0: SIOCETHTOOL(ETHTOOL_GET_TS_INFO) ioctl failed: Function not implemented.
Call to pcap_open_live() failed three times. There are several possible reasons for this, depending on your operating system:
LINUX: If you are getting Socket type not supported, try modprobe af_packet or recompile your kernel with PACKET enabled.
*BSD: If you are getting device not configured, you need to recompile your kernel with Berkeley Packet Filter support. If you are getting No such file or directory, try creating the device (eg cd /dev; MAKEDEV ; or use mknod).
*WINDOWS: Nmap only supports ethernet interfaces on Windows for most operations because Microsoft disabled raw sockets as of Windows XP SP2. Depending on the reason for this error, it is possible that the --unprivileged command-line argument will help.
SOLARIS: If you are trying to scan localhost or the address of an interface and are getting '/dev/lo0: No such file or directory' or 'lo0: No DLPI device found', complain to Sun. I don't think Solaris can support advanced localhost scans. You can probably use "-Pn -sT localhost" though.

QUITTING!

Maybe other Mac users have solved the issue ?

Thanks,
BR

[BUG] bind source does not exist

Describe the bug

Hi,
I got an error (see below). I didn't change anything since previous time and I'm a bit suprised

`
PS C:\Users\mathy> exegol start default full -cwd --disable-shared-timezones --disable-shared-network --vpn D:\Exegol\Docker.ovpn
C:\Users\mathy\AppData\Local\Programs\Python\Python310\lib\site-packages\paramiko\transport.py:178: CryptographyDeprecationWarning: Blowfish has been deprecated
'class': algorithms.Blowfish,
[] Exegol is currently in version v4.1.0
[
] Exegol Discord serv.: https://discord.gg/cXThyp7D6P
[] Exegol documentation: https://exegol.rtfd.io/
[+] We thank Capgemini for supporting the project (helping with dev) ๐Ÿ™
[+] We thank HackTheBox for sponsoring the multi-arch support ๐Ÿ’š
[
] Starting exegol
[*] Arguments supplied with the command, skipping interactive mode
<3>WSL (245) ERROR: UtilTranslatePathList:2671: Failed to translate D:\IntelliJ\bin
<3>WSL (248) ERROR: UtilTranslatePathList:2671: Failed to translate D:\IntelliJ\bin
<3>WSL (18111) ERROR: UtilTranslatePathList:2671: Failed to translate D:\IntelliJ\bin

โญ Container summary
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Name โ”‚ default โ”‚
โ”‚ Image โ”‚ full - v.3.0.0 (Up to date) โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ GUI โ”‚ On โœ” โ”‚
โ”‚ Network โ”‚ bridge with VPN โ”‚
โ”‚ Timezone โ”‚ Off ๐Ÿช“ โ”‚
โ”‚ Exegol resources โ”‚ On โœ” (/opt/resources) โ”‚
โ”‚ My resources โ”‚ On โœ” (/opt/my-resources) โ”‚
โ”‚ Shell logging โ”‚ Off ๐Ÿช“ โ”‚
โ”‚ VPN โ”‚ Docker.ovpn โ”‚
โ”‚ Privileged โ”‚ Off โœ” โ”‚
โ”‚ Capabilities โ”‚ NET_ADMIN โ”‚
โ”‚ Workspace โ”‚ C:\Users\mathy (/workspace) โ”‚
โ”‚ Devices โ”‚ /dev/net/tun โ”‚
โ”‚ Volumes โ”‚ D:\Exegol\Docker.ovpn โžก /.exegol/vpn/config/client.ovpn (RO) โ”‚
โ”‚ Systctls โ”‚ net.ipv6.conf.all.disable_ipv6 = 0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[*] Creating new exegol container
[-] invalid mount config for type "bind": bind source path does not exist:
/run/desktop/mnt/host/d/Exegol/exegol-resources
[!] Error while creating exegol container. Exiting.
PS C:\Users\mathy>
`

Steps To Reproduce

1: Start a container (with this command: exegol start default full -cwd --disable-shared-timezones --disable-shared-network --vpn D:\Exegol\Docker.ovpn)
2. Get this error [-] invalid mount config for type "bind": bind source path does not exist: /run/desktop/mnt/host/d/Exegol/exegol-resources [!] Error while creating exegol container. Exiting.

Exegol Wrapper Version

[*] Exegol is currently in version v4.1.0
[*] Exegol Discord serv.: https://discord.gg/cXThyp7D6P
[*] Exegol documentation: https://exegol.rtfd.io/
[+] We thank Capgemini for supporting the project (helping with dev) ๐Ÿ™
[+] We thank HackTheBox for sponsoring the multi-arch support ๐Ÿ’š
[D] Pip installation: On โœ”
[D] Git source installation: Off ๐Ÿช“
[D] Host OS: Windows
[D] Arch: amd64
[D] Windows release: 10.0.22621
[D] Python environment: Windows
[D] Docker engine: WSL2
[D] Docker desktop: On โœ”
[D] Shell type: Windows
[D] Last update check: 29/12/2022

Exegol container information

I don't have a running container. (Can't launch)

Exception

No response

Additional context

No response

Anything else?

No response

Share workspace as a non-root user on the host

As a daily Exegol user, I often find myself annoyed that the shared workspace is mounted as root on the host filesystem.
Most users probably don't use the root account on their host when working with files, making them chown Exegol-generated files every time they need to be used outside of the container.

I think it would be nice to add an option which let users have a non-root shared folder on their host.
One way to do that would be to change the UID/GUID of the user running inside Exegol, in order to match a host user's UID/GUID (they could be specified as an option in the launcher). This blog post came to the same outcome when trying to address the issue : https://vsupalov.com/docker-shared-permissions.

This would probably require the creation and use an other user in Exegol, as changing the UID/GUID of the root user (actually in use in the container) would most probably break stuff (not sure about this one as I am not a Unix expert).

If you think this change could be interesting for user, I can work on a pull request to convert the whole sources installation files that make use of Exegol root user and directory to a dedicated Exegol user that would have the same rights, but specified UID/GUID to make file sharing with the hosts easier.

[BUG] Error when abort install of nighlty after error update to 4.1.0

Describe the bug

Hello,

Today I saw the update to 4.1.0. I wanted to do the update as proposed by Exegol (I installed Exegol via the Github repo), but I had an error to retrieve the sources probably due to a DNS error on my side.

After it remained in 4.0.5 and I made an exegol update which proposed me to make the update of the nightly image. At that moment I accepted and then cancelled the nightly image update.

Since then, I have the following error: /usr/bin/env: โ€˜python3\rโ€™: No such file or directory

I will try to reinstall Exegol, see if that fixes the problem and I will edit my post.

Unfortunately, I did not capture all these steps. I'm on WSL2 Ubuntu 20.04 LTS with Windows 11

Steps To Reproduce

No response

Exegol Wrapper Version

โฏ exegol version -vvv
/usr/bin/env: โ€˜python3\rโ€™: No such file or directory


### Host OS

Windows 11

### Configuration of the concerned container

_No response_

### Execution logs in debug mode

```Text
โฏ exegol version -vvv
/usr/bin/env: โ€˜python3\rโ€™: No such file or directory
โฏ exegol
/usr/bin/env: โ€˜python3\rโ€™: No such file or directory
โฏ exegol -h
/usr/bin/env: โ€˜python3\rโ€™: No such file or directory
โฏ exegol -debug
/usr/bin/env: โ€˜python3\rโ€™: No such file or directory
โฏ python3
Python 3.8.10 (default, Jun 22 2022, 20:18:18)
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>


### Exception

_No response_

### Anything else?

_No response_

[Question] - The version of the main OS can affect the software?

Pull up,
Following an internal test, we have tested exegol in its latest version on 2 different physical PCs,

One under Ubuntu 18.04 and the other under Ubuntu 22.04 and here are the different behaviour

Privileged: On Ubuntu 18.04 Only MDNS Images : AD/FULL
Privileged: Off Ubuntu 22.04 All good Images : AD/FULL
Privileged: Off Ubuntu 18.04 Only MDNS Images : AD/FULL
Privileged: On Ubuntu 22.04 All good Images : AD/FULL

I'm not sure if the problem comes from there but in doubt I share the information with you

btw, in this same internal network, we have tested a kali VM in bridge which works correctly having the same version of responder ( 3.1.1.0 )

if you have any ideas or suggestions I'd love to hear them

Thank you in advance,

Exegol full image update failure

Hello, once I tried to update my full version of Exegol, I received this error message.


[+] Thank you for your collaboration!                                                                                                                                                  
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ Traceback (most recent call last) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚                                                                                                  โ”‚
โ”‚ /opt/Exegol/exegol/manager/ExegolController.py:35 in main                                        โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   32 โ”‚   โ”‚   # Set logger verbosity depending on user input                                      โ”‚
โ”‚   33 โ”‚   โ”‚   ExeLog.setVerbosity(ParametersManager().verbosity, ParametersManager().quiet)       โ”‚
โ”‚   34 โ”‚   โ”‚   # Start Main controller & Executing action selected by user CLI                     โ”‚
โ”‚ โฑ 35 โ”‚   โ”‚   ExegolController.call_action()                                                      โ”‚
โ”‚   36 โ”‚   except KeyboardInterrupt:                                                               โ”‚
โ”‚   37 โ”‚   โ”‚   logger.empty_line()                                                                 โ”‚
โ”‚   38 โ”‚   โ”‚   logger.info("Exiting")                                                              โ”‚
โ”‚ /opt/Exegol/exegol/manager/ExegolController.py:23 in call_action                                 โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   20 โ”‚   โ”‚   โ”‚   # Fetch main operation function                                                 โ”‚
โ”‚   21 โ”‚   โ”‚   โ”‚   main_action = cls.__action()                                                    โ”‚
โ”‚   22 โ”‚   โ”‚   โ”‚   # Execute main function                                                         โ”‚
โ”‚ โฑ 23 โ”‚   โ”‚   โ”‚   main_action()                                                                   โ”‚
โ”‚   24 โ”‚   โ”‚   else:                                                                               โ”‚
โ”‚   25 โ”‚   โ”‚   โ”‚   # TODO review required parameters                                               โ”‚
โ”‚   26 โ”‚   โ”‚   โ”‚   logger.error(f"These parameters are mandatory but missing: {','.join(missing    โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚
โ”‚ โ”‚            cls = <class 'exegol.manager.ExegolController.ExegolController'>                  โ”‚ โ”‚
โ”‚ โ”‚    main_action = <bound method ExegolManager.update of <class                                โ”‚ โ”‚
โ”‚ โ”‚                  'exegol.manager.ExegolManager.ExegolManager'>>                              โ”‚ โ”‚
โ”‚ โ”‚ missing_params = []                                                                          โ”‚ โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /opt/Exegol/exegol/manager/ExegolManager.py:124 in update                                        โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   121 โ”‚   โ”‚   """Update python wrapper (git installation required) and Pull a docker exegol i    โ”‚
โ”‚   122 โ”‚   โ”‚   ExegolManager.print_version()                                                      โ”‚
โ”‚   123 โ”‚   โ”‚   if not ParametersManager().skip_git:                                               โ”‚
โ”‚ โฑ 124 โ”‚   โ”‚   โ”‚   UpdateManager.updateWrapper()                                                  โ”‚
โ”‚   125 โ”‚   โ”‚   โ”‚   UpdateManager.updateImageSource()                                              โ”‚
โ”‚   126 โ”‚   โ”‚   โ”‚   UpdateManager.updateResources()                                                โ”‚
โ”‚   127 โ”‚   โ”‚   if not ParametersManager().skip_images:                                            โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                                   โ”‚
โ”‚ โ”‚ cls = <class 'exegol.manager.ExegolManager.ExegolManager'> โ”‚                                   โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                                   โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /opt/Exegol/exegol/manager/UpdateManager.py:96 in updateWrapper                                  โ”‚
โ”‚                                                                                                  โ”‚
โ”‚    93 โ”‚   @classmethod                                                                           โ”‚
โ”‚    94 โ”‚   def updateWrapper(cls) -> bool:                                                        โ”‚
โ”‚    95 โ”‚   โ”‚   """Update wrapper source code from git"""                                          โ”‚
โ”‚ โฑ  96 โ”‚   โ”‚   result = cls.__updateGit(ExegolModules().getWrapperGit())                          โ”‚
โ”‚    97 โ”‚   โ”‚   if result:                                                                         โ”‚
โ”‚    98 โ”‚   โ”‚   โ”‚   cls.__untagUpdateAvailable()                                                   โ”‚
โ”‚    99 โ”‚   โ”‚   return result                                                                      โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                                   โ”‚
โ”‚ โ”‚ cls = <class 'exegol.manager.UpdateManager.UpdateManager'> โ”‚                                   โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                                   โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /opt/Exegol/exegol/manager/UpdateManager.py:125 in __updateGit                                   โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   122 โ”‚   โ”‚   โ”‚   return False                                                                   โ”‚
โ”‚   123 โ”‚   โ”‚   logger.info(f"Updating Exegol [green]{gitUtils.getName()}[/green] {gitUtils.get    โ”‚
โ”‚   124 โ”‚   โ”‚   # Check if pending change -> cancel                                                โ”‚
โ”‚ โฑ 125 โ”‚   โ”‚   if not gitUtils.safeCheck():                                                       โ”‚
โ”‚   126 โ”‚   โ”‚   โ”‚   logger.error("Aborting git update.")                                           โ”‚
โ”‚   127 โ”‚   โ”‚   โ”‚   logger.empty_line()                                                            โ”‚
โ”‚   128 โ”‚   โ”‚   โ”‚   return False                                                                   โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                                                        โ”‚
โ”‚ โ”‚ gitUtils = GitUtils 'wrapper': Active โ”‚                                                        โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                                                        โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /opt/Exegol/exegol/utils/GitUtils.py:148 in safeCheck                                            โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   145 โ”‚   โ”‚   if self.__gitRepo is None or self.__gitRemote is None:                             โ”‚
โ”‚   146 โ”‚   โ”‚   โ”‚   return False                                                                   โ”‚
โ”‚   147 โ”‚   โ”‚   # Submodule changes must be ignored to update the submodules sources independen    โ”‚
โ”‚ โฑ 148 โ”‚   โ”‚   is_dirty = self.__gitRepo.is_dirty(submodules=False)                               โ”‚
โ”‚   149 โ”‚   โ”‚   if is_dirty:                                                                       โ”‚
โ”‚   150 โ”‚   โ”‚   โ”‚   logger.warning("Local git have unsaved change. Skipping source update.")       โ”‚
โ”‚   151 โ”‚   โ”‚   return not is_dirty                                                                โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                                                            โ”‚
โ”‚ โ”‚ self = GitUtils 'wrapper': Active โ”‚                                                            โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                                                            โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /home/gsbuosi/.local/lib/python3.7/site-packages/git/repo/base.py:725 in is_dirty                โ”‚
โ”‚                                                                                                  โ”‚
โ”‚    722 โ”‚   โ”‚   if index:                                                                         โ”‚
โ”‚    723 โ”‚   โ”‚   โ”‚   # diff index against HEAD                                                     โ”‚
โ”‚    724 โ”‚   โ”‚   โ”‚   if osp.isfile(self.index.path) and \                                          โ”‚
โ”‚ โฑ  725 โ”‚   โ”‚   โ”‚   โ”‚   โ”‚   len(self.git.diff('--cached', *default_args)):                        โ”‚
โ”‚    726 โ”‚   โ”‚   โ”‚   โ”‚   return True                                                               โ”‚
โ”‚    727 โ”‚   โ”‚   # END index handling                                                              โ”‚
โ”‚    728 โ”‚   โ”‚   if working_tree:                                                                  โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ            โ”‚
โ”‚ โ”‚    default_args = ['--abbrev=40', '--full-index', '--raw', '--ignore-submodules'] โ”‚            โ”‚
โ”‚ โ”‚           index = True                                                            โ”‚            โ”‚
โ”‚ โ”‚            path = None                                                            โ”‚            โ”‚
โ”‚ โ”‚            self = <git.repo.base.Repo '/opt/Exegol/.git'>                         โ”‚            โ”‚
โ”‚ โ”‚      submodules = False                                                           โ”‚            โ”‚
โ”‚ โ”‚ untracked_files = False                                                           โ”‚            โ”‚
โ”‚ โ”‚    working_tree = True                                                            โ”‚            โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ            โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /home/gsbuosi/.local/lib/python3.7/site-packages/git/cmd.py:639 in <lambda>                      โ”‚
โ”‚                                                                                                  โ”‚
โ”‚    636 โ”‚   โ”‚   :return: Callable object that will execute call _call_process with your argumen   โ”‚
โ”‚    637 โ”‚   โ”‚   if name[0] == '_':                                                                โ”‚
โ”‚    638 โ”‚   โ”‚   โ”‚   return LazyMixin.__getattr__(self, name)                                      โ”‚
โ”‚ โฑ  639 โ”‚   โ”‚   return lambda *args, **kwargs: self._call_process(name, *args, **kwargs)          โ”‚
โ”‚    640 โ”‚                                                                                         โ”‚
โ”‚    641 โ”‚   def set_persistent_git_options(self, **kwargs: Any) -> None:                          โ”‚
โ”‚    642 โ”‚   โ”‚   """Specify command line options to the git executable                             โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ         โ”‚
โ”‚ โ”‚   args = ('--cached', '--abbrev=40', '--full-index', '--raw', '--ignore-submodules') โ”‚         โ”‚
โ”‚ โ”‚ kwargs = {}                                                                          โ”‚         โ”‚
โ”‚ โ”‚   name = 'diff'                                                                      โ”‚         โ”‚
โ”‚ โ”‚   self = <git.cmd.Git object at 0x7f034cc916e0>                                      โ”‚         โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ         โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /home/gsbuosi/.local/lib/python3.7/site-packages/git/cmd.py:1184 in _call_process                โ”‚
โ”‚                                                                                                  โ”‚
โ”‚   1181 โ”‚   โ”‚   call.append(dashify(method))                                                      โ”‚
โ”‚   1182 โ”‚   โ”‚   call.extend(args_list)                                                            โ”‚
โ”‚   1183 โ”‚   โ”‚                                                                                     โ”‚
โ”‚ โฑ 1184 โ”‚   โ”‚   return self.execute(call, **exec_kwargs)                                          โ”‚
โ”‚   1185 โ”‚                                                                                         โ”‚
โ”‚   1186 โ”‚   def _parse_object_header(self, header_line: str) -> Tuple[str, str, int]:             โ”‚
โ”‚   1187 โ”‚   โ”‚   """                                                                               โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ                               โ”‚
โ”‚ โ”‚                  args = (                                      โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--cached',                        โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--abbrev=40',                     โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--full-index',                    โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--raw',                           โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--ignore-submodules'              โ”‚                               โ”‚
โ”‚ โ”‚                         )                                      โ”‚                               โ”‚
โ”‚ โ”‚             args_list = [                                      โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--cached',                        โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--abbrev=40',                     โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--full-index',                    โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--raw',                           โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--ignore-submodules'              โ”‚                               โ”‚
โ”‚ โ”‚                         ]                                      โ”‚                               โ”‚
โ”‚ โ”‚                  call = [                                      โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   'git',                             โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   'diff',                            โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--cached',                        โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--abbrev=40',                     โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--full-index',                    โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--raw',                           โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--ignore-submodules'              โ”‚                               โ”‚
โ”‚ โ”‚                         ]                                      โ”‚                               โ”‚
โ”‚ โ”‚           exec_kwargs = {}                                     โ”‚                               โ”‚
โ”‚ โ”‚              ext_args = [                                      โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--cached',                        โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--abbrev=40',                     โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--full-index',                    โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--raw',                           โ”‚                               โ”‚
โ”‚ โ”‚                         โ”‚   '--ignore-submodules'              โ”‚                               โ”‚
โ”‚ โ”‚                         ]                                      โ”‚                               โ”‚
โ”‚ โ”‚ insert_after_this_arg = None                                   โ”‚                               โ”‚
โ”‚ โ”‚                kwargs = {}                                     โ”‚                               โ”‚
โ”‚ โ”‚                method = 'diff'                                 โ”‚                               โ”‚
โ”‚ โ”‚              opt_args = []                                     โ”‚                               โ”‚
โ”‚ โ”‚           opts_kwargs = {}                                     โ”‚                               โ”‚
โ”‚ โ”‚                  self = <git.cmd.Git object at 0x7f034cc916e0> โ”‚                               โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ                               โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ /home/gsbuosi/.local/lib/python3.7/site-packages/git/cmd.py:984 in execute                       โ”‚
โ”‚                                                                                                  โ”‚
โ”‚    981 โ”‚   โ”‚   # END handle debug printing                                                       โ”‚
โ”‚    982 โ”‚   โ”‚                                                                                     โ”‚
โ”‚    983 โ”‚   โ”‚   if with_exceptions and status != 0:                                               โ”‚
โ”‚ โฑ  984 โ”‚   โ”‚   โ”‚   raise GitCommandError(redacted_command, status, stderr_value, stdout_value)   โ”‚
โ”‚    985 โ”‚   โ”‚                                                                                     โ”‚
โ”‚    986 โ”‚   โ”‚   if isinstance(stdout_value, bytes) and stdout_as_string:  # could also be output  โ”‚
โ”‚    987 โ”‚   โ”‚   โ”‚   stdout_value = safe_decode(stdout_value)                                      โ”‚
โ”‚                                                                                                  โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚
โ”‚ โ”‚           _kill_process = <function Git.execute.<locals>._kill_process at 0x7f034cc80d40>    โ”‚ โ”‚
โ”‚ โ”‚              as_process = False                                                              โ”‚ โ”‚
โ”‚ โ”‚ cmd_not_found_exception = <class 'FileNotFoundError'>                                        โ”‚ โ”‚
โ”‚ โ”‚                 command = [                                                                  โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'git',                                                         โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'diff',                                                        โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--cached',                                                    โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--abbrev=40',                                                 โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--full-index',                                                โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--raw',                                                       โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--ignore-submodules'                                          โ”‚ โ”‚
โ”‚ โ”‚                           ]                                                                  โ”‚ โ”‚
โ”‚ โ”‚                     cwd = '/opt/Exegol'                                                      โ”‚ โ”‚
โ”‚ โ”‚                     env = {                                                                  โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'XDG_SEAT_PATH': '/org/freedesktop/DisplayManager/Seat0',      โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'XDG_CONFIG_DIRS': '/etc/xdg/xdg-pantheon:/etc/xdg',           โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'PANTHEON_TERMINAL_ID': '3',                                   โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'LANG': 'en_US.UTF-8',                                         โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'DISPLAY': ':0',                                               โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'SHLVL': '1',                                                  โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'LOGNAME': 'gsbuosi',                                          โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'LANGUAGE': 'C',                                               โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'MANDATORY_PATH': '/usr/share/gconf/pantheon.mandatory.path',  โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'XDG_VTNR': '7',                                               โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   ... +53                                                        โ”‚ โ”‚
โ”‚ โ”‚                           }                                                                  โ”‚ โ”‚
โ”‚ โ”‚              inline_env = None                                                               โ”‚ โ”‚
โ”‚ โ”‚                 istream = None                                                               โ”‚ โ”‚
โ”‚ โ”‚              istream_ok = 'None'                                                             โ”‚ โ”‚
โ”‚ โ”‚      kill_after_timeout = None                                                               โ”‚ โ”‚
โ”‚ โ”‚          max_chunk_size = 8192                                                               โ”‚ โ”‚
โ”‚ โ”‚                 newline = b'\n'                                                              โ”‚ โ”‚
โ”‚ โ”‚           output_stream = None                                                               โ”‚ โ”‚
โ”‚ โ”‚                    proc = <subprocess.Popen object at 0x7f034cc29610>                        โ”‚ โ”‚
โ”‚ โ”‚        redacted_command = [                                                                  โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'git',                                                         โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   'diff',                                                        โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--cached',                                                    โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--abbrev=40',                                                 โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--full-index',                                                โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--raw',                                                       โ”‚ โ”‚
โ”‚ โ”‚                           โ”‚   '--ignore-submodules'                                          โ”‚ โ”‚
โ”‚ โ”‚                           ]                                                                  โ”‚ โ”‚
โ”‚ โ”‚                    self = <git.cmd.Git object at 0x7f034cc916e0>                             โ”‚ โ”‚
โ”‚ โ”‚                   shell = None                                                               โ”‚ โ”‚
โ”‚ โ”‚                  status = 129                                                                โ”‚ โ”‚
โ”‚ โ”‚            stderr_value = b'Not a git repository\nTo compare two paths outside a working     โ”‚ โ”‚
โ”‚ โ”‚                           tree:\nusage: git dif'+28                                          โ”‚ โ”‚
โ”‚ โ”‚        stdout_as_string = True                                                               โ”‚ โ”‚
โ”‚ โ”‚             stdout_sink = -1                                                                 โ”‚ โ”‚
โ”‚ โ”‚            stdout_value = b''                                                                โ”‚ โ”‚
โ”‚ โ”‚       subprocess_kwargs = {}                                                                 โ”‚ โ”‚
โ”‚ โ”‚      universal_newlines = False                                                              โ”‚ โ”‚
โ”‚ โ”‚         with_exceptions = True                                                               โ”‚ โ”‚
โ”‚ โ”‚    with_extended_output = False                                                              โ”‚ โ”‚
โ”‚ โ”‚             with_stdout = True                                                               โ”‚ โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
GitCommandError: Cmd('git') failed due to: exit code(129)
  cmdline: git diff --cached --abbrev=40 --full-index --raw --ignore-submodules
  stderr: 'Not a git repository
To compare two paths outside a working tree:
usage: git diff [--no-index] <path> <path>'
โžœ  Exegol 

Share timezone

On arch by default the file /etc/timezone doesn't exist. I would except to have the container mounting /etc/localtime instead, however I get the following error :

[V] Config: Enabling host timezones
[-] Unable to create the volume folder on the filesystem locally.
[!] Insufficient permissions to create the folder: /etc/timezone 

Having a try/catch would be sufficient I supposed to fix this problem.
exegol/model/ContainerConfig.py line 269 currently look like following

if not self.__share_timezone:
    self.__share_timezone = True
    logger.verbose("Config: Enabling host timezones")
    self.addVolume("/etc/timezone", "/etc/timezone", read_only=True)
    self.addVolume("/etc/localtime", "/etc/localtime", read_only=True)

Can't reach github API

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ Traceback (most recent call last) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚                                                                              โ”‚
โ”‚ /Users/mac/Exegol/exegol/manager/ExegolController.py:35 in main              โ”‚
โ”‚                                                                              โ”‚
โ”‚   32 โ”‚   โ”‚   # Set logger verbosity depending on user input                  โ”‚
โ”‚   33 โ”‚   โ”‚   ExeLog.setVerbosity(ParametersManager().verbosity, ParametersMa โ”‚
โ”‚   34 โ”‚   โ”‚   # Start Main controller & Executing action selected by user CLI โ”‚
โ”‚ โฑ 35 โ”‚   โ”‚   ExegolController.call_action()                                  โ”‚
โ”‚   36 โ”‚   except KeyboardInterrupt:                                           โ”‚
โ”‚   37 โ”‚   โ”‚   logger.empty_line()                                             โ”‚
โ”‚   38 โ”‚   โ”‚   logger.info("Exiting")                                          โ”‚
โ”‚ /Users/mac/Exegol/exegol/manager/ExegolController.py:23 in call_action       โ”‚
โ”‚                                                                              โ”‚
โ”‚   20 โ”‚   โ”‚   โ”‚   # Fetch main operation function                             โ”‚
โ”‚   21 โ”‚   โ”‚   โ”‚   main_action = cls.__action()                                โ”‚
โ”‚   22 โ”‚   โ”‚   โ”‚   # Execute main function                                     โ”‚
โ”‚ โฑ 23 โ”‚   โ”‚   โ”‚   main_action()                                               โ”‚
โ”‚   24 โ”‚   โ”‚   else:                                                           โ”‚
โ”‚   25 โ”‚   โ”‚   โ”‚   # TODO review required parameters                           โ”‚
โ”‚   26 โ”‚   โ”‚   โ”‚   logger.error(f"These parameters are mandatory but missing:  โ”‚
โ”‚                                                                              โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚
โ”‚ โ”‚            cls = <class                                                  โ”‚ โ”‚
โ”‚ โ”‚                  'exegol.manager.ExegolController.ExegolController'>     โ”‚ โ”‚
โ”‚ โ”‚    main_action = <bound method ExegolManager.install of <class           โ”‚ โ”‚
โ”‚ โ”‚                  'exegol.manager.ExegolManager.ExegolManager'>>          โ”‚ โ”‚
โ”‚ โ”‚ missing_params = []                                                      โ”‚ โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚
โ”‚                                                                              โ”‚
โ”‚ /Users/mac/Exegol/exegol/manager/ExegolManager.py:110 in install             โ”‚
โ”‚                                                                              โ”‚
โ”‚   107 โ”‚   @classmethod                                                       โ”‚
โ”‚   108 โ”‚   def install(cls):                                                  โ”‚
โ”‚   109 โ”‚   โ”‚   """Pull or build a docker exegol image"""                      โ”‚
โ”‚ โฑ 110 โ”‚   โ”‚   ExegolManager.print_version()                                  โ”‚
โ”‚   111 โ”‚   โ”‚   try:                                                           โ”‚
โ”‚   112 โ”‚   โ”‚   โ”‚   if not ExegolModules().isExegolResourcesReady():           โ”‚
โ”‚   113 โ”‚   โ”‚   โ”‚   โ”‚   raise CancelOperation                                  โ”‚
โ”‚                                                                              โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ               โ”‚
โ”‚ โ”‚ cls = <class 'exegol.manager.ExegolManager.ExegolManager'> โ”‚               โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ               โ”‚
โ”‚                                                                              โ”‚
โ”‚ /Users/mac/Exegol/exegol/manager/ExegolManager.py:188 in print_version       โ”‚
โ”‚                                                                              โ”‚
โ”‚   185 โ”‚   โ”‚   logger.debug(f"Docker desktop: {boolFormatter(EnvInfo.isDocker โ”‚
โ”‚   186 โ”‚   โ”‚   logger.debug(f"Shell type: {EnvInfo.getShellType()}")          โ”‚
โ”‚   187 โ”‚   โ”‚   if not UpdateManager.isUpdateTag() and UserConfig().auto_check โ”‚
โ”‚ โฑ 188 โ”‚   โ”‚   โ”‚   UpdateManager.checkForWrapperUpdate()                      โ”‚
โ”‚   189 โ”‚   โ”‚   if UpdateManager.isUpdateTag():                                โ”‚
โ”‚   190 โ”‚   โ”‚   โ”‚   logger.empty_line()                                        โ”‚
โ”‚   191 โ”‚   โ”‚   โ”‚   if Confirm("An [green]Exegol[/green] update is [orange3]av โ”‚
โ”‚                                                                              โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ               โ”‚
โ”‚ โ”‚ cls = <class 'exegol.manager.ExegolManager.ExegolManager'> โ”‚               โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ               โ”‚
โ”‚                                                                              โ”‚
โ”‚ /Users/mac/Exegol/exegol/manager/UpdateManager.py:173 in                     โ”‚
โ”‚ checkForWrapperUpdate                                                        โ”‚
โ”‚                                                                              โ”‚
โ”‚   170 โ”‚   โ”‚   # Skipping update check                                        โ”‚
โ”‚   171 โ”‚   โ”‚   if cls.__triggerUpdateCheck():                                 โ”‚
โ”‚   172 โ”‚   โ”‚   โ”‚   logger.debug("Running update check")                       โ”‚
โ”‚ โฑ 173 โ”‚   โ”‚   โ”‚   return cls.__checkUpdate()                                 โ”‚
โ”‚   174 โ”‚   โ”‚   return False                                                   โ”‚
โ”‚   175 โ”‚                                                                      โ”‚
โ”‚   176 โ”‚   @classmethod                                                       โ”‚
โ”‚                                                                              โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ               โ”‚
โ”‚ โ”‚ cls = <class 'exegol.manager.UpdateManager.UpdateManager'> โ”‚               โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ               โ”‚
โ”‚                                                                              โ”‚
โ”‚ /Users/mac/Exegol/exegol/manager/UpdateManager.py:212 in __checkUpdate       โ”‚
โ”‚                                                                              โ”‚
โ”‚   209 โ”‚   โ”‚   โ”‚   โ”‚   logger.debug("Checking update using: stable mode")     โ”‚
โ”‚   210 โ”‚   โ”‚   โ”‚   โ”‚   try:                                                   โ”‚
โ”‚   211 โ”‚   โ”‚   โ”‚   โ”‚   โ”‚   remote_version = WebUtils.getLatestWrapperRelease( โ”‚
โ”‚ โฑ 212 โ”‚   โ”‚   โ”‚   โ”‚   โ”‚   isUpToDate = cls.__compareVersion(remote_version)  โ”‚
โ”‚   213 โ”‚   โ”‚   โ”‚   โ”‚   except CancelOperation:                                โ”‚
โ”‚   214 โ”‚   โ”‚   โ”‚   โ”‚   โ”‚   # No internet, postpone update check               โ”‚
โ”‚   215 โ”‚   โ”‚   โ”‚   โ”‚   โ”‚   pass                                               โ”‚
โ”‚                                                                              โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ    โ”‚
โ”‚ โ”‚            cls = <class 'exegol.manager.UpdateManager.UpdateManager'> โ”‚    โ”‚
โ”‚ โ”‚     isUpToDate = True                                                 โ”‚    โ”‚
โ”‚ โ”‚ remote_version = None                                                 โ”‚    โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ    โ”‚
โ”‚                                                                              โ”‚
โ”‚ /Users/mac/Exegol/exegol/manager/UpdateManager.py:231 in __compareVersion    โ”‚
โ”‚                                                                              โ”‚
โ”‚   228 โ”‚   def __compareVersion(cls, version) -> bool:                        โ”‚
โ”‚   229 โ”‚   โ”‚   isUpToDate = True                                              โ”‚
โ”‚   230 โ”‚   โ”‚   try:                                                           โ”‚
โ”‚ โฑ 231 โ”‚   โ”‚   โ”‚   for i in range(len(version.split('.'))):                   โ”‚
โ”‚   232 โ”‚   โ”‚   โ”‚   โ”‚   remote = int(version.split('.')[i])                    โ”‚
โ”‚   233 โ”‚   โ”‚   โ”‚   โ”‚   local = int(ConstantConfig.version.split('.')[i])      โ”‚
โ”‚   234 โ”‚   โ”‚   โ”‚   โ”‚   if remote > local:                                     โ”‚
โ”‚                                                                              โ”‚
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ locals โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ        โ”‚
โ”‚ โ”‚        cls = <class 'exegol.manager.UpdateManager.UpdateManager'> โ”‚        โ”‚
โ”‚ โ”‚ isUpToDate = True                                                 โ”‚        โ”‚
โ”‚ โ”‚    version = None                                                 โ”‚        โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ        โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
AttributeError: 'NoneType' object has no attribute 'split'```

THPB2 THPB3 Tools

Hi @ShutdownRepo

I'm impressed by the project, it have a lot of preinstalled tools that could be very useful for somebody that wants a pentesting enviroment just building a Docker image.

I was thinking on the books The Hacker Playbook 2 and 3, because on the introduction includes a good list for tools related on some diferent hacking topics. (some maybe are old, but some others maybe are useful).

Probably some of the tools are already included on the image, but maybe others no.

Do you think that maybe it's interesting on adding it, or you want to keep a more light image to reduce the overhead on download it?

If you are interested I can look for wich tools are no included and add it on another function like install_thpb_tools, for example.

Give me your opinion, please.

Regards!

Fails to install on Windows (issue from docker-py)

Specs

image

  • Docker Version: 4.10.1 (82475)
  • Python Version: 3.10.5 (also tried on versions 3.10.0, 3.5.0, 3.6.8, 3.6.0 and 3.3.0)
  • Exegol Version: latest (pulled from the repository)
  • No WSL (it is installed but I am trying to make this work without it for now)

(let me know if you need any more information about my system)

Bug

Exegol fails to install on my Windows machine due to a dependency issue, both when installing via pip and when installing directly from this repository:

PS C:\Users\toxic\Documents\Tools> python -m pip install -r .\Exegol\requirements.txt
Collecting docker~=5.0.3
  Using cached docker-5.0.3-py2.py3-none-any.whl (146 kB)
Collecting requests>=2.26.0
  Using cached requests-2.28.1-py3-none-any.whl (62 kB)
Collecting rich~=11.2.0
  Using cached rich-11.2.0-py3-none-any.whl (217 kB)
Collecting GitPython~=3.1.26
  Using cached GitPython-3.1.27-py3-none-any.whl (181 kB)
Collecting PyYAML>=6.0
  Using cached PyYAML-6.0-cp310-cp310-win_amd64.whl (151 kB)
Collecting websocket-client>=0.32.0
  Using cached websocket_client-1.3.3-py3-none-any.whl (54 kB)
ERROR: Could not find a version that satisfies the requirement pywin32==227; sys_platform == "win32" (from docker) (from versions: 302, 303, 304)
ERROR: No matching distribution found for pywin32==227; sys_platform == "win32"

Looking at the log when trying to install packages directly, it's the docker~=5.0.3 package which is the cause since the updated version of the docker package uses the newer pypiwin32 package instead of the older deprecated pywin32 (thread for reference -> https://stackoverflow.com/questions/40981120/python-pip-cannot-find-pywin32-on-windows)

PS C:\Users\toxic\Documents\Tools> python -m pip install docker
Collecting docker
  Using cached docker-5.0.3-py2.py3-none-any.whl (146 kB)
  Using cached docker-5.0.2-py2.py3-none-any.whl (145 kB)
  Using cached docker-5.0.1-py2.py3-none-any.whl (145 kB)
  Using cached docker-5.0.0-py2.py3-none-any.whl (146 kB)
  Using cached docker-4.4.4-py2.py3-none-any.whl (147 kB)
  Using cached docker-4.4.3-py2.py3-none-any.whl (146 kB)
  Using cached docker-4.4.2-py2.py3-none-any.whl (146 kB)
  Using cached docker-4.4.1-py2.py3-none-any.whl (146 kB)
  Using cached docker-4.4.0-py2.py3-none-any.whl (146 kB)
  Using cached docker-4.3.1-py2.py3-none-any.whl (145 kB)
  Using cached docker-4.3.0-py2.py3-none-any.whl (145 kB)
  Using cached docker-4.2.2-py2.py3-none-any.whl (144 kB)
Collecting six>=1.4.0
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting pypiwin32==223
  Using cached pypiwin32-223-py3-none-any.whl (1.7 kB)
Requirement already satisfied: requests!=2.18.0,>=2.14.2 in c:\users\toxic\.pyenv\pyenv-win\versions\3.10.5\lib\site-packages (from docker) (2.28.1)
Collecting websocket-client>=0.32.0
  Using cached websocket_client-1.3.3-py3-none-any.whl (54 kB)
Collecting pywin32>=223
  Using cached pywin32-304-cp310-cp310-win_amd64.whl (12.1 MB)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\users\toxic\.pyenv\pyenv-win\versions\3.10.5\lib\site-packages (from requests!=2.18.0,>=2.14.2->docker) (1.26.10)
Requirement already satisfied: certifi>=2017.4.17 in c:\users\toxic\.pyenv\pyenv-win\versions\3.10.5\lib\site-packages (from requests!=2.18.0,>=2.14.2->docker) (2022.6.15)
Requirement already satisfied: charset-normalizer<3,>=2 in c:\users\toxic\.pyenv\pyenv-win\versions\3.10.5\lib\site-packages (from requests!=2.18.0,>=2.14.2->docker) (2.1.0)
Requirement already satisfied: idna<4,>=2.5 in c:\users\toxic\.pyenv\pyenv-win\versions\3.10.5\lib\site-packages (from requests!=2.18.0,>=2.14.2->docker) (3.3)
Installing collected packages: pywin32, websocket-client, six, pypiwin32, docker
Successfully installed docker-4.2.2 pypiwin32-223 pywin32-304 six-1.16.0 websocket-client-1.3.3

PS C:\Users\toxic\Documents\Tools> python -m pip install docker~=5.0.3
Collecting docker~=5.0.3
  Using cached docker-5.0.3-py2.py3-none-any.whl (146 kB)
Requirement already satisfied: websocket-client>=0.32.0 in c:\users\toxic\.pyenv\pyenv-win\versions\3.10.5\lib\site-packages (from docker~=5.0.3) (1.3.3)
ERROR: Could not find a version that satisfies the requirement pywin32==227; sys_platform == "win32" (from docker) (from versions: 302, 303, 304)
ERROR: No matching distribution found for pywin32==227; sys_platform == "win32"

Failed Fixes

  • Tried other python versions (I'm not sure which version of python3 is the one we're supposed to use on Windows)
  • Cleared pip cache + reinstalled python
  • Install packages directly

Could you possibly look into upgrading the docker version used by Exegol so this may work on Windows in the future?

Error When creating container

Hello, I have en error when I create a container.

[*] Creating new exegol container
[-] OCI runtime create failed: container_linux.go:380: starting container process caused: process_linux.go:545: container init caused:
rootfs_linux.go:76: mounting "/host_mnt/private/etc/timezone" to rootfs at "/etc/timezone" caused: mount through procfd: not a directory:
unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
[!] Error while creating exegol container. Exiting.

I'm on MacBook Pro M1.

[HELP] How to get X11 forwarding with Wayland and Xwayland ?

Hi !

I'm trying to use Exegol for a school security project including some challenges with the need for a browser.

I don't know if the problem comes from me using Wayland, I have Xwayland installed and configured or from Exegol because it's connected to a VPN and isn't in host network mode.

The environment variable DISPLAY is set to :0 so I guess Exegol is presuming the container runs in host network mode ?

Add a custom start command and a background option

The needs

Hi France,

How could i start a container with the ssh server already running? ==> need a custom option for add command at start
How could i run a container without interaction ? (no & pls) ==> --restart unless-stopped

TY

Description

Hi France,

How could i start a container with the ssh server already running? ==> need a custom option for add command at start
How could i run a container without interaction ? (no & pls) ==> --restart unless-stopped

TY

Alternatives

No response

Additional context

No response

No such file or directory: 'cmd.exe' on Windows

Good morning friends, currently I have a problem to run exegol, I made the installation of docker on windows meditante wsl2, all good in the installation, I can run exegol, but when using functions such as info, start, install, etc, I get an error called FileNotFoundError: [Errno 2] No such file or directory: 'cmd.exe', I appreciate your help.

image

image

image

image

Container is not running

Hi, i'm trying to install exegol but when i try to launch a session it tells me that the container is not running. I don't know what to do.

[*] Exegol is currently in version v4.0.5
[D] Pip installation: On โœ”                                                                                                                                                                                         
[D] Git source installation: Off ๐Ÿช“                                                                                                                                                                                
[D] Host OS: Linux                                                                                                                                                                                                 
[D] Arch: aarch64                                                                                                                                                                                                  
[D] Docker desktop: Off ๐Ÿช“                                                                                                                                                                                         
[D] Shell type: Linux                                                                                                                                                                                              
[D] Last update check: 24/10/2022                                                                                                                                                                                  

[+] Exegol thanks Capgemini for supporting the project (dev contributors) ๐Ÿ™                                                                                                                                       
[+] Interested in joining Capgemini? https://www.capgemini.com/fr-fr/carrieres/offres-emploi/                                                                                                                      
[*] Starting exegol                                                                                                                                                                                                
[*] Arguments supplied with the command, skipping interactive mode                                                                                                                                                 
[D] Attribute not found in parameters: multicontainertag                                                                                                                                                           
[D] == Loading container : exegol-cours                                                                                                                                                                            
[D] Parsing envs : DISPLAY=:0                                                                                                                                                                                      
[D] Adding env DISPLAY=:0                                                                                                                                                                                          
[D] Parsing envs : _JAVA_AWT_WM_NONREPARENTING=1                                                                                                                                                                   
[D] Adding env _JAVA_AWT_WM_NONREPARENTING=1                                                                                                                                                                       
[D] Parsing envs : QT_X11_NO_MITSHM=1                                                                                                                                                                              
[D] Adding env QT_X11_NO_MITSHM=1                                                                                                                                                                                  
[D] Parsing envs : PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin                                                                                                                               
[D] Adding env PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin                                                                                                                                   
[D] Capabilities : []                                                                                                                                                                                              
[D] Load devices : []                                                                                                                                                                                              
[D] Parsing mount : {'Type': 'bind', 'Source': '/home/ubuntu/.exegol/workspaces/cours', 'Destination': '/workspace', 'Mode': '', 'RW': True, 'Propagation': 'rprivate'}                                            
[D] Loading workspace volume source : /home/ubuntu/.exegol/workspaces/cours                                                                                                                                        
[D] Private workspace detected                                                                                                                                                                                     
[D] Parsing mount : {'Type': 'bind', 'Source': '/tmp/.X11-unix', 'Destination': '/tmp/.X11-unix', 'Mode': '', 'RW': True, 'Propagation': 'rprivate'}                                                               
[D] Parsing mount : {'Type': 'bind', 'Source': '/etc/timezone', 'Destination': '/etc/timezone', 'Mode': '', 'RW': False, 'Propagation': 'rprivate'}                                                                
[D] Parsing mount : {'Type': 'bind', 'Source': '/etc/localtime', 'Destination': '/etc/localtime', 'Mode': '', 'RW': False, 'Propagation': 'rprivate'}                                                              
[D] Parsing mount : {'Type': 'bind', 'Source': '/home/ubuntu/.exegol/my-resources', 'Destination': '/my-resources', 'Mode': '', 'RW': True, 'Propagation': 'rprivate'}                                             
[D] Parsing mount : {'Type': 'bind', 'Source': '/home/ubuntu/.exegol/exegol-resources', 'Destination': '/opt/resources', 'Mode': '', 'RW': True, 'Propagation': 'rprivate'}                                        
[D] Try to retrieve image version from labels                                                                                                                                                                      
[D] โ””โ”€โ”€ nightly โ†’ (remote) sha256:26309b5f992aa96c1be310ef492f9a5b5f953a1ee549437212713ee42327a12b                                                                                                                 
[*] Starting container cours                                                                                                                                                                                       
[D] Adding xhost ACL to local:exegol-cours                                                                                                                                                                         
[*] Location of the exegol workspace on the host : /home/ubuntu/.exegol/workspaces/cours                                                                                                                           
[+] Opening shell in Exegol 'cours'                                                                                                                                                                                
[D] Opening shell with: docker exec -ti 8c588cd520783f21f0725d85ff018c159444e9035c3d24b5cc7abff1d96e5f99 zsh                                                                                                       
Error response from daemon: Container 8c588cd520783f21f0725d85ff018c159444e9035c3d24b5cc7abff1d96e5f99 is not running

Manque le package python 'censys'

PREREQUIS

Installation fraiche de Exegole Stable

CONTEXTE

Utilisation impossible de l'outil theHarvester

ANOMALIE

Lors de l'utilisation du programme theHarvester,

theHarvester -d <DOMAIN> -b all

alors l'erreur suivante apparait

[!] Missing API key for Securitytrail. 
No module named 'censys'
sys:1: RuntimeWarning: coroutine 'start.<locals>.store' was never awaited
RuntimeWarning: Enable tracemalloc to get the object allocation traceback

SOLUTION

L'installation du package censys rรฉsoud le problรจme

python3 -m pip install censys

Bloodhound not working

Hello,
Before complaining xD thanks for the awesome work!!!
I cant run bloodhound with exegol start -e bloodhound or even directly in the docker or the daemon it seems it isnt installed anymore in /opt
My choice was the AD docker image so it must be here, neo4j work but when i type bloodhound i have zsh: no such file or directory: /opt/tools/BloodHound4/BloodHound-linux-x64/BloodHound

Nothing i cant resolve but let you know because it seems to not be "normal".

Exegol is awesome!!!

Sudo / Python long start

Hello,

I think I found a bug in the Docker image, I'm not sure but Python scripts that requires sudo take a long time to run, for example the brute force utility patator or the Python 3 module http.server used to spawn a fast web server.

I think the root cause is that sudo try to resolve the machine hostname (no idea why), here is a screen when I run sudo in Exegol (which is useless since we are root):
image

However If I add the hostname of my container in the /etc/hosts file:
image

All 'long' command, become instantaneous, I have no idea why patator works better with this, since it doesn't have any links with sudo, same for http.server (except if you use port below 1024 ofc). I'm sorry if you don't encounter the same bug as me, or if this bug is fixed already (I got the last version of Exegol 4.0.2), anyway the potential fix would be the add the hostname during the build of the container, here is a post talking about this: https://stackoverflow.com/questions/38302867/how-to-update-etc-hosts-file-in-docker-image-during-docker-build, a possible solution would be to use the --add-host arguments during build, but I never tested it, I could potentially try to work on the problem if other people have the same issue as me.

(Now that I think about it, this issue is maybe more related to Exegol itself, tell me what you think)

Anyway thank you for Exegol.

Support for dotfiles

Hi,

I am new to Exegol and would love to get familiar with it enough to use it on my engagements.

One thing I'd like to know though: is there no way to add dotfiles to the container ? And if not, could this be a feature to consider ? I'd be happy to help implementing it. Here are two use cases I could think of:

  • Adding generic stuff in custom dotfiles (aliases, program options...)
  • I can't think of another way to persist gdb-peda in my conf, since it requires some configuration in .gdbinit file

Thanks anyways for such a great tool !

Cheers

Add wfuzz commands

Hi Shutdown!
Some wfuzz commands that may be useful to add in the zsh history ๐Ÿ˜„:

wfuzz -z file,/usr/share/seclists/Discovery/DNS/subdomains-top1million-110000.txt -H "Host: FUZZ.<host>" http://<ip/host>/ 

wfuzz --hc 403,404 -z file,/usr/share/seclists/Discovery/Web-Content/big.txt -z file,/usr/share/seclists/Discovery/Web-Content/web-extensions.txt http://<host/ip>/FUZZFUZ2Z

See ya

BloodHound GUI fails

I noticed BloodHound GUI has problems from time to time. The application windows pops and stays white. I can't even log in the neo4j database. Only white. I need to fix this.

Note that other graphical windows don't have issues when this happens.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.