Comments (10)
Are we in a stage where we want to publish the binary in some central place and advertise it as fully functional?
I think, not yet. What is on the list, is to encrypt the messages database and store in a sled db, instead of a plain json file. This is definitely the most important non-user facing feature. Another feature, more important for users, is to implement attachments preview view links.
from gurk-rs.
I have some experience with packaging deb, but only in private repositories. I will take a look what is needed to land in the official repo.
@gferon You have experience with Fedora, right?
from gurk-rs.
Debian recommends to not use Repos that are not part of Debian: https://wiki.debian.org/DontBreakDebian
However, if you'd let the binary update itself, that'd also work. :D
With youtube-dl, simply typing youtube-dl --update
updates it. Something like that would also be great.
But getting gurk into the official repos of a distribution opens it to a much broader audience and should be preferred.
from gurk-rs.
@gferon You have experience with Fedora, right?
I do, it should be relatively straightforward.
Two things I'm not too sure of:
- I seem to remember that Debian packages crate separately, and dynamically link them together, which makes the job much harder given the dependency tree of
gurk
- Are we in a stage where we want to publish the binary in some central place and advertise it as fully functional?
from gurk-rs.
Hi! I'm a Debian Maintainer, and I'd love to see gurk in the main Debian repos too :D
Unfortunately I have little familiarity with Rust's ecosystem (I have no issues with the language itself though), and I've never packaged a Rust program for Debian (yet).
According to the Readme gurk cannot be published to crates.io because of its dependencies, and @gferon's comment isn't reassuring either :/
Could you please expand a bit on gurk's atypical dependency tree?
from gurk-rs.
Thanks for your interest in packaging this. We have two main problems with packaging at the moment:
- We depend on libsignal, which is the official library from the Signal organization, and we started a discussion where they explained that it's a good idea but they would like to drive this effort and decide how to do it. In the Rust ecosystem, crates are usually first distributed on crates.io (which libsignal is not)
- The underlying projects powering Gurk need rather frequent adjustment (every few weeks at best) to catch up with changes in the Signal service, which would make it rather incompatible with the release cycle of a stable distribution like Debian
from gurk-rs.
As @gferon pointer it out, the official client library by the Signal organization is not published on crates.io, and therefore it is not possible to publish this crate on crates.io too, because we depend on Signal's library transitively (https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#specifying-dependencies-from-git-repositories).
The underlying projects powering Gurk need rather frequent adjustment (every few weeks at best) to catch up with changes in the Signal service, which would make it rather incompatible with the release cycle of a stable distribution like Debian
This actually might be ok, as long as we keep backwards compatibility in gurk. And usually we do.
from gurk-rs.
What I meant by that is the applications just stop working because of changes in the servers.
from gurk-rs.
Got it. You mean the stability of the features. From my personal experience, the application is quite stable for me. I am using it for more than 2 years almost every day. The most unstable feature was so far the groups. But it seems that signal is introducing quite some changes there. To mention one is the switch from phone numbers to uuids.
from gurk-rs.
Another example is registration and linking, and more recently additional http statuses for error handling, that had to be repeatedly fixed. New features also became required, like sealed sender messages.
from gurk-rs.
Related Issues (20)
- Crash upon receiving messages HOT 1
- QR-code doesnt show up on nixos HOT 5
- Install fails HOT 4
- Import message history from Signal backup
- General Issues HOT 2
- Problem running on Mac Monterey 12.6 HOT 4
- Add a release for armv7l HOT 5
- Configurable notifications HOT 2
- Error sending request HOT 5
- Add a nightly build
- Reduce number of system notifications on startup HOT 2
- Lost messages HOT 4
- Retrieve profile via profile keys does not work HOT 1
- Reuse buffers when drawing
- Gurk always creates a log file even if `verbose` is turned off HOT 2
- Feature request: copy to system clipboard from selected message HOT 6
- relink: "Error: no provisioning message received" HOT 7
- Replace json storage
- Paste attachment from clipboard
- selected_message offset when scrolling over date separator
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gurk-rs.