Librem 5 Capabilities That No Other Phone Has

https://www.freedesktop.org/software/ModemManager/man/1.0.0/mmcli.8.html

Creating a new SMS message & storing it
mmcli -m 0 --messaging-create-sms=“text=‘Hello world’,number=’+1234567890’”

Sending SMS messages from files
sudo mmcli -m 0 --messaging-create-sms=“number=’+1234567890’” --messaging-create-sms-with-data=/path/to/your/file

Not sure if the ‘sudo’ is needed as it appears to be missing from the first example. Maybe the user needs to be in some unix group to not need ‘sudo’.

3 Likes

I don’t have my Librem 5 yet, but I can already state the number one thing, I can remove every app, replace every app, and modify every app.

Besides that, I don’t have to jump through any hoops to interact with my other Linux computers.

AFAICT, these things are true of any Linux phone, but the reason I chose the Librem 5 is the resource dedication. Paying a development team and already having a production infrastructure in place were two big sellers.

9 Likes

The Librem 5 (and the Pinephone) can run a complete desktop GNU+Linux OS out of the box.

(Or, if you prefer, a complete OS with some modifications or optimizations.)

2 Likes

I agree, this is the main point. Especially being able to modify things.

5 Likes

Heh, you can remove apps, and the kernel, and the libraries, and the battery, the modem and WiFi cards even :slight_smile: Not necessarily all recommended things to do.

9 Likes

That’s an important part, thanks @dcz for the hints about how to rebuild and install modified kernels, that has been very useful for me. Not to mention fun! :slight_smile: There is a thread about that here if others want to dive in: Librem 5 kernel hacking

2 Likes

It does still seem to be like that. That is far from ideal for real use, but OK for playing around and testing.

Which raises the question as to what the correct way of restarting chatty afterwards is (short of rebooting the phone)?

Yes, it does appear to be needed. To create, send or delete an SMS it needed the sudo but to list the messages did not (which all seems fair enough). Otherwise:

error: couldn't create new SMS: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Core.Unauthorized: PolicyKit authorization failed: not authorized for 'org.freedesktop.ModemManager1.Messaging''

So perhaps one should not use sudo and instead should authorise specified non-root users in some way.

For completeness, to actually send an SMS needs: sudo mmcli --send -s N
where N is replaced by the SMS message index (as displayed at the time of creation or subsequently by listing).

Related to that, I routinely have an ssh session open to the phone.

If I need to do something e.g. relating to the network, for example, but unrelated to the phone it doesn’t matter which shell window I pick. The same command works the same whether it is a shell window that is remote onto the phone, or one that is local to the computer I am using.

1 Like

Switching out the modem with another, for replacement or upgrading, is the one feature the Librem 5 has that I am pretty sure literally no other phone in a brick-smartphone form factor has at the moment. Most of the other features can be replicated in the Pinephone or in some of the more open Android phones like the OnePlus One.

The Librem 5 is also, to my knowledge, the only phone that is fully capable with an OS without any proprietary blobs in it at all.

4 Likes

I have one for sell. If you are looking to buy… its not a ripper or jacker I am selling a Librem 5 usa for 1500.00 rn. Please 6614931781 call text or reply here if your not comfortable using the phone to communicate with.

It looks like it’s not so much about the Librem 5 can do, but about what we might be able to make it do in the future that is exciting. I agree also that it’s the linux itself and not living in a jail that is exciting. If there are two rooms that you could choose to live in, and one room has an unlocked door while the other room has a door that is locked from the outside, most of us would choose to live in the room with a door that you can exit if you want to.

2 Likes

One way to handle it is to just pause the chatty process and resume it afterwards. The following works for me (just replace the “+46numberhere” with the actual phone number to send to.):

# Pause chatty
killall -STOP chatty

# Create SMS and save its id
id=`sudo mmcli -m any --messaging-create-sms="text='Hello world',number='+46numberhere'" | gawk -F/ '{print $6}'`

echo id = $id

# Send SMS
sudo mmcli -s $id --send

# Resume chatty
killall -CONT chatty

The part picking out the message id number uses gawk, installed using sudo apt install gawk.

1 Like

I would use cut rather than (g)awk for a relatively straightforward text operation. You can even do it directly in shell (with assumptions). Example:

id=/org/freedesktop/ModemManager1/SMS/6
id=${id/?*\/SMS\/}
echo id = $id

You could of course write a (longer, more complex) pattern that more exactly reflects the text operation being done by gawk or cut.

Could you explain what that means? It looks like something Captain Haddock would say. :smiley:

2 Likes

man bash of course gives the full explanation but …

${id} will substitute the value of id
${id/pattern/replace} will substitute the value of ‘id’ after matching against ‘pattern’ and replacing the matched portion of ‘id’ with ‘replace’. However if ‘replace’ is the empty string then you can omit ‘/replace’ and the effect is to delete the matched portion, and that is what we are doing here.

Now unfortunately the delimiter for this variant of ${id} substitution is / and that happens to occur throughout the value of id, so we need to backslash escape the uses of / within the pattern in order to make them literally matched characters rather than delimiters.

So pattern is really ?*/SMS/

so we are matching any one character followed by zero or more characters followed by slash followed by SMS followed by slash

and deleting everything we matched. So we are left with just the number at the end.

A more correct version would be ${id/\/*\/*\/*\/*\/} so the pattern is really /*/*/*/*/ and again that leaves just the number at the end.

2 Likes

You might want to look into mosh, as that survives changing networks and suspends of both laptop and phone: https://mosh.org/

2 Likes

This may not be what you mean, but on an Android phone you can schedule a text message by holding down the send icon until you get the schedule to send menu. A fairly new feature I think.

The sore point for me is that I like to send texts from my computer and the web based Google messenger does not support this. I’ve had to resort to sending text messages as emails because that is something easily done in Gmail and Thunderbird.

And what if the locked room has a free buffet, 26 movie streaming channels and a massage chair, while the open room basically has a metal chair and a table?

Sure, Apple and Android devices are locked devices that don’t let you easily change how they do stuff, but the things they do they do incredibly well, and there are a lot of useful things they do.

What use is a phone that does not spy on the information I put into its apps, if there are no apps to use in the first place? And let’s be honest, the Librem 5 will never be able to do 90% of what an Apple or Android device can do. Proprietary 2FA code generation for virtually every single different bank out there, apps for local public transportation in every city of the world, integrated apps for airline travel, e-mail, navigation, games, anything involving NFC … None of these will ever exist on the Librem 5, and you don’t get the same experience from an HTML page either (if there is even an HTML version of the service you’re looking to use).

So far in this thread I have seen nothing an average user might find useful. So keep 'em coming.

1 Like

You sound very confident. It’s our mission to prove you wrong. I’ll give it to you that it will be tough, but there’s some momentum in places like this: https://publiccode.eu/

3 Likes

That was fast :slight_smile:

But yes, right now that is the impression I have. And I’d be happy if you prove me wrong, but you cannot deny that it will be impossible to bring many applications to the Librem 5 because of the proprietary data involved and the small user base of it not motivating companies to port their application to this phone.

The potential exists that an Android app could be run inside a captive environment within the Librem 5. So the user gets to choose which particular “streaming channels” are worth compromising privacy in order to have and at the same time have somewhat better control over the level of privacy compromise.

The reality is that on my existing mainstream phone about 99.999% of the available apps are useless to me and I don’t use them. For the things that I do use, there are so many duplicates where the alternatives are largely equivalent to each other. So the quoted figure of “”“90%”"" involves a certain amount of inflation.

Well yeah, without the hardware, the Librem 5 is not doing NFC, unless someone produces a USB-C dongle for it.

1 Like