Rust Programming

8144 readers
2 users here now

founded 6 years ago
MODERATORS
201
202
 
 

Announcement on NixOS Discourse

Features

  • Hash prefetching powered by nurl
  • Dependency inference for Rust packages using the Riff registry and python projects
  • Interactive prompts with fuzzy tab completions
  • License detection
  • Supported builders
    • stdenv.mkDerivation
    • buildRustPackage
    • buildPythonApplication and buildPythonPackage
    • buildGoModule
  • Supported fetchers
    • fetchCrate
    • fetchFromGitHub
    • fetchFromGitLab
    • fetchFromGitea
    • fetchPypi
    • All other fetchers supported by nurl are also supported, you just have to specify the tags manually

Usage

Usage: nix-init [OPTIONS] <OUTPUT>

Arguments:
  <OUTPUT>  The path to output the generated file to

Options:
  -u, --url <URL>        Specify the URL
  -c, --config <CONFIG>  Specify the config file
  -h, --help             Print help
  -V, --version          Print version
203
 
 

cross-posted from: https://group.lt/post/44860

Developers across government and industry should commit to using memory safe languages for new products and tools, and identify the most critical libraries and packages to shift to memory safe languages, according to a study from Consumer Reports.

The US nonprofit, which is known for testing consumer products, asked what steps can be taken to help usher in "memory safe" languages, like Rust, over options such as C and C++. Consumer Reports said it wanted to address "industry-wide threats that cannot be solved through user behavior or even consumer choice" and it identified "memory unsafety" as one such issue. 

The report, Future of Memory Safety, looks at range of issues, including challenges in building memory safe language adoption within universities, levels of distrust for memory safe languages, introducing memory safe languages to code bases written in other languages, and also incentives and public accountability.

More information:

204
205
1
submitted 2 years ago* (last edited 2 years ago) by winnie@lemmy.ml to c/rust@lemmy.ml
 
 

Did you know you can just whip out curly-braces all over the place in Rust and Go?

But why on Earth would you even want to do this?

206
 
 

While the memory safety and security features of the Rust programming language can be effective in many situations, Rust’s compiler is very particular on what constitutes good software design practices. Whenever design assumptions disagree with real-world data and assumptions, there is the possibility of security vulnerabilities–and malicious software that can take advantage of those vulnerabilities. In this post, we will focus on users of Rust programs, rather than Rust developers. We will explore some tools for understanding vulnerabilities whether the original source code is available or not. These tools are important for understanding malicious software where source code is often unavailable, as well as commenting on possible directions in which tools and automated code analysis can improve. We also comment on the maturity of the Rust software ecosystem as a whole and how that might impact future security responses, including via the coordinated vulnerability disclosure methods advocated by the SEI’s CERT Coordination Center (CERT/CC).

Programming Languages Maturity

207
 
 

Rust is a programming language that is growing in popularity. While its user base remains small, it is widely regarded as a cool language. According to the Stack Overflow Developer Survey 2022, Rust has been the most-loved language for seven straight years. Rust boasts a unique security model, which promises memory safety and concurrency safety, while providing the performance of C/C++. Being a young language, it has not been subjected to the widespread scrutiny afforded to older languages, such as Java. Consequently, in this blog post, we would like to assess Rust’s security promises.

Rust Protection in Context, table

208
209
3
There is no such thing as "consensual" C (bafybeidjejxqpij2zzfuyedsheljawl7xesgwo5wer76ghd7fw7q3dpsja.ipfs.cf-ipfs.com)
submitted 2 years ago by Victim_0@lemmy.ml to c/rust@lemmy.ml
 
 
210
 
 

Plume and Lemmy got a shout out on an official Rust site!

211
212
213
 
 
214
 
 

dora is a DHCP server written in Rust using tokio. It is built on the dhcproto library and sqlx. We currently use the sqlite backend, although that could change in the future. The goal of dora is to provide a complete DHCP implementation for IPv4, and eventually IPv6. Dora supports duplicate address detection, ping, binding multiple interfaces, static addresses, etc see example.yaml for all options.

It is, however, an early release version and may contain bugs.

215
 
 

The merge window for the 6.1 release brought in basic support for writing kernel code in Rust — with an emphasis on "basic". It is possible to create a "hello world" module for 6.1, but not much can be done beyond that. There is, however, a lot more Rust code for the kernel out there; it's just waiting for its turn to be reviewed and merged into the mainline. Miguel Ojeda has now posted the next round of Rust patches, adding to the support infrastructure in the kernel.

216
 
 

Just sharing from r/rust

217
218
8
Learn Rust by making a Rogue-like game (bfnightly.bracketproductions.com)
submitted 2 years ago by bbarker@lemmy.ml to c/rust@lemmy.ml
 
 

this tutorial tries to take you from zero (how do I open a console to say Hello Rust) to hero (equipping items to fight foes in a multi-level dungeon). I'm hoping to continue to extend the series.

219
220
 
 

Hi everyone! This is my first post on Lemmy and it's to showcase a little project I've been working on lately which is my first public project made in Rust.

It's a file management tool called Vento, which allows you to move files as if you're playing a text adventure. It's based on an original concept made by a friend of mine on Bash. It consists of three comands: vento, take and drop. I've recorded a demo on Asciinema to showcase its functionality.

asciicast

The project is available to install through Cargo and the source code is hosted on Codeberg. I'm open to suggestions!

221
222
223
224
 
 

Hello all, I'm learning Rust after years of programming mainly in C/C++.

Python has a very neat shelve library: https://docs.python.org/3/library/shelve.html It's basically a dict (hash table), but is located on disk instead of memory. It's great for easy persistence and also for working with massive objects that won't fit into memory.

Is there anything similar for Rust? I could not find any, but I'm still learning Rust and could have missed it.

225
 
 

Nushell, or Nu for short, is a new shell that takes a modern, structured approach to your commandline. It works seamlessly with the data from your filesystem, operating system, and a growing number of file formats to make it easy to build powerful commandline pipelines.

Today, we're releasing version 0.61 of Nu. This release includes UI improvements, many bugfixes, improved glob support, and more.

view more: ‹ prev next ›