Coder Social home page Coder Social logo

Comments (7)

nixbitcoin avatar nixbitcoin commented on June 2, 2024 1

Another idea I got is we could review each-other project and try to comment on things that could be improved based on the experience of each other. What do you think?

This is a great idea. I'll get on this when I've completed my planned cleaning, hardening, and documenting work.

from nix-bitcoin.

nixbitcoin avatar nixbitcoin commented on June 2, 2024 1

Exactly the same way!

from nix-bitcoin.

nixbitcoin avatar nixbitcoin commented on June 2, 2024 1

Collaboration is taking place in an ad-hoc fashion

from nix-bitcoin.

jonasnick avatar jonasnick commented on June 2, 2024

Hey, thank you for reaching out. cryptoanarchy-deb-repo-builder looks impressive. Moreover, it addresses the most common criticism I get when mentioning nix-bitcoin: "No one uses NixOS, why don't you just build on Debian".*

The idea of defining a common high level spec language sounds quite ambitious. I don't have a good intuition for how this could benefit both projects without becoming a years long research project. For nix-bitcoin it's more natural to first focus on modules the contributors are themselves interested in and then use that as a starting point to build abstractions. HopefullyThe alternative of forcing a top-down onto the project structure would be difficult because the requirements and the general project direction are unclear.

I'm pretty sure that both projects can benefit each other in any case: by nudging developers into making packaging easy and offering sensible configuration options.

But I wonder what happens if you attempt to use a non-existing variable or one with a wrong type.

It'll give you an error. Nix is just fun to work with - you should try it :) (for example by going through the "nix pills")

* My answer is usually that NixOS is a more systematic approach and therefore more fun and easy to maintain. But given enough resources you can probably do something similar with other distros as well which seems to be what you're attempting to do.

from nix-bitcoin.

Kixunil avatar Kixunil commented on June 2, 2024

Thank you for reply!

I had the idea of having a more abstract representation of packages, when I started packaging for Debian and it sounded ambitious to me too. After a few days of debugging stupid stringly bugs, I realized it's not ambitious, but necessary. So I took some time to implement MVP version of debcrafter, which helped quite a bit, as I don't have to repeat same things. By wanting to have something done ASAP, I cut many corners, some I didn't even understand fully. This kicked me hard recently, because the feedback loop is too long. But it gave me shitton of experience that I can share.

A way we could help each other without spending years on "ambitious projects" would be to identify very clear common things we do and try to unify them first. One of the obvious is the configuration. If we can have same files specifying the configuration, we can just include them in our projects and benefit from the other researching the config already. In special cases like electrs and btc-rpc-proxy, it could be generated from config_spec.toml.

There's a part of configuration that I consider special - interfaces. It's usually one or more of these settings:

  • host
  • port
  • auth token/cookie file
  • TLS cert

I'm planning to write some code to make this part more systematic, hoping to avoid duplicating settings and possibly automatically deduce dependencies.

Another idea I got is we could review each-other project and try to comment on things that could be improved based on the experience of each other. What do you think?

It'll give you an error. Nix is just fun to work with - you should try it :)

Sounds great! It's definitely on my list of things I want to do in my life. Maybe not in the following months, but eventually. :)

from nix-bitcoin.

Kixunil avatar Kixunil commented on June 2, 2024

Great! I'd like to ask you to open a separate issue for everything you find, unless they are closely related (e.g. same principle applied to more things). How would you like me to report my findings?

from nix-bitcoin.

Kixunil avatar Kixunil commented on June 2, 2024

So I created some basic documentation of debian repository, which should make the review easier. I need to do some other things before I can review your repo, hopefully soon.

Feel free to ask for clarification of the docs, of course!

from nix-bitcoin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.