aaaaand - sending the friendship request
let me do some tidying, some bug hunting, some nicer UI for adding global names and some additional testing before I release it on mainnet …
… but we’re really close! ![]()
aaaaand - sending the friendship request
let me do some tidying, some bug hunting, some nicer UI for adding global names and some additional testing before I release it on mainnet …
… but we’re really close! ![]()
Does this also mean a possibility to send a message to a friend when the friend is not online?
Hmm - that would need to be done differently I’m afraid but a good additional feature to be planned ![]()
I’m adding it to the roadmap!
Until 17th (time really is running..)
friendship requests (
with public profile preview)
simple global names for easier discovery (concept is running - needs some bug fixing and tidying.. )
account setup only on request (so when opening friends the first time it will not automatically create the account - you just may have clicked a link and didn’t even want to use friends… - but ask you if you want to create an account.)
guided account creation. Asking the user for account name, Avatar, public name etc while the account is being set up in the background.
Documentation about the Features and how to use Friends (a simple video that shows the setup process +updating the github README)
Developer-Documentation (how to run friends locally in dev mode and do live-debugging with main net-connection → might be helpful for others wanting to develop dweb apps too)
Beyond 17th:
simplifying and documenting external stylesheets for easier theming of friends
implementing plugins (loaded from autonomi) as JavaScript Webcomponents.
optionally persisting chat history with friends via scratchpads
releasing a python version of smokesigns (name already reserved)
and creating a simple demo on how to use it to connect (from everywhere in the world) via WebRTC to e.g. a locally running Raspberry Pi with a camera and fetching a picture it takes with a pi-camera
python terminal chat (friends compatible - only selecting friends and chatting with them as text only; no adding/removing of friends etc)
offline DMs to friends (friend specific offline Scratchpad - message encrypted via public key of a asymmetric public key read from friends profile)
more extensive profile pages
the whole Friends app as JS WebComponent
Friends bundled with dweb via Tauri as standalone app
multi session / multi user chats
Edit/PS: I think after I have the first kind of nice to use version online I’ll go through the thread and revisit suggested features to get them on the roadmap somewhere
I’ve funded you with:-
0.000500 ETH
which should be enough for a few hundred transactions.
and
1 ANT
which should be more or less a lifetime’s supply! I have a feeling this is like the early days of Bitcoin where people were flinging each other whole Bitcoins just for a giggle.
I have some time to day to play with these CLI commands so I decided to try Friends for the first time. @riddim I will document my noob journey, maybe it will be useful for you to improve something or maybe you will just have a good laugh - both is acceptable for me ![]()
First, I was looking for installation manual/instructions, I think your first post in the thread could include it, too. But I found it quickly - riddim/friends - Codeberg.org
I naively thought that the command cargo install --locked dweb-cli will do everything for me but I ran into the first problem:
Command ‘cargo’ not found, but can be installed with:
sudo snap install rustup # version 1.27.1, or
sudo apt install cargo # version 1.73.0+dfsg0ubuntu1-0ubuntu1
sudo apt install rustup # version 1.26.0-3
I have no idea what is cargo, so I tried the first command which didn’t work (I’m using Linux VM on my Mac with Parallels which I just bought for these Autonomi purposes). Second command worked fine and installed that bloody cargo on my VM.
So I tried cargo install --locked dweb-cli again but got another error:
error: failed to parse lock file at: /home/parallels/.cargo/registry/src/index.crates.io-6f17d22bba15001f/dweb-cli-0.10.1/Cargo.lock
Caused by:
lock file version 4 requires-Znext-lockfile-bump
Absolutely zero idea what that means, I started Grokking 1, 2, etc. Now I have even less idea what’s going on. I basically try all these random commands and hope it will start working, somehow.
However, I’m not able to get over this, so far I have not found a solution.
All of that is alien language to me, unfortunately. I just wanted to try Friends. But in order to try Friends, I have to install dweb. But in order to install dweb, I have to install cargo. But after installing cargo, I still can’t install dweb so I’m stuck unfortunately and can’t join the chat yet.
Do you have any ideas of what could I do?
You need to remove cargo again and then you should install
Rustup Install Rust - Rust Programming Language (the rust development stuff) from it’s original source
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Coming with cargo and everything needed
Then you fire the dweb install command you found
And then you should be ready to rumble
Yes sounds like I
forgot to mention that rustup is needed to install and yes I can include that in the first post!
Should create a tauri native build/release coming with dweb out of the box for people that don’t want/need the whole rust development toolchain
Thank you very much for the feedback! @Tom1
… I will release the latest version of friends ASAP… The currently online version isn’t ideal if people want to test properly and see the friendship requests and stuff in action…
oh - and you need to set a SECRET_KEY in the environment-variables to match a private key that holds some coin to be able to pay for the scratchpads @Tom1
quickly reserved riddim, rid and 0 for me as public identifiers xD
building and uploading this version to mainnet now
quick hint - this version is badly tested and is the first “kind of releasable” version from what I see
but it includes
… I’m releasing it before I feel comfortable because the currently online version is significantly worse in terms of UX
… and because interest seems to be rising and I don’t want you to get annoyed by the other super early state …
…it’s still a very early version and will contain bugs and is not yet where I’d like the UX to be
Feel free to search for “riddim” and send me a friendship request! ![]()
(but because of family stuff I may only be able to answer them tonight when everyone else is sleeping)
Thank you, that’s a really good support! As trying to remove cargo through CLI gave another bunch of errors I decided to simply delete my VM and create a new, fresh, immaculate and untainted one ![]()
Trying your command curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh results in:
Rust is installed now. Great!
Thank you! Now let’s go to dweb… cargo install --locked dweb-cli
Command ‘cargo’ not found, but can be installed with:
sudo snap install rustup # version 1.27.1, or
sudo apt install cargo # version 1.73.0+dfsg0ubuntu1-0ubuntu1
sudo apt install rustup # version 1.26.0-3
See ‘snap info rustup’ for additional versions.
Shouldn’t be the cargo installed now??? Oops, my bad, I had to close the terminal and open it again. Now it is compiling & building like 850 different things and I pray for all of them to go through ![]()
Not today, I have these errors:
warning: openssl-sys@0.9.109: Could not find directory of OpenSSL installation, and this
-syscrate cannot proceed without this knowledge. If OpenSSL is installed and this crate had trouble finding it, you can set theOPENSSL_DIRenvironment variable for the compilation process. See stderr section below for further information.
error: failed to run custom build command foropenssl-sys v0.9.109
then so many lines of some other errors and another warning on the bottom:
warning: build failed, waiting for other jobs to finish…
error: failed to compiledweb-cli v0.10.1, intermediate artifacts can be found at/tmp/cargo-installv2Ov30.
To reuse those artifacts with a future compilation, set the environment variableCARGO_TARGET_DIRto that path.
Let me try sudo apt-get update sudo apt-get install libssl-dev as per Grok’s recommendation, then close terminal and try dweb again… nope, this doesn’t work…
After trying many random commands with no clue what they mean, I finally found a good advice from Grok:
Check for Specific Compiler Requirements
- On Linux, ensure you have pkg-config installed, as openssl-sys uses it to locate OpenSSL:
sudo apt-get install pkg-config
This last command is working and after restarting terminal and trying to install dweb again, I feel like I climbed really big mountain today! dweb is installed ![]()
Installed package
dweb-cli v0.10.1(executabledweb)
So in theory, I should just open Friends with dweb open a447871043968be2be1628584026cad30b824009a30eab43db3ee6dd8c0990051c27160cc8d1662da763d57c41c091f6, right?
this command opens Firefox on my VM but I get another error:
Unable to connect
Firefox can’t establish a connection to the server at 127.0.0.1:5537.
The site could be temporarily unavailable or too busy. Try again in a few moments. If you are unable to load any pages, check your computer’s network connection. If your computer or network is protected by a firewall or proxy, make sure that Firefox is permitted to access the web.
I have to ask @riddim again. I was able to install the dweb but now when trying to finally open Friends, I have no idea how to actually do it.
thank you very much for your persistence - you’re nearly there @Tom1 ! (and you did everything right there! with libel and pkg-config
)
in one terminal you do
dweb serve
and in the other terminal you can fire your
dweb open friends (same as the ugly number - but dweb added the friends address as known name)
first start will take a while and it may look like hanging while it creates the account package, profile etc … but after a while you should see the app in your firefox (and I guess I should remove the themes input field on account creation for now - the previous themes are incompatible and I haven’t defined a simple and good format for new themes yet … it can just be left blank)
correctly set up app looks like this:
wow it looks like its doing something now!!! Btw, how do I import my wallet there? I need ETH and ANT in the wallet, right? Because I get error when trying to create an account:
Error creating account: Error: HTTP 400: Bad Request
I suppose this is because I don’t have a wallet connected to cover the cost, is that right?
Also when trying to search for riddim, I get:
Profile not found
easiest way is to add a secret key to a wallet (used for autonomi stuff and with just little coin on it) in your .bashrc file (and reloading the terminal before doing the dweb serve)
damn - I guess that’s the badly tested part -.-" …
I feel you!
That’s the general picture with me as well, and a big blocker for spreading the word. Even if I can in the end manage with some help from here, I cannot see myself helping anyone else through it.
These apps should not be so interdependent on so many other things.
Great, let me try. This should be in the instructions as well imho. Or directly in the GUI, preferably.
will get back to you @Tom1 / @Toivo - sorry but no time anymore in this second … I will investigate and debug why you couldn’t find me … That’s a shame…
Not possible to use a pc now but
True for the typical end user.
But developing like this while autonomi libs, dweb and friends are all iterating fast is the fastest path forward…
This will change with the roadmap point
This will result in a regular installable app on windows/Linux/MacOS
I think (!) it should even be possible to use / modify the native tauri app update functionality to fetch the new releases from autonomi instead of a regular clearnet server and inform the users about its available +suggesting to update with a simple click on ‘update now’
This is me:-
jaded_old_storage_guy
This looks like an easy task but still. It involves so many steps where one can easily make a mistake.
Error creating account: Error: HTTP 400: Bad Request
Hmmm that’s strange
Does dweb give out correct balances on startup of the server? I think after firing dweb serve it should print eth and ant balance
Does it print out your private key if you execute echo $SECRET_KEY
In the terminal where you do the dweb serve