summary refs log blame commit diff
path: root/pkgs/servers/home-assistant/component-packages.nix
blob: d13c5be5c1d3fc05089f9a2a434c796e066a5286 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                    


              
                       
                
                                       
                                                 
                                                 
                                         
                                   
                                              
                                             
                                   
                                                     
                                              
                                               
                                            
                                     
                                     
                                         
                                                   
                                                  
                                               
                                                         
                                             
                                            
                               
                                                        
                                                      
                                                     
                                            
                                     
                                                     
                                                              
                                                    
                                                   
                                     
                                                           
                                                         
                                                                       

                                                                                   
                                               
                                           
                                          
                                                      
                                                                     
                                         
                                            
                                             
                                                                  
                                             
                               
                                               
                                                                         

                                                     
                                                  

                                                     
                                            
                                     
                                         
                                       
                                       
                                           
                                                      
                                                     

                                                 
                                   
                                     
                                            
                                         
                                                          
                                                     
                                                        
                                                            
                                                           
                                         



                                                                           
                                                    
                                       
                                            
                                             
                                               
                                              
                                       
                                                    


                                                                            
                                   
                                             
                                                     
                                                                
                                                              
                                                  
                                                                                         
                                                              
                                       
                                                                           


                                             
                                                             

                                                       
                                       

                                                                               
                                               
                                

                                               
                                                         
                                                    
                                                                                                                                         
                                     
                                             
                                                 
                                           
                                                                     
                                                         




                                                                               
                                               
                                 
                                                                      
                                            
                                                       
                                             
                                                             
                                                    
                                              
                                                     
                                      
                                            
                                                                 
                                             
                                      
                                             
                                                   
                                                          
                                                 


                                                                    
                                             
                                                                                                                 
                                     
                                       
                                         
                                                  

                                                   
                               
                                         
                                         
                                                                
                                                                   
                                                                                                                                                                                                          
                                         
                                              
                                                      
                               
                                           
                                    
                                               
                                           
                                                                      
                                        
                                                                                                  
                                                            
                                         
                                                
                                                                                   
                                                  

                                                     
                                                                   
                                         
                                                
                                           
                                                                         

                                                             
                                                        
                                                                                 

                                                                        
                                              
                                                          

                                                         
                                          
                                                            


                                              
                                        
                                                        
                                                        
                                                   
                                      

                                                         
                                                 
                                                  
                                         
                                                         
                                                                                       
                                         
                                     
                                         
                                               
                                             
                                       
                                               
                                         
                                         
                                   
                                     

                                         
                                              
                                                          
                                                    

                                                                         
                                             
                                         
                                                    
                                                            
                                                       
                                                                            
                                                 
                                             
                                               
                                                                       
                                                                             
                                                                            

                                                                          
                                                 
                                                       
                                               
                                                 
                                              





                                                                             
                                               


                                                 
                                              
                                     

                                  
                                           
                                     
                                                           
                                                
                                                    
                                       
                                                 
                                           
                                         
                                     
                                                
                                         
                                    
                               
                                       
                                                 
                              
                                                               
                                
                                                 
                                             
                                                       
                                                                                        
                                            
                                            
                                                 
                                                               
                                             
                                 
                                                 
                                                                             

                                                              
                                           
                                                                                         
                                                 
                                          
                                  
                                                             
                                                              
                                                
                                 
                                           
                                                       
                                                    
                                                        
                                      
                                                              
                                               

                                                                       
                                   
                                             
                                                 
                                                           
                                             
                                   
                                                           
                                           
                                              
                                       
                                                                               
                                                                   
                                                                
                                        
                                                        
                                                           
                                               
                                                       
                                     
                                   
                                                
                                  
                                          


                                                                             
                                                      
                                                                      
                                     
                                              
                                           
                                          
                                                                   
                                            
                                                                                       

                                        
                                        
                                                                 
                                     
                                                 
                                                           
                                                
                                                   
                                                         
                                                  
                                     
                                        
                                           
                                                               
                                                                        
                                       
                                                                                                                       
                                                                                    
                                               
                                                       
                                                
                                               
                                               
                                                            
                                             

                                                      
                                                    
                                                                            
                                    
                                                      
                                    
                                                          
                                              
                                              
                                              
                                         
                                                             
                                             
                                         
                                                                
                                                   
                                                     
                                                                     
                                                                 
                                                   
                                                                   
                                         
                                            
                                                    
                                                           
                                       
                                      



                                        
                                           
                                     
                                                    
                                             
                                       
                                                   
                                                          
                                             
                                                         
                                     
                                   
                                             
                                                                            
                                                                      
                                                     
                                      

                                                              
                                            
                                                            
                                               
                                                                         
                                                  


                                                                          
                                                     
                                           
                                                                
                                                         
                                     
                                                              
                                             
                                  
                                     
                                                          
                                                                               
                                                     
                                             
                                                     
                                             
                                           
                                    
                                       
                                                   
                                   
                                                
                                              
                                         
                                                      
                                    
                               
                                             
                                                   
                                       

                                               

                                                             
                                                 

                                           
                                                      
                                               
                              
                                                                                        

                                    
                                                                                          

                                                                                 
                                          
                                  

                                               
                                        
                                         
                                                       
                                                         
                                                     
                                                                     

                                                                             
                                
                                                            
                                                                                    
                                                              
                                              
                                              
                                             
                                       
                                                                                             

                                                                       
                                                   
                                               
                                             
                                                                      
                                             
                                                                    
                                     
                                                  
                                                                        
                                                  
                                                       

                                                               
                                        
                                                                   


                                                                          
                                                                  
                                              
                                                    
                                 
                                                                 
                                     

                                                               
                                                                                               
                                                           
                                         
                                                                                 
                                                     


                                                                 
                                                                        
                                                                 
                               





                                                                 
                                           
                                             
                                           
                                           
                                                                                   
                                                              
                                   
                                                                      
                                                             
                                                
                                          
                                                 
                                                 
                                              
                                                     
                                                      
                                               
                                                                                 
                                                                               
                                         
                                           
                                                  
                                                                      
                                                     
                                                                
                                     
                                                                  
                                                    
                                                                                
                                                  
                                                             
                                         
                                     
                                                 
                                                                                                            

                                                       
                                                                 
                                            
                                
                                                                       
                                          
                                                                                
                                                                                   
                                                         
                                     
                                                              
                                
                                    
                                   
                                       

                                                                          
                                         
                                                  
                                           
                                               
                                     
                                             
                                                                                           
                                        
                                                        
                                                 
                                           
                                                                      
                                               

                                        
                                                                               
                                             
                                               
                                           
                                                
                                             
                                                 
                                                       
                                 
                                             
                                         
                                              
                                             


                                                                  
                                       
                                                                  
                                   
                                           
                                              
                                                                                           
                                                                          
                                              
                                                    
                                                                           
                                         

                                                                                             


                                                               
                                                    
                                                 
                                                                       
                                      
                                                  


                                                           
                                      

                                                            
                                                                                
                                          
                                                                          
                                           
                                                                      
                                                                   
                                                    
                                             
                                                                     
                                                                  
                                                                     
                                                               
                                                                   
                                             

                                   
                                             
                                      
                                                               



                                                      
                                   
                                      
                                                     
                                
                                                        
                                                                          
                                                                       
                                                          
                                                                
                                                         
                                          
                                                                   
                                                                                
                                
                                               

                                                                
                                                          
                                                   
                                
                                                                          
                                                                    
                                     
                                                      
                                             
                                                                 
                                     
                                                            
                                                                             

                                                                    
                                             
                                                                 
                                                 
                                      
                                       
                                         
                                            
                                                      
                                                                    
                                       
                                                         
                                                     
                                                                     
                                      
                                         
                                      
                                       




                                                                                 
                                                 
                                                                  
                                                        
                                  
                                                                                
                                                   

                                                                     
                                                                                                   
                                                                                                                    
                                                     
                                                                           

                                                                       
                                                                
                                                                  
                                                   

                                                           

                                             
                                
                                           
                                            
                                                              
                                            
                                                             
                                           

                                                 
                                            
                                                            
                                               
                                                  
                                           
                                       
                                          


                                                    
                                                                              
                                        
                                
                                                       
                                                             
                                                                 
                                                      

                                                             
                               
                                                                     
                                           
                                          
                                           
                                           
                                         
                                                             
                                   
                                                        
                                                             
                                           
                                                                                                     
                                                  
                                                           
                                       
                                          
                              


                                                      
                                                                      
                                                        
                                                                           
                                             
                                     
                                     
                                                  
                                                           
                                       
                                                
                                                                                                                          
                                               
                                                                               
                                               
                                        
                                                       
                                         
                                                              

                                                      
                                                 
                                              
                                                                             
                                           
                                                                     


                                               
                                                                 
                                                                                 
                                                                                   
                                                                 
                                                            
                                                         
                                          
                                           


                                                             
                                                              
                                            
                                                                
                                                                          

                                  
                                               
                                                  
                                                                   
                                                
                                                           
                                       
                                                         
                                                                     
                                
                                                                                 
                                                    
                                    
                                              
                                          
                             
                                             
                                                                     
                                                     
                                                           
                                                                  
                                             
                             
                                           

                                                                               
                                                 



                                                                              
                                                                                                             
                                                                   
                                                         
                                                                                          




                                                                             
                                                    
                                                           
                                     

                                   
                                 
                             
                                         
                                                                 
                                      
                                
                                                                             
                                             
                                                           
                                                                 
                                                                
                                                                   
                                                                   
                               
                                              
                                           

                                                                    
                                                      
                                                      
                                                             

                                                  
                                                        
                                                   


                                                         
                                      
                                                     
                                            
                                               

                                        

                                              
                                           
                                                                                                    
                                   
                                     
                                                 
                                             
                                 
                                                                             
                                
                                                   
                                                          
                                                             
                                                              
                                                
                                       


                                                                       
                                                                        
                                     
                                                   
                                     
                                        
                                                 
                                             
                                         
                                      
                                         
                                                
                                              
                                       
                                        
                                           
                                  
                                                   
                                           
                                                 
                                     
                                                               
                                               
                                         
                                        
                                      
                                                   
                                                              
                                               
                                              
                                                              
                                 
                                              
                                                       
                                                    
                                     
                                                         
                                     
                                     
                                           
                                                                     
                                                                              
                                   
                                                                  
                                          



                                        
                             
                                                            
                                                       
                                           
                                       
                                          
                                                                                            
                                                                   
                                          
                                      
                                                              
                                                               
                                    
                                                                                                      
                                                   
                                   
                                                                                          
                                                                               
                                             
                                             
                                          

                                                         
                                                               
                                           
                                             
                                                                                                                                                                   
                                                                      
                                                                               
                                
                              
                                          
                                                                
                                                                                      
    




                                                                                 
          



























                         
                     



             
                         
                      

































                          
               











                     
              
















                              
                 



                
           




                       
              





            
           


























                        
          































                          
            


               
            































                        
                



















                             
                  





                    
                 





















                          
                    






























































                             
             


                
          





                                 
         




                
           
                
             
           
                








                         
             























                             
              



























                           
                    









                      
             









                    
                      















                       
           



















                     
              













































                                 
             



































                           
             


                   
           
























                      
 
# Generated by parse-requirements.py
# Do not edit!

{
  version = "2022.2.9";
  components = {
    "abode" = ps: with ps; [ abodepy ];
    "accuweather" = ps: with ps; [ accuweather ];
    "acer_projector" = ps: with ps; [ pyserial ];
    "acmeda" = ps: with ps; [ aiopulse ];
    "actiontec" = ps: with ps; [ ];
    "adax" = ps: with ps; [ adax-local adax ];
    "adguard" = ps: with ps; [ adguardhome ];
    "ads" = ps: with ps; [ pyads ];
    "advantage_air" = ps: with ps; [ advantage-air ];
    "aemet" = ps: with ps; [ aemet-opendata ];
    "aftership" = ps: with ps; [ pyaftership ];
    "agent_dvr" = ps: with ps; [ agent-py ];
    "air_quality" = ps: with ps; [ ];
    "airly" = ps: with ps; [ airly ];
    "airnow" = ps: with ps; [ pyairnow ];
    "airthings" = ps: with ps; [ airthings-cloud ];
    "airtouch4" = ps: with ps; [ airtouch4pyapi ];
    "airvisual" = ps: with ps; [ pyairvisual ];
    "aladdin_connect" = ps: with ps; [ aladdin-connect ];
    "alarm_control_panel" = ps: with ps; [ ];
    "alarmdecoder" = ps: with ps; [ adext ];
    "alert" = ps: with ps; [ ];
    "alexa" = ps: with ps; [ pyturbojpeg aiohttp-cors ];
    "almond" = ps: with ps; [ aiohttp-cors pyalmond ];
    "alpha_vantage" = ps: with ps; [ alpha-vantage ];
    "amazon_polly" = ps: with ps; [ boto3 ];
    "ambee" = ps: with ps; [ ambee ];
    "amberelectric" = ps: with ps; [ amberelectric ];
    "ambiclimate" = ps: with ps; [ aiohttp-cors ambiclimate ];
    "ambient_station" = ps: with ps; [ aioambient ];
    "amcrest" = ps: with ps; [ amcrest ha-ffmpeg ];
    "ampio" = ps: with ps; [ asmog ];
    "analytics" = ps: with ps; [ aiohttp-cors sqlalchemy ];
    "android_ip_webcam" = ps: with ps; [ pydroid-ipcam ];
    "androidtv" = ps: with ps; [ adb-shell androidtv pure-python-adb ];
    "anel_pwrctrl" = ps: with ps; [ ]; # missing inputs: anel_pwrctrl-homeassistant
    "anthemav" = ps: with ps; [ ]; # missing inputs: anthemav
    "apache_kafka" = ps: with ps; [ aiokafka ];
    "apcupsd" = ps: with ps; [ apcaccess ];
    "api" = ps: with ps; [ aiohttp-cors ];
    "apns" = ps: with ps; [ ]; # missing inputs: apns2
    "apple_tv" = ps: with ps; [ aiohttp-cors ifaddr pyatv zeroconf ];
    "apprise" = ps: with ps; [ apprise ];
    "aprs" = ps: with ps; [ aprslib geopy ];
    "aqualogic" = ps: with ps; [ aqualogic ];
    "aquostv" = ps: with ps; [ ]; # missing inputs: sharp_aquos_rc
    "arcam_fmj" = ps: with ps; [ arcam-fmj ];
    "arest" = ps: with ps; [ ];
    "arlo" = ps: with ps; [ ha-ffmpeg pyarlo ];
    "arris_tg2492lg" = ps: with ps; [ ]; # missing inputs: arris-tg2492lg
    "aruba" = ps: with ps; [ pexpect ];
    "arwn" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "aseko_pool_live" = ps: with ps; [ aioaseko ];
    "asterisk_cdr" = ps: with ps; [ asterisk-mbox ];
    "asterisk_mbox" = ps: with ps; [ asterisk-mbox ];
    "asuswrt" = ps: with ps; [ aioasuswrt ];
    "atag" = ps: with ps; [ pyatag ];
    "aten_pe" = ps: with ps; [ atenpdu ];
    "atome" = ps: with ps; [ pyatome ];
    "august" = ps: with ps; [ yalexs ];
    "aurora" = ps: with ps; [ auroranoaa ];
    "aurora_abb_powerone" = ps: with ps; [ aurorapy ];
    "aussie_broadband" = ps: with ps; [ pyaussiebb ];
    "auth" = ps: with ps; [ aiohttp-cors ];
    "automation" = ps: with ps; [ aiohttp-cors ];
    "avea" = ps: with ps; [ avea ];
    "avion" = ps: with ps; [ avion ];
    "awair" = ps: with ps; [ python-awair ];
    "aws" = ps: with ps; [ aiobotocore ];
    "axis" = ps: with ps; [ aiohttp-cors axis paho-mqtt ];
    "azure_devops" = ps: with ps; [ aioazuredevops ];
    "azure_event_hub" = ps: with ps; [ azure-eventhub ];
    "azure_service_bus" = ps: with ps; [ azure-servicebus ];
    "baidu" = ps: with ps; [ ]; # missing inputs: baidu-aip
    "balboa" = ps: with ps; [ pybalboa ];
    "bayesian" = ps: with ps; [ ];
    "bbb_gpio" = ps: with ps; [ ]; # missing inputs: Adafruit_BBIO
    "bbox" = ps: with ps; [ ]; # missing inputs: pybbox
    "beewi_smartclim" = ps: with ps; [ ]; # missing inputs: beewi_smartclim
    "bh1750" = ps: with ps; [ i2csense smbus-cffi ];
    "binary_sensor" = ps: with ps; [ ];
    "bitcoin" = ps: with ps; [ blockchain ];
    "bizkaibus" = ps: with ps; [ bizkaibus ];
    "blackbird" = ps: with ps; [ pyblackbird ];
    "blebox" = ps: with ps; [ blebox-uniapi ];
    "blink" = ps: with ps; [ blinkpy ];
    "blinksticklight" = ps: with ps; [ BlinkStick ];
    "blinkt" = ps: with ps; [ ]; # missing inputs: blinkt
    "blockchain" = ps: with ps; [ ]; # missing inputs: python-blockchain-api
    "bloomsky" = ps: with ps; [ ];
    "blueprint" = ps: with ps; [ ];
    "bluesound" = ps: with ps; [ xmltodict ];
    "bluetooth_le_tracker" = ps: with ps; [ pygatt ];
    "bluetooth_tracker" = ps: with ps; [ bt-proximity pybluez ];
    "bme280" = ps: with ps; [ bme280spi i2csense smbus-cffi ];
    "bme680" = ps: with ps; [ bme680 smbus-cffi ];
    "bmp280" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-bmp280
    "bmw_connected_drive" = ps: with ps; [ bimmer-connected ];
    "bond" = ps: with ps; [ bond-api ];
    "bosch_shc" = ps: with ps; [ aiohttp-cors boschshcpy ifaddr zeroconf ];
    "braviatv" = ps: with ps; [ bravia-tv ];
    "broadlink" = ps: with ps; [ broadlink ];
    "brother" = ps: with ps; [ brother ];
    "brottsplatskartan" = ps: with ps; [ brottsplatskartan ];
    "browser" = ps: with ps; [ ];
    "brunt" = ps: with ps; [ ]; # missing inputs: brunt
    "bsblan" = ps: with ps; [ bsblan ];
    "bt_home_hub_5" = ps: with ps; [ ]; # missing inputs: bthomehub5-devicelist
    "bt_smarthub" = ps: with ps; [ ]; # missing inputs: btsmarthub_devicelist
    "buienradar" = ps: with ps; [ buienradar ];
    "button" = ps: with ps; [ ];
    "caldav" = ps: with ps; [ caldav ];
    "calendar" = ps: with ps; [ aiohttp-cors ];
    "camera" = ps: with ps; [ pyturbojpeg aiohttp-cors ];
    "canary" = ps: with ps; [ ha-ffmpeg py-canary ];
    "cast" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa ifaddr mutagen plexapi plexauth plexwebsocket PyChromecast zeroconf ];
    "cert_expiry" = ps: with ps; [ ];
    "channels" = ps: with ps; [ pychannels ];
    "circuit" = ps: with ps; [ circuit-webhook ];
    "cisco_ios" = ps: with ps; [ pexpect ];
    "cisco_mobility_express" = ps: with ps; [ ciscomobilityexpress ];
    "cisco_webex_teams" = ps: with ps; [ webexteamssdk ];
    "citybikes" = ps: with ps; [ ];
    "clementine" = ps: with ps; [ ]; # missing inputs: python-clementine-remote
    "clickatell" = ps: with ps; [ ];
    "clicksend" = ps: with ps; [ ];
    "clicksend_tts" = ps: with ps; [ ];
    "climacell" = ps: with ps; [ pyclimacell ];
    "climate" = ps: with ps; [ ];
    "cloud" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa ];
    "cloudflare" = ps: with ps; [ pycfdns ];
    "cmus" = ps: with ps; [ ]; # missing inputs: pycmus
    "co2signal" = ps: with ps; [ co2signal ];
    "coinbase" = ps: with ps; [ ]; # missing inputs: coinbase
    "color_extractor" = ps: with ps; [ colorthief ];
    "comed_hourly_pricing" = ps: with ps; [ ];
    "comfoconnect" = ps: with ps; [ pycomfoconnect ];
    "command_line" = ps: with ps; [ ];
    "compensation" = ps: with ps; [ numpy ];
    "concord232" = ps: with ps; [ ]; # missing inputs: concord232
    "config" = ps: with ps; [ aiohttp-cors ];
    "configurator" = ps: with ps; [ ];
    "control4" = ps: with ps; [ pycontrol4 ];
    "conversation" = ps: with ps; [ aiohttp-cors ];
    "coolmaster" = ps: with ps; [ pycoolmasternet-async ];
    "coronavirus" = ps: with ps; [ coronavirus ];
    "counter" = ps: with ps; [ ];
    "cover" = ps: with ps; [ ];
    "cppm_tracker" = ps: with ps; [ ]; # missing inputs: clearpasspy
    "cpuspeed" = ps: with ps; [ py-cpuinfo ];
    "crownstone" = ps: with ps; [ aiohttp-cors crownstone-cloud crownstone-sse crownstone-uart pyserial pyudev ];
    "cups" = ps: with ps; [ pycups ];
    "currencylayer" = ps: with ps; [ ];
    "daikin" = ps: with ps; [ pydaikin ];
    "danfoss_air" = ps: with ps; [ pydanfossair ];
    "darksky" = ps: with ps; [ python-forecastio ];
    "datadog" = ps: with ps; [ datadog ];
    "ddwrt" = ps: with ps; [ ];
    "debugpy" = ps: with ps; [ debugpy ];
    "deconz" = ps: with ps; [ pydeconz ];
    "decora" = ps: with ps; [ bluepy ]; # missing inputs: decora
    "decora_wifi" = ps: with ps; [ ]; # missing inputs: decora_wifi
    "default_config" = ps: with ps; [ pynacl pyturbojpeg aiodiscover aiohttp-cors async-upnp-client emoji hass-nabucasa home-assistant-frontend ifaddr pillow pyserial pyudev scapy sqlalchemy zeroconf ];
    "delijn" = ps: with ps; [ pydelijn ];
    "deluge" = ps: with ps; [ deluge-client ];
    "demo" = ps: with ps; [ aiohttp-cors sqlalchemy ];
    "denon" = ps: with ps; [ ];
    "denonavr" = ps: with ps; [ denonavr ];
    "derivative" = ps: with ps; [ ];
    "deutsche_bahn" = ps: with ps; [ schiene ];
    "device_automation" = ps: with ps; [ ];
    "device_sun_light_trigger" = ps: with ps; [ aiohttp-cors pillow ];
    "device_tracker" = ps: with ps; [ ];
    "devolo_home_control" = ps: with ps; [ aiohttp-cors devolo-home-control-api ifaddr zeroconf ];
    "devolo_home_network" = ps: with ps; [ devolo-plc-api ];
    "dexcom" = ps: with ps; [ pydexcom ];
    "dhcp" = ps: with ps; [ aiodiscover scapy ];
    "dht" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-dht
    "diagnostics" = ps: with ps; [ aiohttp-cors ];
    "dialogflow" = ps: with ps; [ aiohttp-cors ];
    "digital_ocean" = ps: with ps; [ digital-ocean ];
    "digitalloggers" = ps: with ps; [ ]; # missing inputs: dlipower
    "directv" = ps: with ps; [ directv ];
    "discogs" = ps: with ps; [ discogs-client ];
    "discord" = ps: with ps; [ discordpy ];
    "discovery" = ps: with ps; [ aiohttp-cors ifaddr netdisco zeroconf ];
    "dlib_face_detect" = ps: with ps; [ face_recognition ];
    "dlib_face_identify" = ps: with ps; [ face_recognition ];
    "dlink" = ps: with ps; [ ]; # missing inputs: pyW215
    "dlna_dmr" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ];
    "dnsip" = ps: with ps; [ aiodns ];
    "dominos" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pizzapi
    "doods" = ps: with ps; [ pillow pydoods ];
    "doorbird" = ps: with ps; [ aiohttp-cors doorbirdpy ];
    "dovado" = ps: with ps; [ ]; # missing inputs: dovado
    "downloader" = ps: with ps; [ ];
    "dsmr" = ps: with ps; [ dsmr-parser ];
    "dsmr_reader" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "dte_energy_bridge" = ps: with ps; [ ];
    "dublin_bus_transport" = ps: with ps; [ ];
    "duckdns" = ps: with ps; [ ];
    "dunehd" = ps: with ps; [ pdunehd ];
    "dwd_weather_warnings" = ps: with ps; [ dwdwfsapi ];
    "dweet" = ps: with ps; [ ]; # missing inputs: dweepy
    "dynalite" = ps: with ps; [ dynalite-devices ];
    "eafm" = ps: with ps; [ aioeafm ];
    "ebox" = ps: with ps; [ ]; # missing inputs: pyebox
    "ebusd" = ps: with ps; [ ]; # missing inputs: ebusdpy
    "ecoal_boiler" = ps: with ps; [ ecoaliface ];
    "ecobee" = ps: with ps; [ python-ecobee-api ];
    "econet" = ps: with ps; [ pyeconet ];
    "ecovacs" = ps: with ps; [ ]; # missing inputs: sucks
    "eddystone_temperature" = ps: with ps; [ construct ]; # missing inputs: beacontools
    "edimax" = ps: with ps; [ pyedimax ];
    "edl21" = ps: with ps; [ pysml ];
    "efergy" = ps: with ps; [ pyefergy ];
    "egardia" = ps: with ps; [ pythonegardia ];
    "eight_sleep" = ps: with ps; [ pyeight ];
    "elgato" = ps: with ps; [ elgato ];
    "eliqonline" = ps: with ps; [ eliqonline ];
    "elkm1" = ps: with ps; [ elkm1-lib ];
    "elmax" = ps: with ps; [ elmax-api ];
    "elv" = ps: with ps; [ pypca ];
    "emby" = ps: with ps; [ pyemby ];
    "emoncms" = ps: with ps; [ ];
    "emoncms_history" = ps: with ps; [ ];
    "emonitor" = ps: with ps; [ aioemonitor ];
    "emulated_hue" = ps: with ps; [ aiohttp-cors ifaddr ];
    "emulated_kasa" = ps: with ps; [ sense-energy ];
    "emulated_roku" = ps: with ps; [ aiohttp-cors emulated-roku ifaddr ];
    "energy" = ps: with ps; [ aiohttp-cors sqlalchemy ];
    "enigma2" = ps: with ps; [ openwebifpy ];
    "enocean" = ps: with ps; [ enocean ];
    "enphase_envoy" = ps: with ps; [ envoy-reader ];
    "entur_public_transport" = ps: with ps; [ enturclient ];
    "environment_canada" = ps: with ps; [ env-canada ];
    "envirophat" = ps: with ps; [ smbus-cffi ]; # missing inputs: envirophat
    "envisalink" = ps: with ps; [ pyenvisalink ];
    "ephember" = ps: with ps; [ pyephember ];
    "epson" = ps: with ps; [ epson-projector ];
    "epsonworkforce" = ps: with ps; [ ]; # missing inputs: epsonprinter
    "eq3btsmart" = ps: with ps; [ construct ]; # missing inputs: python-eq3bt
    "esphome" = ps: with ps; [ aioesphomeapi aiohttp-cors ifaddr zeroconf ];
    "etherscan" = ps: with ps; [ ]; # missing inputs: python-etherscan-api
    "eufy" = ps: with ps; [ ]; # missing inputs: lakeside
    "everlights" = ps: with ps; [ pyeverlights ];
    "evil_genius_labs" = ps: with ps; [ pyevilgenius ];
    "evohome" = ps: with ps; [ evohome-async ];
    "ezviz" = ps: with ps; [ ha-ffmpeg pyezviz ];
    "faa_delays" = ps: with ps; [ faadelays ];
    "facebook" = ps: with ps; [ ];
    "facebox" = ps: with ps; [ ];
    "fail2ban" = ps: with ps; [ ];
    "familyhub" = ps: with ps; [ ]; # missing inputs: python-family-hub-local
    "fan" = ps: with ps; [ ];
    "fastdotcom" = ps: with ps; [ ]; # missing inputs: fastdotcom
    "feedreader" = ps: with ps; [ feedparser ];
    "ffmpeg" = ps: with ps; [ ha-ffmpeg ];
    "ffmpeg_motion" = ps: with ps; [ ha-ffmpeg ];
    "ffmpeg_noise" = ps: with ps; [ ha-ffmpeg ];
    "fibaro" = ps: with ps; [ fiblary3-fork ];
    "fido" = ps: with ps; [ pyfido ];
    "file" = ps: with ps; [ ];
    "filesize" = ps: with ps; [ ];
    "filter" = ps: with ps; [ sqlalchemy ];
    "fints" = ps: with ps; [ fints ];
    "fireservicerota" = ps: with ps; [ pyfireservicerota ];
    "firmata" = ps: with ps; [ pymata-express ];
    "fitbit" = ps: with ps; [ aiohttp-cors fitbit ];
    "fixer" = ps: with ps; [ fixerio ];
    "fjaraskupan" = ps: with ps; [ fjaraskupan ];
    "fleetgo" = ps: with ps; [ ritassist ];
    "flexit" = ps: with ps; [ pymodbus ];
    "flic" = ps: with ps; [ pyflic ];
    "flick_electric" = ps: with ps; [ pyflick ];
    "flipr" = ps: with ps; [ flipr-api ];
    "flo" = ps: with ps; [ aioflo ];
    "flock" = ps: with ps; [ ];
    "flume" = ps: with ps; [ pyflume ];
    "flunearyou" = ps: with ps; [ pyflunearyou ];
    "flux" = ps: with ps; [ ];
    "flux_led" = ps: with ps; [ aiohttp-cors flux-led ifaddr ];
    "folder" = ps: with ps; [ ];
    "folder_watcher" = ps: with ps; [ watchdog ];
    "foobot" = ps: with ps; [ foobot-async ];
    "forecast_solar" = ps: with ps; [ forecast-solar ];
    "forked_daapd" = ps: with ps; [ ]; # missing inputs: pyforked-daapd pylibrespot-java
    "fortios" = ps: with ps; [ fortiosapi ];
    "foscam" = ps: with ps; [ libpyfoscam ];
    "foursquare" = ps: with ps; [ aiohttp-cors ];
    "free_mobile" = ps: with ps; [ ]; # missing inputs: freesms
    "freebox" = ps: with ps; [ freebox-api ];
    "freedns" = ps: with ps; [ ];
    "freedompro" = ps: with ps; [ pyfreedompro ];
    "fritz" = ps: with ps; [ aiohttp-cors fritzconnection ifaddr xmltodict ];
    "fritzbox" = ps: with ps; [ pyfritzhome ];
    "fritzbox_callmonitor" = ps: with ps; [ fritzconnection ];
    "fronius" = ps: with ps; [ pyfronius ];
    "frontend" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ];
    "frontier_silicon" = ps: with ps; [ afsapi ];
    "futurenow" = ps: with ps; [ pyfnip ];
    "garadget" = ps: with ps; [ ];
    "garages_amsterdam" = ps: with ps; [ garages-amsterdam ];
    "gc100" = ps: with ps; [ ]; # missing inputs: python-gc100
    "gdacs" = ps: with ps; [ aio-georss-gdacs ];
    "generic" = ps: with ps; [ ];
    "generic_hygrostat" = ps: with ps; [ ];
    "generic_thermostat" = ps: with ps; [ sqlalchemy ];
    "geniushub" = ps: with ps; [ geniushub-client ];
    "geo_json_events" = ps: with ps; [ geojson-client ];
    "geo_location" = ps: with ps; [ ];
    "geo_rss_events" = ps: with ps; [ georss-generic-client ];
    "geofency" = ps: with ps; [ aiohttp-cors ];
    "geonetnz_quakes" = ps: with ps; [ aio-geojson-geonetnz-quakes ];
    "geonetnz_volcano" = ps: with ps; [ aio-geojson-geonetnz-volcano ];
    "gios" = ps: with ps; [ gios ];
    "github" = ps: with ps; [ aiogithubapi ];
    "gitlab_ci" = ps: with ps; [ python-gitlab ];
    "gitter" = ps: with ps; [ ]; # missing inputs: gitterpy
    "glances" = ps: with ps; [ glances-api ];
    "gntp" = ps: with ps; [ gntp ];
    "goalfeed" = ps: with ps; [ ]; # missing inputs: pysher
    "goalzero" = ps: with ps; [ goalzero ];
    "gogogate2" = ps: with ps; [ ismartgate ];
    "goodwe" = ps: with ps; [ goodwe ];
    "google" = ps: with ps; [ google-api-python-client httplib2 oauth2client ];
    "google_assistant" = ps: with ps; [ pyturbojpeg aiohttp-cors ];
    "google_cloud" = ps: with ps; [ google-cloud-texttospeech ];
    "google_domains" = ps: with ps; [ ];
    "google_maps" = ps: with ps; [ locationsharinglib ];
    "google_pubsub" = ps: with ps; [ google-cloud-pubsub ];
    "google_translate" = ps: with ps; [ gtts ];
    "google_travel_time" = ps: with ps; [ googlemaps ];
    "google_wifi" = ps: with ps; [ ];
    "gpsd" = ps: with ps; [ gps3 ];
    "gpslogger" = ps: with ps; [ aiohttp-cors ];
    "graphite" = ps: with ps; [ ];
    "gree" = ps: with ps; [ greeclimate ];
    "greeneye_monitor" = ps: with ps; [ ]; # missing inputs: greeneye_monitor
    "greenwave" = ps: with ps; [ ]; # missing inputs: greenwavereality
    "group" = ps: with ps; [ ];
    "growatt_server" = ps: with ps; [ growattserver ];
    "gstreamer" = ps: with ps; [ ]; # missing inputs: gstreamer-player
    "gtfs" = ps: with ps; [ pygtfs ];
    "guardian" = ps: with ps; [ aioguardian ];
    "habitica" = ps: with ps; [ habitipy ];
    "hangouts" = ps: with ps; [ hangups ];
    "harman_kardon_avr" = ps: with ps; [ ]; # missing inputs: hkavr
    "harmony" = ps: with ps; [ aioharmony ];
    "hassio" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ];
    "haveibeenpwned" = ps: with ps; [ ];
    "hddtemp" = ps: with ps; [ ];
    "hdmi_cec" = ps: with ps; [ pycec ];
    "heatmiser" = ps: with ps; [ ]; # missing inputs: heatmiserV3
    "heos" = ps: with ps; [ pyheos ];
    "here_travel_time" = ps: with ps; [ herepy ];
    "hikvision" = ps: with ps; [ ]; # missing inputs: pyhik
    "hikvisioncam" = ps: with ps; [ hikvision ];
    "hisense_aehw4a1" = ps: with ps; [ pyaehw4a1 ];
    "history" = ps: with ps; [ aiohttp-cors sqlalchemy ];
    "history_stats" = ps: with ps; [ sqlalchemy ];
    "hitron_coda" = ps: with ps; [ ];
    "hive" = ps: with ps; [ pyhiveapi ];
    "hlk_sw16" = ps: with ps; [ hlk-sw16 ];
    "home_connect" = ps: with ps; [ aiohttp-cors homeconnect ];
    "home_plus_control" = ps: with ps; [ aiohttp-cors homepluscontrol ];
    "homeassistant" = ps: with ps; [ ];
    "homekit" = ps: with ps; [ hap-python pyqrcode pyturbojpeg aiohttp-cors base36 fnvhash ha-ffmpeg ifaddr zeroconf ];
    "homekit_controller" = ps: with ps; [ aiohomekit aiohttp-cors ifaddr zeroconf ];
    "homematic" = ps: with ps; [ pyhomematic ];
    "homematicip_cloud" = ps: with ps; [ homematicip ];
    "homewizard" = ps: with ps; [ aiohwenergy ];
    "homeworks" = ps: with ps; [ pyhomeworks ];
    "honeywell" = ps: with ps; [ somecomfort ];
    "horizon" = ps: with ps; [ ]; # missing inputs: horimote
    "hp_ilo" = ps: with ps; [ python-hpilo ];
    "html5" = ps: with ps; [ aiohttp-cors pywebpush ];
    "http" = ps: with ps; [ aiohttp-cors ];
    "htu21d" = ps: with ps; [ i2csense smbus-cffi ];
    "huawei_lte" = ps: with ps; [ huawei-lte-api stringcase url-normalize ];
    "hue" = ps: with ps; [ aiohue ];
    "huisbaasje" = ps: with ps; [ huisbaasje-client ];
    "humidifier" = ps: with ps; [ ];
    "hunterdouglas_powerview" = ps: with ps; [ aiopvapi ];
    "hvv_departures" = ps: with ps; [ pygti ];
    "hydrawise" = ps: with ps; [ hydrawiser ];
    "hyperion" = ps: with ps; [ hyperion-py ];
    "ialarm" = ps: with ps; [ pyialarm ];
    "iammeter" = ps: with ps; [ ]; # missing inputs: iammeter
    "iaqualink" = ps: with ps; [ iaqualink ];
    "icloud" = ps: with ps; [ pyicloud ];
    "idteck_prox" = ps: with ps; [ ]; # missing inputs: rfk101py
    "ifttt" = ps: with ps; [ aiohttp-cors pyfttt ];
    "iglo" = ps: with ps; [ ]; # missing inputs: iglo
    "ign_sismologia" = ps: with ps; [ georss-ign-sismologia-client ];
    "ihc" = ps: with ps; [ defusedxml ]; # missing inputs: ihcsdk
    "image" = ps: with ps; [ aiohttp-cors pillow ];
    "image_processing" = ps: with ps; [ pyturbojpeg aiohttp-cors ];
    "imap" = ps: with ps; [ aioimaplib ];
    "imap_email_content" = ps: with ps; [ ];
    "incomfort" = ps: with ps; [ incomfort-client ];
    "influxdb" = ps: with ps; [ influxdb-client influxdb ];
    "input_boolean" = ps: with ps; [ ];
    "input_button" = ps: with ps; [ ];
    "input_datetime" = ps: with ps; [ ];
    "input_number" = ps: with ps; [ ];
    "input_select" = ps: with ps; [ ];
    "input_text" = ps: with ps; [ ];
    "insteon" = ps: with ps; [ pyinsteon ];
    "integration" = ps: with ps; [ ];
    "intellifire" = ps: with ps; [ intellifire4py ];
    "intent" = ps: with ps; [ aiohttp-cors ];
    "intent_script" = ps: with ps; [ ];
    "intesishome" = ps: with ps; [ pyintesishome ];
    "ios" = ps: with ps; [ aiohttp-cors ifaddr zeroconf ];
    "iotawatt" = ps: with ps; [ iotawattpy ];
    "iperf3" = ps: with ps; [ ]; # missing inputs: iperf3
    "ipma" = ps: with ps; [ pyipma ];
    "ipp" = ps: with ps; [ pyipp ];
    "iqvia" = ps: with ps; [ numpy pyiqvia ];
    "irish_rail_transport" = ps: with ps; [ ]; # missing inputs: pyirishrail
    "islamic_prayer_times" = ps: with ps; [ prayer-times-calculator ];
    "iss" = ps: with ps; [ ]; # missing inputs: pyiss
    "isy994" = ps: with ps; [ pyisy ];
    "itach" = ps: with ps; [ ]; # missing inputs: pyitachip2ir
    "itunes" = ps: with ps; [ ];
    "izone" = ps: with ps; [ python-izone ];
    "jellyfin" = ps: with ps; [ jellyfin-apiclient-python ];
    "jewish_calendar" = ps: with ps; [ hdate ];
    "joaoapps_join" = ps: with ps; [ ]; # missing inputs: python-join-api
    "juicenet" = ps: with ps; [ python-juicenet ];
    "kaiterra" = ps: with ps; [ ]; # missing inputs: kaiterra-async-client
    "kankun" = ps: with ps; [ ];
    "keba" = ps: with ps; [ ]; # missing inputs: keba-kecontact
    "keenetic_ndms2" = ps: with ps; [ ndms2-client ];
    "kef" = ps: with ps; [ aiokef getmac ];
    "keyboard" = ps: with ps; [ ]; # missing inputs: pyuserinput
    "keyboard_remote" = ps: with ps; [ aionotify evdev ];
    "kira" = ps: with ps; [ pykira ];
    "kiwi" = ps: with ps; [ ]; # missing inputs: kiwiki-client
    "kmtronic" = ps: with ps; [ pykmtronic ];
    "knx" = ps: with ps; [ xknx ];
    "kodi" = ps: with ps; [ pykodi ];
    "konnected" = ps: with ps; [ aiohttp-cors konnected ];
    "kostal_plenticore" = ps: with ps; [ ]; # missing inputs: kostal_plenticore
    "kraken" = ps: with ps; [ krakenex pykrakenapi ];
    "kulersky" = ps: with ps; [ pykulersky ];
    "kwb" = ps: with ps; [ ]; # missing inputs: pykwb
    "lacrosse" = ps: with ps; [ pylacrosse ];
    "lametric" = ps: with ps; [ lmnotify ];
    "lannouncer" = ps: with ps; [ ];
    "lastfm" = ps: with ps; [ pylast ];
    "launch_library" = ps: with ps; [ pylaunches ];
    "lcn" = ps: with ps; [ pypck ];
    "lg_netcast" = ps: with ps; [ pylgnetcast ];
    "lg_soundbar" = ps: with ps; [ temescal ];
    "life360" = ps: with ps; [ life360 ];
    "lifx" = ps: with ps; [ aiolifx aiolifx-effects ];
    "lifx_cloud" = ps: with ps; [ ];
    "light" = ps: with ps; [ ];
    "lightwave" = ps: with ps; [ lightwave ];
    "limitlessled" = ps: with ps; [ limitlessled ];
    "linksys_smart" = ps: with ps; [ ];
    "linode" = ps: with ps; [ linode-api ];
    "linux_battery" = ps: with ps; [ batinfo ];
    "lirc" = ps: with ps; [ ]; # missing inputs: python-lirc
    "litejet" = ps: with ps; [ ]; # missing inputs: pylitejet
    "litterrobot" = ps: with ps; [ pylitterbot ];
    "llamalab_automate" = ps: with ps; [ ];
    "local_file" = ps: with ps; [ ];
    "local_ip" = ps: with ps; [ aiohttp-cors ifaddr ];
    "locative" = ps: with ps; [ aiohttp-cors ];
    "lock" = ps: with ps; [ ];
    "logbook" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ];
    "logentries" = ps: with ps; [ ];
    "logger" = ps: with ps; [ ];
    "logi_circle" = ps: with ps; [ aiohttp-cors ha-ffmpeg ]; # missing inputs: logi_circle
    "london_air" = ps: with ps; [ ];
    "london_underground" = ps: with ps; [ ]; # missing inputs: london-tube-status
    "lookin" = ps: with ps; [ aiolookin ];
    "lovelace" = ps: with ps; [ ];
    "luci" = ps: with ps; [ openwrt-luci-rpc ];
    "luftdaten" = ps: with ps; [ luftdaten ];
    "lupusec" = ps: with ps; [ lupupy ];
    "lutron" = ps: with ps; [ pylutron ];
    "lutron_caseta" = ps: with ps; [ pylutron-caseta ];
    "lw12wifi" = ps: with ps; [ ]; # missing inputs: lw12
    "lyric" = ps: with ps; [ aiohttp-cors aiolyric ];
    "magicseaweed" = ps: with ps; [ ]; # missing inputs: magicseaweed
    "mailbox" = ps: with ps; [ aiohttp-cors ];
    "mailgun" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pymailgunner
    "manual" = ps: with ps; [ ];
    "manual_mqtt" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "map" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ];
    "marytts" = ps: with ps; [ ]; # missing inputs: speak2mary
    "mastodon" = ps: with ps; [ mastodon-py ];
    "matrix" = ps: with ps; [ matrix-client ];
    "maxcube" = ps: with ps; [ maxcube-api ];
    "mazda" = ps: with ps; [ pymazda ];
    "mcp23017" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-mcp230xx
    "media_extractor" = ps: with ps; [ aiohttp-cors youtube-dl-light ];
    "media_player" = ps: with ps; [ aiohttp-cors ];
    "media_source" = ps: with ps; [ aiohttp-cors ];
    "mediaroom" = ps: with ps; [ pymediaroom ];
    "melcloud" = ps: with ps; [ pymelcloud ];
    "melissa" = ps: with ps; [ ]; # missing inputs: py-melissa-climate
    "meraki" = ps: with ps; [ aiohttp-cors ];
    "message_bird" = ps: with ps; [ ]; # missing inputs: messagebird
    "met" = ps: with ps; [ pymetno ];
    "met_eireann" = ps: with ps; [ pymeteireann ];
    "meteo_france" = ps: with ps; [ ]; # missing inputs: meteofrance-api
    "meteoalarm" = ps: with ps; [ meteoalertapi ];
    "meteoclimatic" = ps: with ps; [ pymeteoclimatic ];
    "metoffice" = ps: with ps; [ ]; # missing inputs: datapoint
    "mfi" = ps: with ps; [ ]; # missing inputs: mficlient
    "mhz19" = ps: with ps; [ pmsensor ];
    "microsoft" = ps: with ps; [ ]; # missing inputs: pycsspeechtts
    "microsoft_face" = ps: with ps; [ pyturbojpeg aiohttp-cors ];
    "microsoft_face_detect" = ps: with ps; [ pyturbojpeg aiohttp-cors ];
    "microsoft_face_identify" = ps: with ps; [ pyturbojpeg aiohttp-cors ];
    "miflora" = ps: with ps; [ bluepy ]; # missing inputs: miflora
    "mikrotik" = ps: with ps; [ librouteros ];
    "mill" = ps: with ps; [ mill-local millheater ];
    "min_max" = ps: with ps; [ ];
    "minecraft_server" = ps: with ps; [ aiodns getmac mcstatus ];
    "minio" = ps: with ps; [ minio ];
    "mitemp_bt" = ps: with ps; [ ]; # missing inputs: mitemp_bt
    "mjpeg" = ps: with ps; [ ];
    "mobile_app" = ps: with ps; [ pynacl pyturbojpeg aiohttp-cors emoji hass-nabucasa pillow ];
    "mochad" = ps: with ps; [ ]; # missing inputs: pymochad
    "modbus" = ps: with ps; [ pymodbus ];
    "modem_callerid" = ps: with ps; [ aiohttp-cors phone-modem pyserial pyudev ];
    "modern_forms" = ps: with ps; [ aiomodernforms ];
    "mold_indicator" = ps: with ps; [ ];
    "monoprice" = ps: with ps; [ ]; # missing inputs: pymonoprice
    "moon" = ps: with ps; [ ];
    "motion_blinds" = ps: with ps; [ aiohttp-cors ifaddr motionblinds ];
    "motioneye" = ps: with ps; [ aiohttp-cors motioneye-client ];
    "mpchc" = ps: with ps; [ ];
    "mpd" = ps: with ps; [ mpd2 ];
    "mqtt" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "mqtt_eventstream" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "mqtt_json" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "mqtt_room" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "mqtt_statestream" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "msteams" = ps: with ps; [ pymsteams ];
    "mullvad" = ps: with ps; [ mullvad-api ];
    "mutesync" = ps: with ps; [ mutesync ];
    "mvglive" = ps: with ps; [ PyMVGLive ];
    "my" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ];
    "mycroft" = ps: with ps; [ ]; # missing inputs: mycroftapi
    "myq" = ps: with ps; [ pymyq ];
    "mysensors" = ps: with ps; [ aiohttp-cors paho-mqtt pymysensors ];
    "mystrom" = ps: with ps; [ aiohttp-cors python-mystrom ];
    "mythicbeastsdns" = ps: with ps; [ mbddns ];
    "nad" = ps: with ps; [ nad-receiver ];
    "nam" = ps: with ps; [ nettigo-air-monitor ];
    "namecheapdns" = ps: with ps; [ defusedxml ];
    "nanoleaf" = ps: with ps; [ aionanoleaf ];
    "neato" = ps: with ps; [ aiohttp-cors pybotvac ];
    "nederlandse_spoorwegen" = ps: with ps; [ nsapi ];
    "ness_alarm" = ps: with ps; [ nessclient ];
    "nest" = ps: with ps; [ aiohttp-cors google-nest-sdm ha-ffmpeg python-nest ];
    "netatmo" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa pyatmo ];
    "netdata" = ps: with ps; [ netdata ];
    "netgear" = ps: with ps; [ pynetgear ];
    "netgear_lte" = ps: with ps; [ eternalegypt ];
    "netio" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pynetio
    "network" = ps: with ps; [ aiohttp-cors ifaddr ];
    "neurio_energy" = ps: with ps; [ ]; # missing inputs: neurio
    "nexia" = ps: with ps; [ nexia ];
    "nextbus" = ps: with ps; [ ]; # missing inputs: py_nextbusnext
    "nextcloud" = ps: with ps; [ nextcloudmonitor ];
    "nfandroidtv" = ps: with ps; [ ]; # missing inputs: notifications-android-tv
    "nightscout" = ps: with ps; [ py-nightscout ];
    "niko_home_control" = ps: with ps; [ niko-home-control ];
    "nilu" = ps: with ps; [ niluclient ];
    "nina" = ps: with ps; [ pynina ];
    "nissan_leaf" = ps: with ps; [ pycarwings2 ];
    "nmap_tracker" = ps: with ps; [ aiohttp-cors getmac ifaddr netmap ]; # missing inputs: mac-vendor-lookup
    "nmbs" = ps: with ps; [ ]; # missing inputs: pyrail
    "no_ip" = ps: with ps; [ ];
    "noaa_tides" = ps: with ps; [ ]; # missing inputs: noaa-coops
    "norway_air" = ps: with ps; [ pymetno ];
    "notify" = ps: with ps; [ ];
    "notify_events" = ps: with ps; [ ]; # missing inputs: notify-events
    "notion" = ps: with ps; [ aionotion ];
    "nsw_fuel_station" = ps: with ps; [ ]; # missing inputs: nsw-fuel-api-client
    "nsw_rural_fire_service_feed" = ps: with ps; [ aio-geojson-nsw-rfs-incidents ];
    "nuheat" = ps: with ps; [ ]; # missing inputs: nuheat
    "nuki" = ps: with ps; [ pynuki ];
    "numato" = ps: with ps; [ ]; # missing inputs: numato-gpio
    "number" = ps: with ps; [ ];
    "nut" = ps: with ps; [ pynut2 ];
    "nws" = ps: with ps; [ pynws ];
    "nx584" = ps: with ps; [ pynx584 ];
    "nzbget" = ps: with ps; [ ]; # missing inputs: pynzbgetapi
    "oasa_telematics" = ps: with ps; [ ]; # missing inputs: oasatelematics
    "obihai" = ps: with ps; [ pyobihai ];
    "octoprint" = ps: with ps; [ pyoctoprintapi ];
    "oem" = ps: with ps; [ oemthermostat ];
    "ohmconnect" = ps: with ps; [ defusedxml ];
    "ombi" = ps: with ps; [ pyombi ];
    "omnilogic" = ps: with ps; [ omnilogic ];
    "onboarding" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ];
    "oncue" = ps: with ps; [ aiooncue ];
    "ondilo_ico" = ps: with ps; [ aiohttp-cors ondilo ];
    "onewire" = ps: with ps; [ pi1wire pyownet ];
    "onkyo" = ps: with ps; [ onkyo-eiscp ];
    "onvif" = ps: with ps; [ wsdiscovery ha-ffmpeg onvif-zeep-async ];
    "open_meteo" = ps: with ps; [ open-meteo ];
    "openalpr_cloud" = ps: with ps; [ ];
    "openalpr_local" = ps: with ps; [ ];
    "opencv" = ps: with ps; [ numpy ]; # missing inputs: opencv-python-headless
    "openerz" = ps: with ps; [ openerz-api ];
    "openevse" = ps: with ps; [ openevsewifi ];
    "openexchangerates" = ps: with ps; [ ];
    "opengarage" = ps: with ps; [ open-garage ];
    "openhardwaremonitor" = ps: with ps; [ ];
    "openhome" = ps: with ps; [ openhomedevice ];
    "opensensemap" = ps: with ps; [ opensensemap-api ];
    "opensky" = ps: with ps; [ ];
    "opentherm_gw" = ps: with ps; [ pyotgw ];
    "openuv" = ps: with ps; [ pyopenuv ];
    "openweathermap" = ps: with ps; [ pyowm ];
    "opnsense" = ps: with ps; [ pyopnsense ];
    "opple" = ps: with ps; [ ]; # missing inputs: pyoppleio
    "orangepi_gpio" = ps: with ps; [ ]; # missing inputs: OPi.GPIO
    "oru" = ps: with ps; [ ]; # missing inputs: oru
    "orvibo" = ps: with ps; [ orvibo ];
    "osramlightify" = ps: with ps; [ ]; # missing inputs: lightify
    "otp" = ps: with ps; [ pyotp ];
    "overkiz" = ps: with ps; [ pyoverkiz ];
    "ovo_energy" = ps: with ps; [ ovoenergy ];
    "owntracks" = ps: with ps; [ pynacl pyturbojpeg aiohttp-cors hass-nabucasa paho-mqtt ];
    "ozw" = ps: with ps; [ aiohttp-cors paho-mqtt python-openzwave-mqtt ];
    "p1_monitor" = ps: with ps; [ p1monitor ];
    "panasonic_bluray" = ps: with ps; [ panacotta ];
    "panasonic_viera" = ps: with ps; [ ]; # missing inputs: panasonic_viera
    "pandora" = ps: with ps; [ pexpect ];
    "panel_custom" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ];
    "panel_iframe" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ];
    "pcal9535a" = ps: with ps; [ ]; # missing inputs: pcal9535a
    "pencom" = ps: with ps; [ ]; # missing inputs: pencompy
    "persistent_notification" = ps: with ps; [ ];
    "person" = ps: with ps; [ aiohttp-cors pillow ];
    "philips_js" = ps: with ps; [ ha-philipsjs ];
    "pi4ioe5v9xxxx" = ps: with ps; [ ]; # missing inputs: pi4ioe5v9xxxx
    "pi_hole" = ps: with ps; [ hole ];
    "picnic" = ps: with ps; [ python-picnic-api ];
    "picotts" = ps: with ps; [ ];
    "piglow" = ps: with ps; [ ]; # missing inputs: piglow
    "pilight" = ps: with ps; [ ]; # missing inputs: pilight
    "ping" = ps: with ps; [ icmplib ];
    "pioneer" = ps: with ps; [ ];
    "pjlink" = ps: with ps; [ ]; # missing inputs: pypjlink2
    "plaato" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa pyplaato ];
    "plant" = ps: with ps; [ sqlalchemy ];
    "plex" = ps: with ps; [ aiohttp-cors plexapi plexauth plexwebsocket ];
    "plugwise" = ps: with ps; [ plugwise ];
    "plum_lightpad" = ps: with ps; [ ]; # missing inputs: plumlightpad
    "pocketcasts" = ps: with ps; [ ]; # missing inputs: pycketcasts
    "point" = ps: with ps; [ aiohttp-cors pypoint ];
    "poolsense" = ps: with ps; [ poolsense ];
    "powerwall" = ps: with ps; [ ]; # missing inputs: tesla-powerwall
    "profiler" = ps: with ps; [ guppy3 objgraph pyprof2calltree ];
    "progettihwsw" = ps: with ps; [ ]; # missing inputs: progettihwsw
    "proliphix" = ps: with ps; [ ]; # missing inputs: proliphix
    "prometheus" = ps: with ps; [ aiohttp-cors prometheus-client ];
    "prosegur" = ps: with ps; [ pyprosegur ];
    "prowl" = ps: with ps; [ ];
    "proximity" = ps: with ps; [ ];
    "proxmoxve" = ps: with ps; [ proxmoxer ];
    "proxy" = ps: with ps; [ pillow ];
    "ps4" = ps: with ps; [ ]; # missing inputs: pyps4-2ndscreen
    "pulseaudio_loopback" = ps: with ps; [ pulsectl ];
    "push" = ps: with ps; [ aiohttp-cors ];
    "pushbullet" = ps: with ps; [ pushbullet ];
    "pushover" = ps: with ps; [ pushover-complete ];
    "pushsafer" = ps: with ps; [ ];
    "pvoutput" = ps: with ps; [ pvo ];
    "pvpc_hourly_pricing" = ps: with ps; [ aiopvpc ];
    "pyload" = ps: with ps; [ ];
    "python_script" = ps: with ps; [ restrictedpython ];
    "qbittorrent" = ps: with ps; [ ]; # missing inputs: python-qbittorrent
    "qld_bushfire" = ps: with ps; [ georss-qld-bushfire-alert-client ];
    "qnap" = ps: with ps; [ ]; # missing inputs: qnapstats
    "qrcode" = ps: with ps; [ pillow ]; # missing inputs: pyzbar
    "quantum_gateway" = ps: with ps; [ quantum-gateway ];
    "qvr_pro" = ps: with ps; [ pyqvrpro ];
    "qwikswitch" = ps: with ps; [ ]; # missing inputs: pyqwikswitch
    "rachio" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa rachiopy ];
    "radarr" = ps: with ps; [ ];
    "radiotherm" = ps: with ps; [ radiotherm ];
    "rainbird" = ps: with ps; [ ]; # missing inputs: pyrainbird
    "raincloud" = ps: with ps; [ ]; # missing inputs: raincloudy
    "rainforest_eagle" = ps: with ps; [ aioeagle ueagle ];
    "rainmachine" = ps: with ps; [ regenmaschine ];
    "random" = ps: with ps; [ ];
    "raspihats" = ps: with ps; [ smbus-cffi ]; # missing inputs: raspihats
    "raspyrfm" = ps: with ps; [ ]; # missing inputs: raspyrfm-client
    "rdw" = ps: with ps; [ vehicle ];
    "recollect_waste" = ps: with ps; [ aiorecollect ];
    "recorder" = ps: with ps; [ sqlalchemy ];
    "recswitch" = ps: with ps; [ ]; # missing inputs: pyrecswitch
    "reddit" = ps: with ps; [ praw ];
    "rejseplanen" = ps: with ps; [ ]; # missing inputs: rjpl
    "remember_the_milk" = ps: with ps; [ httplib2 ]; # missing inputs: RtmAPI
    "remote" = ps: with ps; [ ];
    "remote_rpi_gpio" = ps: with ps; [ ]; # missing inputs: gpiozero
    "renault" = ps: with ps; [ renault-api ];
    "repetier" = ps: with ps; [ ]; # missing inputs: pyrepetierng
    "rest" = ps: with ps; [ jsonpath xmltodict ];
    "rest_command" = ps: with ps; [ ];
    "rflink" = ps: with ps; [ rflink ];
    "rfxtrx" = ps: with ps; [ pyrfxtrx ];
    "ridwell" = ps: with ps; [ aioridwell ];
    "ring" = ps: with ps; [ ha-ffmpeg ring-doorbell ];
    "ripple" = ps: with ps; [ ]; # missing inputs: python-ripple-api
    "risco" = ps: with ps; [ pyrisco ];
    "rituals_perfume_genie" = ps: with ps; [ pyrituals ];
    "rmvtransport" = ps: with ps; [ pyrmvtransport ];
    "rocketchat" = ps: with ps; [ ]; # missing inputs: rocketchat-API
    "roku" = ps: with ps; [ rokuecp ];
    "roomba" = ps: with ps; [ roombapy ];
    "roon" = ps: with ps; [ roonapi ];
    "route53" = ps: with ps; [ boto3 ];
    "rova" = ps: with ps; [ ]; # missing inputs: rova
    "rpi_camera" = ps: with ps; [ ];
    "rpi_gpio" = ps: with ps; [ ]; # missing inputs: RPi.GPIO
    "rpi_gpio_pwm" = ps: with ps; [ ]; # missing inputs: pwmled
    "rpi_pfio" = ps: with ps; [ ]; # missing inputs: pifacecommon pifacedigitalio
    "rpi_power" = ps: with ps; [ rpi-bad-power ];
    "rpi_rf" = ps: with ps; [ ]; # missing inputs: RPi.GPIO rpi-rf
    "rss_feed_template" = ps: with ps; [ aiohttp-cors ];
    "rtorrent" = ps: with ps; [ ];
    "rtsp_to_webrtc" = ps: with ps; [ pyturbojpeg aiohttp-cors rtsp-to-webrtc ];
    "ruckus_unleashed" = ps: with ps; [ pyruckus ];
    "russound_rio" = ps: with ps; [ ]; # missing inputs: russound_rio
    "russound_rnet" = ps: with ps; [ ]; # missing inputs: russound
    "sabnzbd" = ps: with ps; [ aiohttp-cors ifaddr netdisco zeroconf ]; # missing inputs: pysabnzbd
    "safe_mode" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa home-assistant-frontend pillow sqlalchemy ];
    "saj" = ps: with ps; [ ]; # missing inputs: pysaj
    "samsungtv" = ps: with ps; [ getmac samsungctl samsungtvws wakeonlan ];
    "satel_integra" = ps: with ps; [ ]; # missing inputs: satel_integra
    "scene" = ps: with ps; [ ];
    "schluter" = ps: with ps; [ ]; # missing inputs: py-schluter
    "scrape" = ps: with ps; [ beautifulsoup4 jsonpath xmltodict ];
    "screenlogic" = ps: with ps; [ screenlogicpy ];
    "script" = ps: with ps; [ ];
    "scsgate" = ps: with ps; [ ]; # missing inputs: scsgate
    "search" = ps: with ps; [ aiohttp-cors ];
    "season" = ps: with ps; [ ephem ];
    "select" = ps: with ps; [ ];
    "sendgrid" = ps: with ps; [ sendgrid ];
    "sense" = ps: with ps; [ sense-energy ];
    "sensehat" = ps: with ps; [ ]; # missing inputs: sense-hat
    "senseme" = ps: with ps; [ aiosenseme ];
    "sensibo" = ps: with ps; [ ]; # missing inputs: pysensibo
    "sensor" = ps: with ps; [ sqlalchemy ];
    "sentry" = ps: with ps; [ sentry-sdk ];
    "serial" = ps: with ps; [ pyserial-asyncio ];
    "serial_pm" = ps: with ps; [ pmsensor ];
    "sesame" = ps: with ps; [ ]; # missing inputs: pysesame2
    "seven_segments" = ps: with ps; [ pillow ];
    "seventeentrack" = ps: with ps; [ py17track ];
    "sharkiq" = ps: with ps; [ sharkiqpy ];
    "shell_command" = ps: with ps; [ ];
    "shelly" = ps: with ps; [ aioshelly ];
    "shiftr" = ps: with ps; [ paho-mqtt ];
    "shodan" = ps: with ps; [ shodan ];
    "shopping_list" = ps: with ps; [ aiohttp-cors ];
    "sht31" = ps: with ps; [ ]; # missing inputs: Adafruit-GPIO Adafruit-SHT31
    "sia" = ps: with ps; [ pysiaalarm ];
    "sigfox" = ps: with ps; [ ];
    "sighthound" = ps: with ps; [ pillow simplehound ];
    "signal_messenger" = ps: with ps; [ pysignalclirestapi ];
    "simplepush" = ps: with ps; [ ]; # missing inputs: simplepush
    "simplisafe" = ps: with ps; [ simplisafe-python ];
    "simulated" = ps: with ps; [ ];
    "sinch" = ps: with ps; [ ]; # missing inputs: clx-sdk-xms
    "siren" = ps: with ps; [ ];
    "sisyphus" = ps: with ps; [ ]; # missing inputs: sisyphus-control
    "sky_hub" = ps: with ps; [ pyskyqhub ];
    "skybeacon" = ps: with ps; [ pygatt ];
    "skybell" = ps: with ps; [ skybellpy ];
    "slack" = ps: with ps; [ slackclient ];
    "sleepiq" = ps: with ps; [ sleepyq ];
    "slide" = ps: with ps; [ ]; # missing inputs: goslide-api
    "sma" = ps: with ps; [ pysma ];
    "smappee" = ps: with ps; [ aiohttp-cors pysmappee ];
    "smart_meter_texas" = ps: with ps; [ smart-meter-texas ];
    "smarthab" = ps: with ps; [ smarthab ];
    "smartthings" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa pysmartapp pysmartthings ];
    "smarttub" = ps: with ps; [ python-smarttub ];
    "smarty" = ps: with ps; [ ]; # missing inputs: pysmarty
    "smhi" = ps: with ps; [ smhi-pkg ];
    "sms" = ps: with ps; [ python-gammu ];
    "smtp" = ps: with ps; [ ];
    "snapcast" = ps: with ps; [ snapcast ];
    "snips" = ps: with ps; [ aiohttp-cors paho-mqtt ];
    "snmp" = ps: with ps; [ pysnmp ];
    "sochain" = ps: with ps; [ ]; # missing inputs: python-sochain-api
    "solaredge" = ps: with ps; [ solaredge stringcase ];
    "solaredge_local" = ps: with ps; [ ]; # missing inputs: solaredge-local
    "solarlog" = ps: with ps; [ sunwatcher ];
    "solax" = ps: with ps; [ solax ];
    "soma" = ps: with ps; [ pysoma ];
    "somfy" = ps: with ps; [ aiohttp-cors pymfy ];
    "somfy_mylink" = ps: with ps; [ somfy-mylink-synergy ];
    "sonarr" = ps: with ps; [ sonarr ];
    "songpal" = ps: with ps; [ python-songpal ];
    "sonos" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr plexapi plexauth plexwebsocket soco spotipy zeroconf ];
    "sony_projector" = ps: with ps; [ pysdcp ];
    "soundtouch" = ps: with ps; [ aiohttp-cors ifaddr libsoundtouch zeroconf ];
    "spaceapi" = ps: with ps; [ aiohttp-cors ];
    "spc" = ps: with ps; [ pyspcwebgw ];
    "speedtestdotnet" = ps: with ps; [ speedtest-cli ];
    "spider" = ps: with ps; [ spiderpy ];
    "splunk" = ps: with ps; [ ]; # missing inputs: hass_splunk
    "spotify" = ps: with ps; [ aiohttp-cors spotipy ];
    "sql" = ps: with ps; [ sqlalchemy ];
    "squeezebox" = ps: with ps; [ pysqueezebox ];
    "srp_energy" = ps: with ps; [ srpenergy ];
    "ssdp" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ];
    "starline" = ps: with ps; [ starline ];
    "starlingbank" = ps: with ps; [ ]; # missing inputs: starlingbank
    "startca" = ps: with ps; [ xmltodict ];
    "statistics" = ps: with ps; [ sqlalchemy ];
    "statsd" = ps: with ps; [ statsd ];
    "steam_online" = ps: with ps; [ ]; # missing inputs: steamodd
    "steamist" = ps: with ps; [ aiohttp-cors aiosteamist discovery30303 ifaddr ];
    "stiebel_eltron" = ps: with ps; [ pymodbus ]; # missing inputs: pystiebeleltron
    "stookalert" = ps: with ps; [ ]; # missing inputs: stookalert
    "stream" = ps: with ps; [ pyturbojpeg aiohttp-cors av ];
    "streamlabswater" = ps: with ps; [ streamlabswater ];
    "stt" = ps: with ps; [ aiohttp-cors ];
    "subaru" = ps: with ps; [ subarulink ];
    "suez_water" = ps: with ps; [ ]; # missing inputs: pysuez
    "sun" = ps: with ps; [ ];
    "supervisord" = ps: with ps; [ ];
    "supla" = ps: with ps; [ ]; # missing inputs: asyncpysupla
    "surepetcare" = ps: with ps; [ surepy ];
    "swiss_hydrological_data" = ps: with ps; [ swisshydrodata ];
    "swiss_public_transport" = ps: with ps; [ python-opendata-transport ];
    "swisscom" = ps: with ps; [ ];
    "switch" = ps: with ps; [ ];
    "switchbot" = ps: with ps; [ pyswitchbot ];
    "switcher_kis" = ps: with ps; [ aioswitcher ];
    "switchmate" = ps: with ps; [ ]; # missing inputs: pySwitchmate
    "syncthing" = ps: with ps; [ aiosyncthing ];
    "syncthru" = ps: with ps; [ pysyncthru url-normalize ];
    "synology_chat" = ps: with ps; [ ];
    "synology_dsm" = ps: with ps; [ py-synologydsm-api ];
    "synology_srm" = ps: with ps; [ ]; # missing inputs: synology-srm
    "syslog" = ps: with ps; [ ];
    "system_bridge" = ps: with ps; [ aiohttp-cors ifaddr systembridge zeroconf ];
    "system_health" = ps: with ps; [ aiohttp-cors ];
    "system_log" = ps: with ps; [ ];
    "systemmonitor" = ps: with ps; [ psutil ];
    "tado" = ps: with ps; [ python-tado ];
    "tag" = ps: with ps; [ ];
    "tailscale" = ps: with ps; [ tailscale ];
    "tank_utility" = ps: with ps; [ ]; # missing inputs: tank_utility
    "tankerkoenig" = ps: with ps; [ pytankerkoenig ];
    "tapsaff" = ps: with ps; [ ]; # missing inputs: tapsaff
    "tasmota" = ps: with ps; [ aiohttp-cors hatasmota paho-mqtt ];
    "tautulli" = ps: with ps; [ pytautulli ];
    "tcp" = ps: with ps; [ ];
    "ted5000" = ps: with ps; [ xmltodict ];
    "telegram" = ps: with ps; [ pysocks aiohttp-cors python-telegram-bot ];
    "telegram_bot" = ps: with ps; [ pysocks aiohttp-cors python-telegram-bot ];
    "tellduslive" = ps: with ps; [ tellduslive ];
    "tellstick" = ps: with ps; [ ]; # missing inputs: tellcore-net tellcore-py
    "telnet" = ps: with ps; [ ];
    "temper" = ps: with ps; [ ]; # missing inputs: temperusb
    "template" = ps: with ps; [ ];
    "tensorflow" = ps: with ps; [ numpy pillow pycocotools tensorflow ]; # missing inputs: tf-models-official
    "tesla_wall_connector" = ps: with ps; [ tesla-wall-connector ];
    "tfiac" = ps: with ps; [ ]; # missing inputs: pytfiac
    "thermoworks_smoke" = ps: with ps; [ stringcase ]; # missing inputs: thermoworks_smoke
    "thethingsnetwork" = ps: with ps; [ ];
    "thingspeak" = ps: with ps; [ ]; # missing inputs: thingspeak
    "thinkingcleaner" = ps: with ps; [ ]; # missing inputs: pythinkingcleaner
    "thomson" = ps: with ps; [ ];
    "threshold" = ps: with ps; [ ];
    "tibber" = ps: with ps; [ pytibber sqlalchemy ];
    "tikteck" = ps: with ps; [ ]; # missing inputs: tikteck
    "tile" = ps: with ps; [ pytile ];
    "time_date" = ps: with ps; [ ];
    "timer" = ps: with ps; [ ];
    "tmb" = ps: with ps; [ tmb ];
    "tod" = ps: with ps; [ ];
    "todoist" = ps: with ps; [ todoist ];
    "tof" = ps: with ps; [ ]; # missing inputs: RPi.GPIO VL53L1X2
    "tolo" = ps: with ps; [ tololib ];
    "tomato" = ps: with ps; [ ];
    "toon" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa toonapi ];
    "torque" = ps: with ps; [ aiohttp-cors ];
    "totalconnect" = ps: with ps; [ total-connect-client ];
    "touchline" = ps: with ps; [ ]; # missing inputs: pytouchline
    "tplink" = ps: with ps; [ aiohttp-cors ifaddr python-kasa ];
    "tplink_lte" = ps: with ps; [ ]; # missing inputs: tp-connected
    "traccar" = ps: with ps; [ aiohttp-cors pytraccar stringcase ];
    "trace" = ps: with ps; [ ];
    "tractive" = ps: with ps; [ aiotractive ];
    "tradfri" = ps: with ps; [ pytradfri ];
    "trafikverket_train" = ps: with ps; [ pytrafikverket ];
    "trafikverket_weatherstation" = ps: with ps; [ pytrafikverket ];
    "transmission" = ps: with ps; [ transmissionrpc ];
    "transport_nsw" = ps: with ps; [ pytransportnsw ];
    "travisci" = ps: with ps; [ ]; # missing inputs: TravisPy
    "trend" = ps: with ps; [ numpy ];
    "tts" = ps: with ps; [ aiohttp-cors mutagen ];
    "tuya" = ps: with ps; [ ha-ffmpeg tuya-iot-py-sdk ];
    "twentemilieu" = ps: with ps; [ twentemilieu ];
    "twilio" = ps: with ps; [ aiohttp-cors twilio ];
    "twilio_call" = ps: with ps; [ aiohttp-cors twilio ];
    "twilio_sms" = ps: with ps; [ aiohttp-cors twilio ];
    "twinkly" = ps: with ps; [ ttls ];
    "twitch" = ps: with ps; [ python-twitch-client ];
    "twitter" = ps: with ps; [ twitterapi ];
    "ubus" = ps: with ps; [ openwrt-ubus-rpc ];
    "ue_smart_radio" = ps: with ps; [ ];
    "uk_transport" = ps: with ps; [ ];
    "unifi" = ps: with ps; [ aiounifi ];
    "unifi_direct" = ps: with ps; [ pexpect ];
    "unifiled" = ps: with ps; [ unifiled ];
    "unifiprotect" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pyunifiprotect unifi-discovery
    "universal" = ps: with ps; [ ];
    "upb" = ps: with ps; [ upb-lib ];
    "upc_connect" = ps: with ps; [ connect-box ];
    "upcloud" = ps: with ps; [ upcloud-api ];
    "updater" = ps: with ps; [ ];
    "upnp" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ];
    "uptime" = ps: with ps; [ ];
    "uptimerobot" = ps: with ps; [ pyuptimerobot ];
    "usb" = ps: with ps; [ aiohttp-cors pyserial pyudev ];
    "uscis" = ps: with ps; [ ]; # missing inputs: uscisstatus
    "usgs_earthquakes_feed" = ps: with ps; [ geojson-client ];
    "utility_meter" = ps: with ps; [ croniter ];
    "uvc" = ps: with ps; [ uvcclient ];
    "vacuum" = ps: with ps; [ ];
    "vallox" = ps: with ps; [ ]; # missing inputs: vallox-websocket-api
    "vasttrafik" = ps: with ps; [ ]; # missing inputs: vtjp
    "velbus" = ps: with ps; [ aiohttp-cors pyserial pyudev velbus-aio ];
    "velux" = ps: with ps; [ pyvlx ];
    "venstar" = ps: with ps; [ venstarcolortouch ];
    "vera" = ps: with ps; [ pyvera ];
    "verisure" = ps: with ps; [ vsure ];
    "versasense" = ps: with ps; [ pyversasense ];
    "version" = ps: with ps; [ pyhaversion ];
    "vesync" = ps: with ps; [ pyvesync ];
    "viaggiatreno" = ps: with ps; [ ];
    "vicare" = ps: with ps; [ pyvicare ];
    "vilfo" = ps: with ps; [ vilfo-api-client ];
    "vivotek" = ps: with ps; [ libpyvivotek ];
    "vizio" = ps: with ps; [ pyvizio ];
    "vlc" = ps: with ps; [ python-vlc ];
    "vlc_telnet" = ps: with ps; [ aiovlc ];
    "voicerss" = ps: with ps; [ ];
    "volkszaehler" = ps: with ps; [ volkszaehler ];
    "volumio" = ps: with ps; [ pyvolumio ];
    "volvooncall" = ps: with ps; [ volvooncall ];
    "vultr" = ps: with ps; [ vultr ];
    "w800rf32" = ps: with ps; [ ]; # missing inputs: pyW800rf32
    "wake_on_lan" = ps: with ps; [ wakeonlan ];
    "wallbox" = ps: with ps; [ wallbox ];
    "waqi" = ps: with ps; [ waqiasync ];
    "water_heater" = ps: with ps; [ ];
    "waterfurnace" = ps: with ps; [ waterfurnace ];
    "watson_iot" = ps: with ps; [ ]; # missing inputs: ibmiotf
    "watson_tts" = ps: with ps; [ ibm-watson ];
    "watttime" = ps: with ps; [ aiowatttime ];
    "waze_travel_time" = ps: with ps; [ wazeroutecalculator ];
    "weather" = ps: with ps; [ ];
    "webhook" = ps: with ps; [ aiohttp-cors ];
    "webostv" = ps: with ps; [ aiowebostv sqlalchemy ];
    "websocket_api" = ps: with ps; [ aiohttp-cors ];
    "wemo" = ps: with ps; [ pywemo ];
    "whirlpool" = ps: with ps; [ whirlpool-sixth-sense ];
    "whois" = ps: with ps; [ whois ];
    "wiffi" = ps: with ps; [ wiffi ];
    "wilight" = ps: with ps; [ pywilight ];
    "wirelesstag" = ps: with ps; [ ]; # missing inputs: wirelesstagpy
    "withings" = ps: with ps; [ aiohttp-cors ]; # missing inputs: withings-api
    "wled" = ps: with ps; [ wled ];
    "wolflink" = ps: with ps; [ ]; # missing inputs: wolf_smartset
    "workday" = ps: with ps; [ holidays ];
    "worldclock" = ps: with ps; [ ];
    "worldtidesinfo" = ps: with ps; [ ];
    "worxlandroid" = ps: with ps; [ ];
    "wsdot" = ps: with ps; [ ];
    "x10" = ps: with ps; [ ];
    "xbee" = ps: with ps; [ ]; # missing inputs: xbee-helper
    "xbox" = ps: with ps; [ aiohttp-cors xbox-webapi ];
    "xbox_live" = ps: with ps; [ xboxapi ];
    "xeoma" = ps: with ps; [ pyxeoma ];
    "xiaomi" = ps: with ps; [ ha-ffmpeg ];
    "xiaomi_aqara" = ps: with ps; [ pyxiaomigateway aiohttp-cors ifaddr netdisco zeroconf ];
    "xiaomi_miio" = ps: with ps; [ construct micloud python-miio ];
    "xiaomi_tv" = ps: with ps; [ pymitv ];
    "xmpp" = ps: with ps; [ slixmpp ];
    "xs1" = ps: with ps; [ ]; # missing inputs: xs1-api-client
    "yale_smart_alarm" = ps: with ps; [ yalesmartalarmclient ];
    "yamaha" = ps: with ps; [ rxv ];
    "yamaha_musiccast" = ps: with ps; [ aiohttp-cors aiomusiccast async-upnp-client ifaddr zeroconf ];
    "yandex_transport" = ps: with ps; [ aioymaps ];
    "yandextts" = ps: with ps; [ ];
    "yeelight" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr yeelight zeroconf ];
    "yeelightsunflower" = ps: with ps; [ ]; # missing inputs: yeelightsunflower
    "yi" = ps: with ps; [ aioftp ha-ffmpeg ];
    "youless" = ps: with ps; [ youless-api ];
    "zabbix" = ps: with ps; [ py-zabbix ];
    "zamg" = ps: with ps; [ ];
    "zengge" = ps: with ps; [ ]; # missing inputs: zengge
    "zeroconf" = ps: with ps; [ aiohttp-cors ifaddr zeroconf ];
    "zerproc" = ps: with ps; [ pyzerproc ];
    "zestimate" = ps: with ps; [ xmltodict ];
    "zha" = ps: with ps; [ aiohttp-cors bellows ifaddr pyserial-asyncio pyserial pyudev zeroconf zha-quirks zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp zigpy ];
    "zhong_hong" = ps: with ps; [ ]; # missing inputs: zhong_hong_hvac
    "ziggo_mediabox_xl" = ps: with ps; [ ]; # missing inputs: ziggo-mediabox-xl
    "zodiac" = ps: with ps; [ ];
    "zone" = ps: with ps; [ ];
    "zoneminder" = ps: with ps; [ zm-py ];
    "zwave" = ps: with ps; [ homeassistant-pyozw pydispatcher ];
    "zwave_js" = ps: with ps; [ aiohttp-cors pyserial pyudev zwave-js-server-python ];
  };
  # components listed in tests/components for which all dependencies are packaged
  supportedComponentsWithTests = [
    "abode"
    "accuweather"
    "acmeda"
    "adax"
    "adguard"
    "advantage_air"
    "aemet"
    "agent_dvr"
    "air_quality"
    "airly"
    "airnow"
    "airthings"
    "airtouch4"
    "airvisual"
    "alarm_control_panel"
    "alarmdecoder"
    "alert"
    "alexa"
    "almond"
    "ambee"
    "amberelectric"
    "ambiclimate"
    "ambient_station"
    "analytics"
    "androidtv"
    "apache_kafka"
    "api"
    "apple_tv"
    "apprise"
    "aprs"
    "arcam_fmj"
    "arlo"
    "aseko_pool_live"
    "asuswrt"
    "atag"
    "august"
    "aurora"
    "aurora_abb_powerone"
    "aussie_broadband"
    "auth"
    "automation"
    "awair"
    "aws"
    "axis"
    "azure_devops"
    "azure_event_hub"
    "balboa"
    "bayesian"
    "binary_sensor"
    "blackbird"
    "blebox"
    "blink"
    "blueprint"
    "bluetooth_le_tracker"
    "bmw_connected_drive"
    "bond"
    "bosch_shc"
    "braviatv"
    "broadlink"
    "brother"
    "bsblan"
    "buienradar"
    "button"
    "caldav"
    "calendar"
    "camera"
    "canary"
    "cast"
    "cert_expiry"
    "climacell"
    "climate"
    "cloud"
    "cloudflare"
    "co2signal"
    "color_extractor"
    "comfoconnect"
    "command_line"
    "compensation"
    "config"
    "configurator"
    "control4"
    "conversation"
    "coolmaster"
    "coronavirus"
    "counter"
    "cover"
    "cpuspeed"
    "crownstone"
    "daikin"
    "darksky"
    "datadog"
    "debugpy"
    "deconz"
    "default_config"
    "demo"
    "denonavr"
    "derivative"
    "device_automation"
    "device_sun_light_trigger"
    "device_tracker"
    "devolo_home_control"
    "devolo_home_network"
    "dexcom"
    "dhcp"
    "diagnostics"
    "dialogflow"
    "directv"
    "discovery"
    "dlna_dmr"
    "dnsip"
    "doorbird"
    "dsmr"
    "dte_energy_bridge"
    "duckdns"
    "dunehd"
    "dynalite"
    "eafm"
    "ecobee"
    "econet"
    "efergy"
    "elgato"
    "elkm1"
    "elmax"
    "emonitor"
    "emulated_hue"
    "emulated_kasa"
    "emulated_roku"
    "energy"
    "enocean"
    "enphase_envoy"
    "environment_canada"
    "epson"
    "esphome"
    "everlights"
    "evil_genius_labs"
    "ezviz"
    "faa_delays"
    "facebook"
    "facebox"
    "fail2ban"
    "fan"
    "feedreader"
    "ffmpeg"
    "fido"
    "file"
    "filesize"
    "filter"
    "fireservicerota"
    "firmata"
    "fjaraskupan"
    "flic"
    "flick_electric"
    "flipr"
    "flo"
    "flume"
    "flunearyou"
    "flux"
    "flux_led"
    "folder"
    "folder_watcher"
    "foobot"
    "forecast_solar"
    "foscam"
    "freebox"
    "freedns"
    "freedompro"
    "fritz"
    "fritzbox"
    "fritzbox_callmonitor"
    "fronius"
    "frontend"
    "garages_amsterdam"
    "gdacs"
    "generic"
    "generic_hygrostat"
    "generic_thermostat"
    "geo_json_events"
    "geo_location"
    "geo_rss_events"
    "geofency"
    "geonetnz_quakes"
    "geonetnz_volcano"
    "gios"
    "github"
    "glances"
    "goalzero"
    "gogogate2"
    "goodwe"
    "google"
    "google_assistant"
    "google_domains"
    "google_pubsub"
    "google_translate"
    "google_travel_time"
    "google_wifi"
    "gpslogger"
    "graphite"
    "gree"
    "group"
    "growatt_server"
    "guardian"
    "habitica"
    "hangouts"
    "harmony"
    "hassio"
    "hddtemp"
    "heos"
    "here_travel_time"
    "hisense_aehw4a1"
    "history"
    "history_stats"
    "hive"
    "hlk_sw16"
    "home_connect"
    "home_plus_control"
    "homeassistant"
    "homekit"
    "homekit_controller"
    "homematic"
    "homematicip_cloud"
    "homewizard"
    "honeywell"
    "html5"
    "http"
    "huawei_lte"
    "hue"
    "huisbaasje"
    "humidifier"
    "hunterdouglas_powerview"
    "hvv_departures"
    "hyperion"
    "ialarm"
    "iaqualink"
    "icloud"
    "ifttt"
    "ign_sismologia"
    "image"
    "image_processing"
    "imap_email_content"
    "influxdb"
    "input_boolean"
    "input_button"
    "input_datetime"
    "input_number"
    "input_select"
    "input_text"
    "insteon"
    "integration"
    "intellifire"
    "intent"
    "intent_script"
    "ios"
    "iotawatt"
    "ipma"
    "ipp"
    "iqvia"
    "islamic_prayer_times"
    "isy994"
    "izone"
    "jellyfin"
    "jewish_calendar"
    "juicenet"
    "keenetic_ndms2"
    "kira"
    "kmtronic"
    "knx"
    "kodi"
    "konnected"
    "kraken"
    "kulersky"
    "lastfm"
    "launch_library"
    "lcn"
    "light"
    "litterrobot"
    "local_file"
    "local_ip"
    "locative"
    "lock"
    "logbook"
    "logentries"
    "logger"
    "london_air"
    "lookin"
    "lovelace"
    "luftdaten"
    "lutron_caseta"
    "lyric"
    "mailbox"
    "manual"
    "manual_mqtt"
    "maxcube"
    "mazda"
    "media_player"
    "media_source"
    "melcloud"
    "meraki"
    "met"
    "met_eireann"
    "meteoclimatic"
    "mhz19"
    "microsoft_face"
    "microsoft_face_detect"
    "microsoft_face_identify"
    "mikrotik"
    "mill"
    "min_max"
    "minecraft_server"
    "minio"
    "mobile_app"
    "modbus"
    "modem_callerid"
    "modern_forms"
    "mold_indicator"
    "moon"
    "motion_blinds"
    "motioneye"
    "mqtt"
    "mqtt_eventstream"
    "mqtt_json"
    "mqtt_room"
    "mqtt_statestream"
    "mullvad"
    "mutesync"
    "my"
    "myq"
    "mysensors"
    "mythicbeastsdns"
    "nam"
    "namecheapdns"
    "nanoleaf"
    "neato"
    "ness_alarm"
    "nest"
    "netatmo"
    "netgear"
    "network"
    "nexia"
    "nightscout"
    "nina"
    "no_ip"
    "notify"
    "notion"
    "nsw_rural_fire_service_feed"
    "nuki"
    "number"
    "nut"
    "nws"
    "nx584"
    "octoprint"
    "omnilogic"
    "onboarding"
    "oncue"
    "ondilo_ico"
    "onewire"
    "onvif"
    "open_meteo"
    "openalpr_cloud"
    "openalpr_local"
    "openerz"
    "opengarage"
    "openhardwaremonitor"
    "opentherm_gw"
    "openuv"
    "openweathermap"
    "opnsense"
    "overkiz"
    "ovo_energy"
    "owntracks"
    "ozw"
    "p1_monitor"
    "panel_custom"
    "panel_iframe"
    "persistent_notification"
    "person"
    "philips_js"
    "pi_hole"
    "picnic"
    "ping"
    "plaato"
    "plant"
    "plex"
    "plugwise"
    "point"
    "poolsense"
    "profiler"
    "prometheus"
    "prosegur"
    "proximity"
    "push"
    "pushbullet"
    "pvoutput"
    "pvpc_hourly_pricing"
    "python_script"
    "qld_bushfire"
    "rachio"
    "radarr"
    "rainforest_eagle"
    "rainmachine"
    "random"
    "rdw"
    "recollect_waste"
    "recorder"
    "reddit"
    "remote"
    "renault"
    "rest"
    "rest_command"
    "rflink"
    "rfxtrx"
    "ridwell"
    "ring"
    "risco"
    "rituals_perfume_genie"
    "rmvtransport"
    "roku"
    "roomba"
    "roon"
    "rpi_power"
    "rss_feed_template"
    "rtsp_to_webrtc"
    "ruckus_unleashed"
    "safe_mode"
    "samsungtv"
    "scene"
    "screenlogic"
    "script"
    "search"
    "season"
    "select"
    "sense"
    "senseme"
    "sensor"
    "sentry"
    "seventeentrack"
    "sharkiq"
    "shell_command"
    "shelly"
    "shopping_list"
    "sia"
    "sigfox"
    "sighthound"
    "signal_messenger"
    "simplisafe"
    "simulated"
    "siren"
    "slack"
    "sleepiq"
    "sma"
    "smappee"
    "smart_meter_texas"
    "smarthab"
    "smartthings"
    "smarttub"
    "smhi"
    "smtp"
    "snips"
    "solaredge"
    "solarlog"
    "solax"
    "soma"
    "somfy"
    "somfy_mylink"
    "sonarr"
    "songpal"
    "sonos"
    "soundtouch"
    "spaceapi"
    "spc"
    "speedtestdotnet"
    "spider"
    "spotify"
    "sql"
    "squeezebox"
    "srp_energy"
    "ssdp"
    "starline"
    "startca"
    "statistics"
    "statsd"
    "steamist"
    "stream"
    "stt"
    "subaru"
    "sun"
    "surepetcare"
    "switch"
    "switchbot"
    "switcher_kis"
    "syncthing"
    "syncthru"
    "synology_dsm"
    "system_bridge"
    "system_health"
    "system_log"
    "tado"
    "tag"
    "tailscale"
    "tasmota"
    "tcp"
    "telegram"
    "tellduslive"
    "template"
    "tesla_wall_connector"
    "threshold"
    "tibber"
    "tile"
    "time_date"
    "timer"
    "tod"
    "tolo"
    "tomato"
    "toon"
    "totalconnect"
    "tplink"
    "traccar"
    "trace"
    "tractive"
    "tradfri"
    "trafikverket_weatherstation"
    "transmission"
    "transport_nsw"
    "trend"
    "tts"
    "tuya"
    "twentemilieu"
    "twilio"
    "twinkly"
    "twitch"
    "uk_transport"
    "unifi"
    "unifi_direct"
    "universal"
    "upb"
    "upcloud"
    "updater"
    "upnp"
    "uptime"
    "uptimerobot"
    "usb"
    "usgs_earthquakes_feed"
    "utility_meter"
    "uvc"
    "vacuum"
    "velbus"
    "venstar"
    "vera"
    "verisure"
    "version"
    "vesync"
    "vicare"
    "vilfo"
    "vizio"
    "vlc_telnet"
    "voicerss"
    "volumio"
    "vultr"
    "wake_on_lan"
    "wallbox"
    "water_heater"
    "watttime"
    "waze_travel_time"
    "weather"
    "webhook"
    "webostv"
    "websocket_api"
    "wemo"
    "whirlpool"
    "whois"
    "wiffi"
    "wilight"
    "wled"
    "workday"
    "worldclock"
    "wsdot"
    "xbox"
    "xiaomi"
    "xiaomi_aqara"
    "xiaomi_miio"
    "yale_smart_alarm"
    "yamaha"
    "yamaha_musiccast"
    "yandex_transport"
    "yandextts"
    "yeelight"
    "youless"
    "zeroconf"
    "zerproc"
    "zha"
    "zodiac"
    "zone"
    "zwave"
    "zwave_js"
  ];
}