Giter VIP home page Giter VIP logo

Comments (3)

johnraff avatar johnraff commented on June 22, 2024

Short answer: modularity


The bl-* scripts in bunsen-utilities, although mostly called by internal things like pipemenus, are also intended to be available to a user who might want to use them for some reason. They are installed to /usr/bin (Actually, IMHO there might be a case, on the basis of the reasons below, for moving some of them to bunsen-pipemenus.)

While bl-alternatives and bl-gvim in bunsen-configs also install to /usr/bin, and are available to the user, they are essential for the correct working of the bl alternatives system, which is set up by bunsen-configs. That also adds a dpkg hook, installs .desktop files in /usr/share/applications, and uses references to eg bl-text-editor throughout the config files in skel.

bl-user-setup in bunsen-configs is installed to /usr/lib/bunsen/bunsen-configs and should only be called by lightdm, due to a setting in lightdm.conf, also installed by bunsen-configs.

So on the principle of not calling things in a package which are not provided by that package, or supplied by the system, I chose to put the necessary scripts in bunsen-configs. If they had gone in bunsen-utilities then that would need to be a hard dependency of bunsen-configs.

The aim was to make it as easy as possible for a user with special needs to install only a subset of packages from the BunsenLabs set without breaking too much. (Of course a certain level of inconvenience might be unavoidable.)

The whole topic of inter-package dependencies and the distribution of files between packages is, however, still open to discussion, and I'm ready to be convinced a different arrangement might be better.

from bunsen-configs.

 avatar commented on June 22, 2024

OK. I was just asking because I was writing package content descriptions for the website and wondered whether I should remark the script content in -configs.

I do find the dependency configs -> utilities appropriate however. I'm in favour of moving the scripts to there. It's however a non-issue for me if the move doesn't happen.

from bunsen-configs.

johnraff avatar johnraff commented on June 22, 2024

At the moment bunsen-configs
"Recommends: bunsen-utilities"
so without b-u some functionality would be broken but the b-c package still remains useful.

However, if bl-user-setup is missing lightdm login becomes impossible. This is obviously unacceptable, so the choice is between a hard dependency on b-u and including bl-user-setup in bunsen-configs.

If bl-alternatives is missing the consequences are less severe: /etc/apt/apt.conf.d/90bunsen sets a dpkg hook, but if the file is missing things continue anyway, just without updating the BL alternatives.

I still feel that it's best to try and minimize possible issues with system-related stuff (being run by root) as opposed to userland scripts, and package the related files together - if you're OK with that in this case?

from bunsen-configs.

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.