UBports Robot Logo UBports Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

    Scheduled Pinned Locked Moved App Development
    79 Posts 14 Posters 5.7k Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Linus67L Offline
      Linus67
      last edited by

      "Hi Brenno, I'm using Greenline on a Pixel 3a (Ubuntu Touch RC). I noticed that the greenline-daemon stays active and consumes significant resources even when notifications are disabled in the app settings. On older devices, this leads to OOM (Out of Memory) crashes and system reboots.
      Feature Request: Could you add a 'Kill Daemon on Exit' toggle for users who don't need background notifications? If notifications are off, the daemon shouldn't stay resident in memory after closing the UI."

      Pixel 3a, works with NextCloud, pihole, Wireguard VPN, Trilium, GhostCloud, Paperless ngx...and a lot of great apps from the Open Store.
      Lenovo Tab M10 HD TB-X306X LTE

      1 Reply Last reply Reply Quote 0
      • Linus67L Offline
        Linus67
        last edited by

        PS:
        Now I use a skript (systemctl --user stop greenline.service) and use it with a Desktop link. This works perfectly for my WhatsApp usage. This way, I can stop all WhatsApp data usage completely if I donโ€™t need Greenline for a few days.

        Pixel 3a, works with NextCloud, pihole, Wireguard VPN, Trilium, GhostCloud, Paperless ngx...and a lot of great apps from the Open Store.
        Lenovo Tab M10 HD TB-X306X LTE

        Vlad NirkyV 1 Reply Last reply Reply Quote 0
        • Vlad NirkyV Offline
          Vlad Nirky @Linus67
          last edited by

          @Linus67
          Could you tell me how to add the script shortcut in Lomiri?
          Greenline is great (to keep my wife happy โ€“ she uses WhatsApp and sees it as the most obvious way to communicate)

          Linus67L 1 Reply Last reply Reply Quote 0
          • Linus67L Offline
            Linus67 @Vlad Nirky
            last edited by

            @Vlad-Nirky

            nano ~/.local/share/applications/gkill.desktop

            ini
            [Desktop Entry]
            Name=Stop Greenline
            Exec=/home/phablet/stop_greenline.sh
            Terminal=false
            Type=Application
            Icon=/home/phablet/Pictures/greenline_stop.png

            Pixel 3a, works with NextCloud, pihole, Wireguard VPN, Trilium, GhostCloud, Paperless ngx...and a lot of great apps from the Open Store.
            Lenovo Tab M10 HD TB-X306X LTE

            Vlad NirkyV 1 Reply Last reply Reply Quote 0
            • Vlad NirkyV Offline
              Vlad Nirky @Linus67
              last edited by

              @Linus67 said:

              nano ~/.local/share/applications/gkill.desktop

              ini
              [Desktop Entry]
              Name=Stop Greenline
              Exec=/home/phablet/stop_greenline.sh
              Terminal=false
              Type=Application
              Icon=/home/phablet/Pictures/greenline_stop.png

              Thank you for this.
              ๐Ÿ™‚

              1 Reply Last reply Reply Quote 0
              • brenno.almeidaB Offline
                brenno.almeida
                last edited by brenno.almeida

                Nice script to stop the daemon, I added to the todo list to include before release

                1 Reply Last reply Reply Quote 1
                • mihaelM Offline
                  mihael
                  last edited by

                  And then how do you restart the service? - simply by restarting the app? or by systemctl --user start greenline.service ?

                  Linus67L brenno.almeidaB 2 Replies Last reply Reply Quote 0
                  • Linus67L Offline
                    Linus67 @mihael
                    last edited by

                    @mihael simply by restarting the app

                    Pixel 3a, works with NextCloud, pihole, Wireguard VPN, Trilium, GhostCloud, Paperless ngx...and a lot of great apps from the Open Store.
                    Lenovo Tab M10 HD TB-X306X LTE

                    1 Reply Last reply Reply Quote 0
                    • C Offline
                      ChromiumOS-Guy @brenno.almeida
                      last edited by ChromiumOS-Guy

                      @brenno.almeida awesome app, switched to it.
                      a thing you should add, is aytanna message indicator support so we can see messages after timer runs out.

                      other then that, i think you should expand settings to include all the standard chat and profile settings.

                      also sqlite db files should be encrypted if possible.

                      brenno.almeidaB nbdynlN 2 Replies Last reply Reply Quote 0
                      • brenno.almeidaB Offline
                        brenno.almeida @mihael
                        last edited by

                        @mihael the app has a built in logic to recover the daemon in case of a crash, which seems to be working here

                        1 Reply Last reply Reply Quote 1
                        • brenno.almeidaB Offline
                          brenno.almeida @ChromiumOS-Guy
                          last edited by

                          @ChromiumOS-Guy what do you mean by seeing the message after time runs out?

                          C 1 Reply Last reply Reply Quote 0
                          • nbdynlN Offline
                            nbdynl @ChromiumOS-Guy
                            last edited by

                            @ChromiumOS-Guy this app is draining my battery faster then my cat can eat, other then that amazing ๐Ÿ˜‚

                            C 1 Reply Last reply Reply Quote 0
                            • C Offline
                              ChromiumOS-Guy @brenno.almeida
                              last edited by

                              @brenno.almeida about that never mind, the background daemon took a bit of time to start handeling notifications properly.

                              1 Reply Last reply Reply Quote 0
                              • C Offline
                                ChromiumOS-Guy @nbdynl
                                last edited by ChromiumOS-Guy

                                @nbdynl compared to a full electron app like whatsnew this might as well use no battery.

                                at least from my perspective its noticeably better, could be improvements considering this is native and comparing it to electron is like having the bar underground, you pass it by existing above ground.

                                to be fair, I have (with greenline) four service daemons that are not optimized running so whatever improvement there is I feel keenly.

                                nbdynlN 1 Reply Last reply Reply Quote 0
                                • nbdynlN Offline
                                  nbdynl @ChromiumOS-Guy
                                  last edited by

                                  @ChromiumOS-Guy also so fast compared to the other apps. he obviously is doing great work

                                  1 Reply Last reply Reply Quote 1
                                  • S Offline
                                    StephPTi
                                    last edited by

                                    Thank you very much for this app. I have everything i need so far and its working well and very fast. until now, the battery usage is also good .

                                    Languages: ๐Ÿ‡ต๐Ÿ‡น๐Ÿ‡บ๐Ÿ‡ธ๐Ÿ‡ซ๐Ÿ‡ท
                                    Phones: POCO X3 NFC

                                    1 Reply Last reply Reply Quote 0
                                    • brenno.almeidaB Offline
                                      brenno.almeida
                                      last edited by

                                      Thanks for the feedback you all, any issues please report.

                                      We have a new release: https://github.com/brennoflavio/greenline/releases

                                      • Experimental support to record voice messages. Give it a try and report if it works for you
                                      • Support for messages with images and buttons
                                      • New icon and splash screen
                                      • Support for deleted messages, both seeing deleted messages and deleting your own messages
                                      Linus67L pparentP 2 Replies Last reply Reply Quote 1
                                      • Linus67L Offline
                                        Linus67 @brenno.almeida
                                        last edited by Linus67

                                        Hi @brenno.almeida

                                        First of all, thank you so much for your incredible work on Greenline! Seeing a native QML WhatsApp client moving forward so quickly on Ubuntu Touch is amazing. The recent alpha builds with voice messages and message deletion show huge progress.
                                        As a tester, I noticed an interesting behavior regarding the main chat list:
                                        The app currently populates the history with every single JID (Jabber ID) available from the server's sync history. This includes old "ghost contacts" (like one-time marketplace buyers), unknown numbers, or old groups that were long deleted or left on the main device. When you click them, they just show an empty chat view.
                                        I suspect that filtering these out isn't a quick "one-click" fix, as the underlying protocol/daemon likely dumps the raw cached stream of all historical chat channels upon connection, without the local filters that the official Android/iOS apps use.
                                        Since you are probably busy with core features, I was thinking about some pragmatic ways to tackle this on the client/UI side whenever you find the time:

                                        Frontend Filtering (QML Delegate): A quick visual fix could be using a filter or modifying the ChatDelegate in QML. If the model's row indicates that there is no lastMessageText (or the timestamp is null), the item's visibility could be set to false and its height to 0.
                                        Database Query Filtering (Backend): If Greenline stores the synced chats in a local SQLite database, modifying the SQL query that populates the QML model might do the trick (e.g., SELECT * FROM chats WHERE last_message_id IS NOT NULL OR unread_count > 0).
                                        

                                        Just wanted to share this observation and some ideas. No rush at allโ€”the app already looks and feels great for an alpha state!
                                        Keep up the fantastic work!

                                        P.S. (Added positive note):
                                        Actually, having this long history of contacts has a surprisingly positive side effect! It acts like a historical WhatsApp-specific phone book. It's amazing to see how incredibly fast, reliable, and battery-friendly Greenline already runs after just about 3 months of development. Itโ€™s a massive upgrade compared to the sluggish, battery-draining WebApp solutions we had before. If you ever decide to filter the main chat list, maybe this "raw list" could be repurposed into a dedicated "WhatsApp Contacts/History" tab in the future?

                                        Pixel 3a, works with NextCloud, pihole, Wireguard VPN, Trilium, GhostCloud, Paperless ngx...and a lot of great apps from the Open Store.
                                        Lenovo Tab M10 HD TB-X306X LTE

                                        brenno.almeidaB 1 Reply Last reply Reply Quote 0
                                        • Linus67L Offline
                                          Linus67
                                          last edited by

                                          One more thing:
                                          In its current state, Greenline is actually the PERFECT messenger for children!
                                          Since it focuses purely on communication without all the bloated social-media distractions like Channels, Communities, or Status tabs, it provides a safe environment. Plus, keeping the contact history ensures that old group connections (like school or sports clubs) aren't lost and remain recognizable.

                                          Thank you for building such a clean, fast, and battery-friendly alternative!

                                          Pixel 3a, works with NextCloud, pihole, Wireguard VPN, Trilium, GhostCloud, Paperless ngx...and a lot of great apps from the Open Store.
                                          Lenovo Tab M10 HD TB-X306X LTE

                                          1 Reply Last reply Reply Quote 0
                                          • pparentP Offline
                                            pparent @brenno.almeida
                                            last edited by pparent

                                            @brenno.almeida

                                            Would you consider doing a confined version of the app without a background deamon, and with the go part only running when the app itself is running? I think it would be usefull for those who don't want notifications all the time, and don't want their battery to be drained by the deamon or are not comfortable with having a whatsapp deamon running at all time. And it would be easier to publish on the openstore!

                                            Thank's a lot for your work! ๐Ÿ˜Š

                                            brenno.almeidaB 1 Reply Last reply Reply Quote 1

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better ๐Ÿ’—

                                            Register Login
                                            • First post
                                              Last post