Repository: ubuntu/gnome-shell-extension-appindicator

Issue #374: No indicators show up on Ubuntu 20.04 due to `domain` not having a `replaceAll`
Created: 2022-10-05T15:33:11Z
Since about the v46 release, I haven't had any app indicators visible in my Ubuntu 20.04 desktop shell. I checked sudo journalctl /usr/bin/gnome-shell and found a bunch of this:
Oct 01 14:02:44 octagon gnome-shell[6853]: JS ERROR: Extension ubuntu-appindicators@ubuntu.com: TypeError: domain.replaceAll is not a function
                                           _init@/home/anovak/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/util.js:469:33
                                           _logStructured@/home/anovak/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/util.js:430:16
                                           debug@/home/anovak/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/util.js:480:16
                                           init/global["--appindicator-extension-on-reload"]@/home/anovak/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/extension.js:41:21
                                           init@/usr/share/gnome-shell/extensions/ubuntu-appindicators@ubuntu.com/extension.js:34:16
                                           _callExtensionInit@resource:///org/gnome/shell/ui/extensionSystem.js:435:50
                                           loadExtension@resource:///org/gnome/shell/ui/extensionSystem.js:348:27
                                           _loadExtensions/<@resource:///org/gnome/shell/ui/extensionSystem.js:601:18
                                           collectFromDatadirs@resource:///org/gnome/shell/misc/fileUtils.js:27:17
                                           _loadExtensions@resource:///org/gnome/shell/ui/extensionSystem.js:576:19
                                           _enableAllExtensions@resource:///org/gnome/shell/ui/extensionSystem.js:610:18
                                           _sessionUpdated@resource:///org/gnome/shell/ui/extensionSystem.js:641:18
                                           init@resource:///org/gnome/shell/ui/extensionSystem.js:56:14
                                           _initializeUI@resource:///org/gnome/shell/ui/main.js:257:22
                                           start@resource:///org/gnome/shell/ui/main.js:146:5

Oct 01 14:02:44 octagon gnome-shell[6853]: JS ERROR: TypeError: domain.replaceAll is not a function
                                           _init@/home/anovak/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/util.js:469:33
                                           _logStructured@/home/anovak/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/util.js:430:16
                                           debug@/home/anovak/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/util.js:480:16
                                           AppIndicatorsNameWatcher/this._watcherId<@/home/anovak/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/util.js:293:24

It looks like it's possible for this function here to be called with something that isn't a string and doesn't have .replace, and that needs to be handled and isn't.

  
    
      gnome-shell-extension-appindicator/util.js
    
    
        Lines 465 to 479
      in
      95157ad
    
  
  
    

        
          
           static _init(domain) { 
        

        
          
               if (Logger._domain) 
        

        
          
                   return; 
        

        
          
            
        

        
          
               const allLevels = Object.values(GLib.LogLevelFlags); 
        

        
          
               const domains = GLib.getenv('G_MESSAGES_DEBUG'); 
        

        
          
               Logger._domain = domain.replaceAll(' ', '-'); 
        

        
          
            
        

        
          
               if (domains === 'all' || (domains && domains.split(' ').includes(Logger._domain))) { 
        

        
          
                   Logger._levels = allLevels; 
        

        
          
               } else { 
        

        
          
                   Logger._levels = allLevels.filter( 
        

        
          
                       l => l <= GLib.LogLevelFlags.LEVEL_WARNING); 
        

        
          
               } 
        

        
          
           }

Duplicate issue #372: Telegram and Nextcloud icons not showing on Wayland
Created: 2022-10-04T13:05:11Z
Not sure what is causing the issue, but icons are not showing on Wayland
Running F37, with v46

Closing comment (2022-10-10T10:17:03Z): Duplicate of #374