The officially official Devuan Forum!

You are not logged in.

#1 2025-09-12 15:27:20

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

apt seems to be a sort of "unstable wrapper"

apt is said to be designed as a more interactive and user-friendly frontend to certain utilities such as apt-get, apt-cache, etc.

$ apt-file list apt | grep usr/bin
apt: /usr/bin/apt
apt: /usr/bin/apt-cache
apt: /usr/bin/apt-cdrom
apt: /usr/bin/apt-config
apt: /usr/bin/apt-get
apt: /usr/bin/apt-key
apt: /usr/bin/apt-mark 

apt is optimized for interactive use, with user-friendly output and features.
   In contrast, apt-get has a well-defined, stable interface, making it more suitable for scripting and automated tasks.

   apt is essentially a wrapper for the most common functionalities found in the underlying APT system.

Last edited by igorzwx (2025-09-12 15:27:54)

Offline

#2 2025-09-12 15:32:12

rolfie
Member
Registered: 2017-11-25
Posts: 1,296  

Re: apt seems to be a sort of "unstable wrapper"

apt has a progress bar. Perfect for me, I am using apt since many years now, no complaints about it.

Online

#3 2025-09-12 16:00:35

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

If you know what it really is, you can decide how to use it.
However, the users are not supposed to know what they are using.

Offline

#4 2025-09-12 16:46:34

rolfie
Member
Registered: 2017-11-25
Posts: 1,296  

Re: apt seems to be a sort of "unstable wrapper"

Why not? If you desire have a look at the code. The sources are available.

Online

#5 2025-09-12 17:19:03

pcalvert
Member
Registered: 2017-05-15
Posts: 245  

Re: apt seems to be a sort of "unstable wrapper"

The only apt command I use is apt update. For almost everything else I use aptitude.


Freespoke is a new search engine that respects user privacy and does not engage in censorship.
Another one is called Luxxle.

Online

#6 2025-09-12 18:19:33

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

@rolfie

Could you please read the code and enlighten us?

Offline

#7 2025-09-12 19:00:19

rolfie
Member
Registered: 2017-11-25
Posts: 1,296  

Re: apt seems to be a sort of "unstable wrapper"

Another conspiracy theory about something being bad?

igorzwx wrote:

Could you please read the code and enlighten us?

I am no programmer. Do it yourself.

Online

#8 2025-09-12 19:34:25

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

apt has undocumented options, for example: depends; build-dep; -s, --simulate

man apt | grep depends
$ apt depends wxmaxima
wxmaxima
  Depends: libc6 (>= 2.34)
  Depends: libgcc-s1 (>= 3.3.1)
  Depends: libstdc++6 (>= 11)
  Depends: libwxbase3.2-1 (>= 3.2.2+dfsg)
  Depends: libwxgtk-webview3.2-1 (>= 3.2.2+dfsg)
  Depends: libwxgtk3.2-1 (>= 3.2.1+dfsg-2)
  Recommends: maxima
    maxima-git
  Recommends: fonts-inter
  Recommends: fonts-inter-variable
  Recommends: fonts-texgyre
  Recommends: fonts-texgyre-math
  Recommends: fonts-dejavu
  Suggests: fonts-jsmath
  Suggests: texlive-latex-extra
  Suggests: ibus-gtk3
man apt | grep build-dep
$ apt build-dep wxmaxima -s
NOTE: This is only a simulation!
      apt needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
...

There are, perhaps, other "secret" options.

Last edited by igorzwx (2025-09-12 21:02:54)

Offline

#9 2025-09-12 21:07:51

EDX-0
Member
Registered: 2020-12-12
Posts: 150  

Re: apt seems to be a sort of "unstable wrapper"

apt is a "work in progress" interactive tool, it has undocumented options (if you don't read the manual) since they may not be tested enough to have full documentation, for example for apt 2.9.6devuan1

       edit-sources (work-in-progress)
           edit-sources lets you edit your sources.list(5) files in your preferred text editor
           while also providing basic sanity checks.

       showsrc, depends, rdepends, policy (summarised in apt-cache(8))

       source, build-dep, download, changelog, clean, distclean, autoclean (summarised in apt-
       get(8))

SCRIPT USAGE AND DIFFERENCES FROM OTHER APT TOOLS
       The apt(8) commandline is designed as an end-user tool and it may change behavior between
       versions. While it tries not to break backward compatibility this is not guaranteed either
       if a change seems beneficial for interactive use.

       All features of apt(8) are available in dedicated APT tools like apt-get(8) and apt-cache(8)
       as well.  apt(8) just changes the default value of some options (see apt.conf(5) and
       specifically the Binary scope). So you should prefer using these commands (potentially with
       some additional options enabled) in your scripts as they keep backward compatibility as much
       as possible.

SEE ALSO
       apt-get(8), apt-cache(8), sources.list(5), apt.conf(5), apt-config(8), apt-patterns(7), The
       APT User's guide in /usr/share/doc/apt-doc/, apt_preferences(5), the APT Howto.

Offline

#10 2025-09-12 21:30:26

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

I have Devuan5

$ inxi -b | grep Host -A1
  Host: devuan Kernel: 6.1.0-39-amd64 arch: x86_64 bits: 64 Desktop: MATE
    v: 1.26.0 Distro: Devuan GNU/Linux 5 (daedalus)
$ man apt | grep devuan1
APT 2.6.1devuan1         05 April 2020             APT(8)

It seems that "man" is "outdated in-progress".

$ apt --version
apt 2.6.1devuan1 (amd64)
man apt | grep depends

does not print anythings.

$ apt rdepends wxmaxima
wxmaxima
Reverse Depends:
  Suggests: education-mathematics
  Recommends: science-mathematics

The command:

man apt | grep rdepends

prints nothing.

apt is "work in progress", and, therefore,

apt full-upgrade

is recommended to use instead of

apt-get dist-upgrade

_https://www.debian.org/releases/trixie/release-notes/upgrading.html#upgrading-the-system

4.4.6. Upgrading the system

# apt full-upgrade

Linux Mint has own apt wrapper

_https://github.com/linuxmint/mintsystem/blob/master/usr/local/bin/apt

This is the Linux Mint "apt" command.

This commands acts as a wrapper for the APT package manager and many other useful tools such as apt-get, apt-cache, apt-mark, dpkg, aptitude...etc.

It is installed in /usr/local/bin/apt. To use the upstream apt command directly type /usr/bin/apt.

Last edited by igorzwx (2025-09-13 00:16:36)

Offline

#11 2025-09-13 02:53:23

EDX-0
Member
Registered: 2020-12-12
Posts: 150  

Re: apt seems to be a sort of "unstable wrapper"

yes, i've been thinking of rolling out my own apt wrapper, after all i already have apt-ui which uses fzf to provide a fuzzy ui for installing, uninstalling packages and also queriying package information: https://github.com/eylles/devuan-script … /apt-ui.sh

but i do want something more "complete" that also integrates some of the apt-fast capabilities which i may even lazy out and just build my apt wrapper with the ability to use apt-fast to perform the install operations.

that is not to say that debian's "apt" wrapper program is bad in on itself but one can notice it is very much a work in progress

Offline

#12 2025-09-13 14:14:39

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

Do you know why cybernetics has always been hated by Trotskyists and pseudo-Buddhists?

According to cybernetics, the control mechanism must possess sufficient complexity to match or exceed the complexity (or "variety") of the system and its environment to maintain control and achieve desired outcomes. If the controller is less complex, it cannot effectively manage the system's dynamics, according to Ashby's Law of Requisite Variety
_https://en.wikipedia.org/wiki/Variety_(cybernetics)

For a similar reason, a sophisticated system requires much more sophisticated technical documentation. That is why, perhaps, Debian documentation is a body of esoteric scriptures containing secret or inner knowledge intended for a select group of initiates, rather than the general public. Debian wiki and man pages have multiple layers of meaning that can only be grasped by the initiated who can read between the lines and understand the hidden or implicit meaning in something that is not explicitly stated.

systemd, pulseaudio, pipewire, user-friendly frontends (such as apt and the like) are unnecessarily (or even harmful) complications of the system.

Have you noticed that it is much easier to create a Debian package without the help of debhelper?
Examples:
_https://dev1galaxy.org/viewtopic.php?id=7214
_https://dev1galaxy.org/viewtopic.php?id=7224
Try to read _https://manpages.debian.org/testing/debhelper/debhelper.7.en.html

The question is, therefore, What does the word "helper" mean in this context?

The Hebrew word "ezer" (עֵזֶר - pronounced "ayzer") means a strong, powerful helper, an ally, a protector, or even a rescuer, not a weak or subordinate one. Often translated as "help" or "helper," it implies a necessary, superior aid. The word emphasizes strength and support and is most frequently used in the Bible to describe God as the ultimate ezer for humanity.

It is a symbolic statement of superiority. Debian users are treated as helpless and ignorant. The invocation of the archetypal symbol is misused to exercise symbolic violence (in terms of Pierre Bourdieu).

NOTE: Invoking archetypal symbols to exercise symbolic violence means using deeply ingrained, often unconscious, symbols to legitimize and perpetuate social hierarchies and power imbalances, making them seem natural rather than a product of specific social conditions. This misuse of symbols, which are presented as universal or self-evident, serves to obscure the true power dynamics, elicit "consent" from the dominated, and ultimately maintain the existing social order without overt physical force, according to Bourdieu.
_https://en.wikipedia.org/wiki/Pierre_Bourdieu
What is special about pseudo-Buddhists is that they often engage in a form of symbolic violence that may look rather primitive and unsophisticated.

Man's achievements rest upon the use of symbols.... we must consider ourselves as a symbolic, semantic class of life, and those who rule the symbols, rule us.
Alfred Korzybski, Science and Sanity. 1933; Lancaster (Penn.) 1941.
See also: _https://en.wikipedia.org/wiki/Alfred_Korzybski#Anecdotes

It might be obvious that power operates through symbols, meanings, and social constructs to influence and shape reality. What is not obvious is that it can effectively operate through seemingly neutral symbols and shared understandings. Pierre Bourdieu argued that symbolic power, exercised through language and culture, allows dominant groups to legitimize their authority by imposing meanings and classifications that are perceived as natural and legitimate by society, a process he termed symbolic violence. Language serves as a primary vehicle for this power, as dominant linguistic norms, accents, and styles are presented as legitimate, thereby reinforcing social hierarchies and marginalizing other forms of speech and culture. This power operates not through physical coercion but by shaping people's perceptions and behaviors, leading to the misrecognition and internalisation of existing power structures as normal or just.
_https://en.wikipedia.org/wiki/Pierre_Bourdieu

In plain words: debhelper belongs to the same category of crap as systemd, pulseaudio, and pipewire. The users are forced, by means of symbolic violence, to perceive this crap as natural, legitimate, and indispensable.

Last edited by igorzwx (Today 00:26:30)

Offline

#13 2025-09-13 18:32:47

greenjeans
Member
Registered: 2017-04-07
Posts: 1,159  
Website

Re: apt seems to be a sort of "unstable wrapper"

yes, i've been thinking of rolling out my own apt wrapper, after all i already have apt-ui which uses fzf to provide a fuzzy ui for installing, uninstalling packages and also queriying package information: https://github.com/eylles/devuan-script … /apt-ui.sh

The comments! # if this is not your actual config dir then get rekt lol

Srsly tho, this put a bee in my bonnet on a small utility i've thought about in the past, a right-click context menu entry that offers to install a local .deb package when you select it in the file manager, little script + apt-get + some yad dialogs. I think that would be handy.

Probably easier to just use gdebi, it's nice.

Last edited by greenjeans (2025-09-13 19:14:01)


https://sourceforge.net/projects/vuu-do/ New Vuu-do isos uploaded August 2025!
Vuu-do GNU/Linux, minimal Devuan-based Openbox and Mate systems to build on. Also a max version for OB.
Devuan 5 mate-mini iso, pure Devuan, 100% no-vuu-do. wink Devuan 6 version also available for testing.
Please donate to support Devuan and init freedom! https://devuan.org/os/donate

Offline

#14 2025-09-14 08:21:07

ffp
Member
Registered: 2024-02-23
Posts: 17  

Re: apt seems to be a sort of "unstable wrapper"

SparkyLinux had a nice lightweight GUI alternative to gdebi, maybe it could be packaged for Devuan as well?
https://sparkylinux.org/debitool/
https://github.com/sparkylinux/debi-tool

Last edited by ffp (2025-09-14 08:22:16)

Offline

#15 2025-09-14 08:35:02

EDX-0
Member
Registered: 2020-12-12
Posts: 150  

Re: apt seems to be a sort of "unstable wrapper"

another option would be to cobble a script with yad for the gui (lighter for setups that already use yad) and on the inside all it does is run apt-get commands to show the information of the .deb and installs it with apt-get install <full/path/to/package.deb>

Offline

#16 2025-09-14 09:21:11

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

Why do you need GUI for apt-get?

Offline

#17 2025-09-14 09:21:27

ffp
Member
Registered: 2024-02-23
Posts: 17  

Re: apt seems to be a sort of "unstable wrapper"

another option would be to cobble a script with yad for the gui (lighter for setups that already use yad) and on the inside all it does is run apt-get commands to show the information of the .deb and installs it with apt-get install <full/path/to/package.deb>

DebiTool is built on top of yad wink

Why do you need GUI for apt-get?

Personally, I don't need a GUI for APT but I'm thinking of setting up Devuan on my dad's PC and I know he's not going to bother using the terminal.

Last edited by ffp (2025-09-14 09:22:30)

Offline

#18 2025-09-14 12:44:23

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

To create a useful GUI, one may need a secret esoteric knowledge of ergonomics.

What Are Principles of Ergonomics in UI Design?
_https://www.flowmapp.com/blog/qa/principles-of-ergonomics-in-ui-design

The interface should be designed taking into account the individual characteristics of the user, starting from their physical and cognitive abilities, and ending with their needs and goals.
_https://www.flowmapp.com/blog/qa/principles-of-ergonomics-in-ui-design

Another approach is to explain the user that Linux terminal may help against dementia.

Linux Terminal and Cognitive Health

Recent discussions have emerged regarding the potential cognitive benefits of using the Linux terminal and similar computing environments. While there isn't direct evidence linking Linux terminal usage specifically to dementia prevention, engaging with technology, including command-line interfaces, may contribute positively to cognitive health.

Cognitive Engagement and Technology Use

    Mental Stimulation: Using the Linux terminal requires problem-solving skills, critical thinking, and memory, which can help keep the brain active. Engaging in mentally stimulating activities is known to be beneficial for cognitive health.

    Learning New Skills: Mastering the Linux terminal involves learning new commands and scripting, which can enhance cognitive flexibility and adaptability. Continuous learning is associated with a lower risk of cognitive decline.

    Social Interaction: Many Linux users participate in online communities, forums, and collaborative projects. Social engagement is another factor that can help protect against dementia.

Related Research on Technology and Dementia

A study indicated that older adults who regularly used the internet had about half the risk of developing dementia compared to non-users. This suggests that regular engagement with technology, including potentially using the Linux terminal, could be beneficial for cognitive health.

Summary of Benefits

Aspect:    Potential Benefits
Mental Stimulation:     Enhances problem-solving and critical thinking
Learning Opportunities:    Promotes cognitive flexibility and adaptability
Social Engagement:    Builds connections and reduces isolation

Engaging with the Linux terminal can be a part of a broader strategy to maintain cognitive health, especially when combined with other healthy lifestyle choices. While more specific research is needed to establish a direct link between Linux terminal use and dementia prevention, the cognitive engagement it fosters is undoubtedly valuable.

One of the Seven Steps to Protect Your Cognitive Vitality is to keep learning and stimulating your brain throughout life. The internet has become a major source of information and a convenient method of communication via email, social media, and virtual meetings. In a recent study, older people who regularly used the internet had approximately half the risk of dementia compared to non-regular users of the internet.
_https://www.alzdiscovery.org/cognitive-vitality/blog/can-using-the-internet-protect-from-dementia
_https://www.alzdiscovery.org/cognitive-vitality/first-steps

The Linux terminal invokes a certain mode of thinking that helps to solve problems. The command-line interface (CLI) promotes a more structured and logical problem-solving approach by requiring users to be explicit and understand cause-and-effect relationships between commands and their outputs. This text-based interaction encourages a deep understanding of system operations, fosters skills in breaking down complex tasks, and develops a powerful efficiency in performing intricate operations that might be slower in a graphical interface.

Last edited by igorzwx (2025-09-14 13:40:18)

Offline

#19 2025-09-14 15:07:33

greenjeans
Member
Registered: 2017-04-07
Posts: 1,159  
Website

Re: apt seems to be a sort of "unstable wrapper"

another option would be to cobble a script with yad for the gui (lighter for setups that already use yad) and on the inside all it does is run apt-get commands to show the information of the .deb and installs it with apt-get install <full/path/to/package.deb>

That was my thought. gdebi is only about 1 mb so it's small, but i'm pretty sure a simple script for doing this with yad and apt-get would only be like 20-30k. Edit: Actually less than that the more I think about it, apt-get will do all the legwork checking for depends etc. Just need to use the right command, then a success dialog at the end, some error checks of course etc.

If you're just making a quick and dirty for yourself and don't need a safety net, you can do it as a right-click extension with just a .desktop, like maybe so (if you know for sure you already have all needed depends installed):

[Desktop Entry]
Type=Action
Comment=Install local .deb package
Name=Install Package
Icon=info
Profiles=on_file;

[X-Action-Profile on_file]
Exec=gksu.sh dpkg -i %f
MimeTypes=application/x-debian-package;

Before somebody asks again, gksu.sh is just my pkexec translator so I don't have to type a lot of extra crap when I make one of these.

Last edited by greenjeans (2025-09-14 15:52:09)


https://sourceforge.net/projects/vuu-do/ New Vuu-do isos uploaded August 2025!
Vuu-do GNU/Linux, minimal Devuan-based Openbox and Mate systems to build on. Also a max version for OB.
Devuan 5 mate-mini iso, pure Devuan, 100% no-vuu-do. wink Devuan 6 version also available for testing.
Please donate to support Devuan and init freedom! https://devuan.org/os/donate

Offline

#20 2025-09-14 17:58:38

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

The standard solution:

1. bash script with one simple command inside

2. desktop launcher for it

Right click on a deb file and select "install deb".
It opens a terminal, and runs "sudo dpkg -i <your deb>" on it.

gksu is not needed.

"local .deb packages" can be installed with "dpkg" or with "apt" (together with dependencies, if available) similar to "gdebi".

Last edited by igorzwx (2025-09-14 19:07:16)

Offline

#21 2025-09-14 22:28:29

greenjeans
Member
Registered: 2017-04-07
Posts: 1,159  
Website

Re: apt seems to be a sort of "unstable wrapper"

sudo, and here I thought you were suspicious of obvious security risks.

Vuu-do don't sudo. wink


https://sourceforge.net/projects/vuu-do/ New Vuu-do isos uploaded August 2025!
Vuu-do GNU/Linux, minimal Devuan-based Openbox and Mate systems to build on. Also a max version for OB.
Devuan 5 mate-mini iso, pure Devuan, 100% no-vuu-do. wink Devuan 6 version also available for testing.
Please donate to support Devuan and init freedom! https://devuan.org/os/donate

Offline

#22 2025-09-14 22:45:01

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

Try "su" to root, then "apt" or "dpkg".

It seems that you do not know how to write a simple script.

Offline

#23 2025-09-14 23:05:55

greenjeans
Member
Registered: 2017-04-07
Posts: 1,159  
Website

Re: apt seems to be a sort of "unstable wrapper"

Try "su" to root, then "apt" or "dpkg".

It seems that you do not know how to write a simple script.

Well I haven't taken a sip yet today from the waterfall of secret esoteric knowledge, so my dementia lacks the mystic sauce of enlightenment to keep it at bay, perhaps you need to wall-of-text me some more of that deep deep lore that ChatGPT has bestowed upon thee. tongue


https://sourceforge.net/projects/vuu-do/ New Vuu-do isos uploaded August 2025!
Vuu-do GNU/Linux, minimal Devuan-based Openbox and Mate systems to build on. Also a max version for OB.
Devuan 5 mate-mini iso, pure Devuan, 100% no-vuu-do. wink Devuan 6 version also available for testing.
Please donate to support Devuan and init freedom! https://devuan.org/os/donate

Offline

#24 2025-09-14 23:20:10

igorzwx
Member
Registered: 2024-05-06
Posts: 282  

Re: apt seems to be a sort of "unstable wrapper"

There are "security experts", who cannot write simple scripts, and cannot compile anything.

Offline

#25 Yesterday 01:07:48

EDX-0
Member
Registered: 2020-12-12
Posts: 150  

Re: apt seems to be a sort of "unstable wrapper"

eh something like this for the script should cover almost all cases so that the .desktop file can have a simple exec line like:

Exec=deb-installer %f

and this would be the base of the deb-installer that is pretty much a glorified yad confirmation dialog

#!/bin/sh

###############################################################################
# yes these variables for the dialog are empty, whoever does take the time to #
# build this thing proper ought to fill them, maybe even use gettext for      #
# internationalization and stuff                                              #
###############################################################################

# action image
act_image=""
# action title
text_title=""
# action message
text_msg=""
# window title in taskbar/titlebar
title_var=""
# action button text
btn_act=""
# message on success
success_msg=""
# message on cancel
cancel_msg=""

u_true=0
u_false=1

# return type: unix command boolean
# return values:
#     True : u_true
#     False: u_false
# usage: yad_confirm_dialog
yad_confirm_dialog () {
    # function's return value
    # defaulting to false just to be safe
    retval="$u_false"

    text="
    <span><big><b>${text_title}</b></big></span>

    ${text_msg}
    "
    btn_cancel="$(gettext "$myname" "$btn_cancel")"
    cancel_img="gnome-info"
    yad \
        --image "$act_image" \
        --text "$text" \
        --buttons-layout=center \
        --skip-taskbar \
        --sticky \
        --undecorated \
        --title="$title_var" \
        --on-top \
        --button="$btn_act" \
        --button="${btn_cancel}:1" \
        --center

    ret=$?

    case "$ret" in
        0|70)
            notify-send -i "$act_image" "$title_var" "$success_msg"
            retval="$u_true"
            ;;
        1|252)
            notify-send -i "$cancel_img" "$title_var" "$cancel_msg"
            retval="$u_false""
            ;;
    esac

    return "$retval"
}

main () {
    yad_confirm_dialog
    ret=$?
    if [ "$ret" -eq "$u_true" ]; then
        $0 "install" "$1"
    fi
}

install_software () {
    apt update
    apt install "$1" -y
    ret=$?
    return "$ret"
}

case "$1" in
    install)
        shift
        # are we root?
        if [ ! "$( id -u )" -eq 0 ]; then
            install_software "$1"
        else
            has_tty=""
            if tty | grep -qF -e "dev/tty" -e "dev/pts"; then
                has_tty=1
            fi
            if [ -n "$has_tty" ]; then
                sudo "$0" "install" "$1"
            else
                # prefer sudo with sudo_askpass over pkexec
                if [ -n "$SUDO_ASKPASS" ]; then
                    sudo -A "$0" "install" "$1"
                else
                    pkexec sudo "$0" "install" "$1"
                fi
            fi
        fi
    ;;
    *)
        main "$@"
    ;;
esac

Offline

Board footer