RSSAmplifier

Blog

danyspin97's site

Recent content on danyspin97's site

danyspin97.orgRSS feed ↗36 posts

Latest posts

Error recovery at boot with MicroOS and systemd-bless-boot

class: center, middle name: start Error recovery with MicroOS and systemd-bless-boot .purple[.footer[Danilo Spinella SUSE Labs ![:i](fab fa-suse)]] class: left, middle Who am I Danilo Spinella Linux Research Engineer Future Technologies Team @ .green[![:i](fab fa-suse)] background-image: url( https://i.pinimg.com/736x/e4/bb/f6/e4bbf6d987196ca49097a7604d734d89.jpg ) class: left, middle Contents…

Error recovery at boot with MicroOS and systemd-bless-boot

class: center, middle name: start Error recovery with MicroOS and systemd-bless-boot .purple[.footer[Danilo Spinella Fosdem 26 ]] background-image: url( https://i.pinimg.com/736x/e4/bb/f6/e4bbf6d987196ca49097a7604d734d89.jpg ) class: left, middle Who am I Danilo Spinella Linux Research Engineer @ .green[SUSE ![:i](fab fa-suse)] class: left, middle Contents health-checker Boot Loader Specification…

Packaging: Analizziamo il DNA delle distro

class: center, middle name: start Packaging Analizziamo il DNA delle distro background-image: url( https://www.stickycomics.com/wp-content/uploads/update_for_your_computer.jpg ) class: left, middle %whoami Danilo Spinella Linux Research Engineer @ SUSE ![:i](fab fa-suse) class: left, middle Contenuti Distribuzioni Pacchetti Formati dei pacchetti class: left, middle Cos’e’ una…

Boot process for modern Linux

class: center, middle name: start Boot process for modern Linux .header[ ] background-image: url( https://wallpapercave.com/wp/wp3965612.jpg ) class: left, middle Who am I? Danilo Spinella Research Engineer Linux @ SUSE ![:i](fab fa-suse) class: left, middle Contents Boot Process Boot Loader Specification TPM 2.0 Userspace reboot class: left, middle Boot Process class: left, middle Legacy Boot…

rinstall: a modern make install

class: center, middle name: start rinstall A modern “make install” .green[.footer[![:i](fab fa-suse) SUSE Labs]] background-image: url(/img/rinstall/legacy.png) class: left, middle whoami : name : Danilo Spinella role : Software Engineer in Packaging mail : danilo.spinella@suse.com site : danyspin97.org class: left, middle Contents Why build a new tool What does it do? Integration…

openSUSE packaging: is macro the way to go?

class: center, middle name: start openSUSE packaging Is macro the way to go? .green[.footer[![:i](fab fa-suse) SUSE Labs]] background-image: url(/img/opensuse_packaging_macros/chamaleon.jpg) class: left, middle %whoami Danilo Spinella Software Engineer in Packaging class: left, middle %contents Packaging C programs Packaging Python programs Caveats Improvements class: left, middle RPM openSUSE…

Beautiful CLI Apps in Rust

background-image: url(/img/beautiful_cli_apps_in_rust/codemotion_first_page.png) class: left, middle name: start Beautiful CLI Applications in Rust ![:i](fab fa-rust) Danilo Spinella background-image: url(/img/beautiful_cli_apps_in_rust/codemotion_page.png) class: left, middle You can follow at https://shorturl.at/CDFIX background-image: url(/img/beautiful_cli_apps_in_rust/codemotion_page.png)…

openSUSE Packaging for Beginners

class: center, middle name: start openSUSE Packaging for Beginners .footer[3rd June open![:i](fab fa-suse) Conference 2022] class: left, middle Danilo Spinella Software Engineer in Packaging SUSE ![:i](fab fa-suse) class: left, middle Prerequisites Compiling a simple C program Basic knowledge of Linux distributions class: left, middle ![:i](fas fa-list) Contents Packaging basics Create our first…

Writing a Wayland wallpaper daemon in Rust

class: center, middle name: start Writing a Wayland wallpaper daemon in Rust ![:i](fab fa-rust) .footer[29th April 2022 Friday Talks @ ![:i](fab fa-suse)] class: left, middle Danilo Spinella Software Engineer in Packaging SUSE ![:i](fab fa-suse) class: middle, left ![:i](fas fa-list) Contents Introduction to Wayland The Wayland protocol Implementation class: left, middle ![:i](fas…

Supervising processes in modern Linux

class: center, middle name: start Supervising processes in modern Linux ![:i](fab fa-linux) .footer[15th October 2021 Friday Talks @ ![:i](fab fa-suse)] class: left, middle Danilo Spinella Software Engineer in Packaging SUSE ![:i](fab fa-suse) class: middle, left ![:i](fas fa-list) Contents What is a supervisor Initial setup Supervising the child using pidfd Listening on signals using signalfd…

Improving Linux Packaging: rinstall

Let’s face it. Packaging software on Linux is an underappreciated job. If they do their job correctly, almost no one will notice them. But the moment they do a mistake, the users of their distribution will likely go mad. They often work with no standard tool for build and install. They have to dig into other people source code daily and fix errors regarding build and dependencies. Likewise,…

Replacing Openssl, Part 1: wolfSSL

This post highlight my experiment of replacing OpenSSL cryptographic library with its embedded competitor: wolfssl . Prerequites : Basic knowledge about C/C++ programming . A bit of background about OpenSSL OpenSSL is one of the most crucial libraries on a Unix system: it performs cryptographic functions and it provides Transport Layer Security ( TLS ) and Secure Sockets Layer ( SSL ) protocols to…

Colorize your CLI

Prerequisites : basic understanding of CLI and of common programs . The Command Line Interface (abbreviated CLI for the rest of the post) is the swiss knife of many developers and sysadmins out there. Unix systems provide a settings layer that can be rapidly accessed using some CLI utilities. And that’s just the tip of the iceberg. The CLI allows us to do almost everything without leaving…

tt#dev2: C++ rewrite

Second update on tt development. You can find the first here . The last months with D programming language has been good. Except for the language compiler. There are three different D compilers out there, which are themselves written in D. How do you compile them without a D compiler? You use an already compiled compiler executable (sorry for the pun) for your system/architecture . musl is not…

Raspberry Pi e SSH🇮🇹

class: center, middle name: start Raspberry Pi e SSH ![:i](fab fa-raspberry-pi) class: center, middle Sono Danilo Spinella class: left, top Obbiettivi Cos’è il Raspberry Pi Protocollo SSH class: center, middle Parte 1 class: center, middle #Il Raspberry Pi è computer a singola scheda class: left, middle Caratteristiche tecniche ARM Quad-core 64bit 1,5GHz 1/2/4GB di RAM…

tt: Development update #1

Devember as long finished, but not all the projects started during the challenge did the same. This is the case for tt , the init/rc manager that strives to replace systemd . Notes : If you do not know what tt is, I really invite you to read the previous two posts( link1 , link2 ) on the matter, as this one is a continuation. Nevertheless, it is not a requirement for reading this post . Starting…

Modern CLI Applications: Part 1

Following the post about colorizing the CLI, this time you will discover some interesting CLI application to enhance your workflow. For each app you will see its usage in real world examples and a comparison with the other applications. This showcase will be split over different posts with 4 applications each. Ready? Let’s begin the journey! Prerequisites: Basic knowledge about Unix command…

Devember 2019: First ten days

After 10 long days, I’m ready to share my new journey with Dlang. Build system D documentation was really interesting and the language seemed promising. But I needed to start somewhere and I’ve chosen to start by creating the boilerplate files and building them; after all I want to create a shared library ( libtt ) and an executable linked to it ( tt ). This is straightforward in C/C++ but I have…

Devember 2019: Rewriting 66

Prerequisites : Basic knowledge of a Unix system architecture; init diversity initiative. Devember 1 it’s coming and for this year (which is also my first year participating) I’ve chosen something really close to me: the init and service manager ( called init/rc for the rest of the post ). Specifically I’ve chosen to rewrite 66 from scratch . Notes : In the following paragraphs…

Security and privacy on UNIX desktop

Security and privacy are two important factors of the IT field. A lot of effort has been made to ensure safe surfing on the net, whatever we are connected to our home router, the university network or even worse the airport public network. And other effort have been made to avoid malicious sites. Yet, systems don’t offer privacy and security out of the box. This post will guide you to the…

Laboratorio pratico di Docker 🇮🇹

class: center, middle name: start Laboratorio pratico di Docker ![:i](fab fa-docker) class: center, middle Sono Danilo Spinella class: left, top Obbiettivi Concetti sui Containers Setup ambiente Docker Avvio di containers Applicazione Java su un container class: center, middle Parte 1: Concetti sui Containers class: center, middle Macchina virtuale Emula il comportamento di una macchina fisica…

Web Browsers and Privacy in 2019

An important piece in everyday life is the browser , considering the new trend of storing data and accessing applications in the cloud . Among the browsers landscape, the choice is actually finite because developing and maintaining one is expensive . But, which browser should you choose? One that offers speed or one that is secure ? Does it respect your privacy ? In the current post, we will…

Home

Welcome to my site! I am a passionate software engineer and I work at SUSE. I write about *nix and programming stuff and I occasionally give presentations. Github: https://github.com/danyspin97 E-Mail: me@danyspin97.org PGP Key: E82A 1BBF 9952 D5ED B765 326A F8D0 194C C049 819F

Announcing Exherbo subreddit

I am delighted to announce the opening of the unofficial Exherbo subreddit 1 ! You can discuss topic relavant to the distro, take up any problem that you have encountered or share your thoughts and setups. Note that Exherbo development takes place on our Gitlab instance 2 and the critical discussions still happen on #exherbo IRC channel on Freenode 3 . Furthermore, distro documentation 4 is…

Fancy Vim Plugins

Prerequisites: basic knowledge of vim editor, minimal plugin configuration . I read a lot of plugin posts over the internet back when I begun using vim. While I still find them supportive for starters, they suggest the same plugins over and over. Today I will talk about a bunch of unknown plugins which give the editor a modern look and feel. I call them “unknown” because the number of stars these…

Makefiles, Best Practices

Makefile s are widely used to build a lot of languages and projects, with C/C++ projects being the majority. Whenever you are developing or testing software, it’s highly probable that you will encounter them. This post will try to address some common errors in Makefile s, as well as good practices and cross-compiling support. Prerequisites : good understanding of Makefile s, UNIX directory…

Gaming On Linux 🇮🇹

class: center, middle name: start Gaming on Linux .footer[Linux Day 2018, Reggio Calabria] class: middle, left Obbiettivi Giocare in nativo Giocare su Wine Wine+DXVK SteamPlay class: center, middle Piattaforme Console ![:i](fas fa-tv) PC ![:i](fas fa-laptop) Mobile ![:i](fas fa-mobile) class: center, middle Piattaforme PC Windows ![:i](fab fa-windows) Linux ![:i](fab fa-linux) MacOS ![:i](fab…

Mastodon e il Fediverse 🇮🇹

class: center, middle name: start Mastodon ![:i](fab fa-mastodon) e il Fediverse .footer[Linux Day 2018 Reggio Calabria] class: middle Obbiettivi Mastodon ActivityPub e il Fediverse Pixelfed Peertube class: center, middle #![:i](fab fa-facebook) ![:i](fab fa-instagram) ![:i](fab fa-youtube) ![:i](fab fa-twitter) ![:i](fab fa-linkedin) ![:i](fab fa-reddit) Piattaforme Social Includono pubblicità…

Discover Linux 🇮🇹

class: center, middle name: start .big[ Discover ] .footer[Linux Day 2018 Reggio Calabria] class: center, middle Chi sono Sono Danilo Spinella e studio Ingegneria dell’informazione ![:i](fas fa-laptop-code) class: left, middle Argomenti trattati Gestore dei pacchetti Ambienti Desktop e Gestori delle finestre Distribuzioni Hacking class: center, middle GNU/Linux Gnulinux.png: Aurelio A.…

Getting started with execline scripting

Preface In this post, the execline scripting language will be outlined: we will learn anything you need to get started. Prerequisites : basic understanding of shell scripting, and environment; access to unix shell and execline installed. Note : all the scripts have been tested with execline version 2.5.0.1. Overview execline is scripting language written with security and simplicity in mind. Its…

Termish[2] = yadm

Dotfiles : the files whom dictate pretty much anything on your workstation, from vi[m] behavior to desktop customization. If you had never heard of dotfiles or you’re not familiar with their concept, this is a little explanation. But what if your laptop and data got lost? Rewrite everything from scratch would be a real hell: indeed they are usually stored on Github or whatever so that…

Termish[1] = ddgr

What is the most common thing we do each day? We browse the internet using a search engine, from Google to DuckDuckGo . But what’s the process? Open the browser, fire up the search and wait for results; then take the mouse and click on it, or if there is some vim-like plugin installed, press f and wait for popups. It is too long for something we do so often, isn’t it? There are two…

Termish[0] = ncpamixer

Welcome to the first post of Termish . Please, read what this is about here , if you haven’t already. Let’s talk about PulseAudio , a popular sound server that is widely used in Linux Desktop for its features out of the box. If you don’t know which your system audio service is, probably there is PulseAudio running (considering that even Firefox use it as default on Linux from…

Termish = malloc(255 * size)

This is the preface for a series of post on terminal apps, called Termish . But why ? I love staying in the terminal. A lot of things are faster to do and I don’t have to move my hands away from keyboard every now and then. The problem is: we don’t always have the right tool to use. Plus, a lot of goodies don’t have visibility. We will explore these programs covering a great…

Introduzione a VIM 🇮🇹

Projects

rinit , a modern init for *nix wpaperd , a wallpaper daemon for Wayland rinstall , a helper tool for installing programs Unmaintained Telegram Bots PhpBotFramework , a framework for Telegram Bot API written in PHP Cppgram , a framework for Telegram Bot API written in C++11 MyAddressBookBot , a Telegram Bot to store and browse username contacts GiveawaysBot , a Telgram Bot to run giveaways…