SiFuh_ has quit [Remote host closed the connection]
SiFuh_ has joined #opencrux
_whitelogger has joined #opencrux
SiFuh has quit [Read error: Connection reset by peer]
SiFuh has joined #opencrux
<farkuhar>
zorz: You removed coreutils and util-linux, but not findutils? If you still keep findutils installed, then fixing your pkgmk error is as simple as putting /usr/bin before /bin in $PATH.
<farkuhar>
On the other hand, if you want sbase and ubase to completely replace all their GNU counterparts (coreutils, util-linux, findutils), then you do have to change the way pkgmk invokes find.
<farkuhar>
The -printf operand is an extension (not specified by POSIX), but it's not an extension unique to the GNU project. Other implementations of find also recognize -printf, even though the suckless authors preferred a more minimal rewrite.
<farkuhar>
SiFuh: I'm a fan of documentation-driven development. So before adding features to prt-get and pkg-get, I want to be sure that I have the correct interpretation of the "makedepends" feature. Here's a revised Pkgfile(5) spelling out how the feature might work. https://0x0.st/8ggU.5
<SiFuh>
farkuhar: What am I looking for?
<SiFuh>
Oh you called it Build Depends
<SiFuh>
Actually I was thinking about how useful this could be for other things. For example, that recent problem where a port needed one dependency but it would break another, so you could essentially in a way use it for different versions of the same port.
<SiFuh>
farkuhar: Yeah it is pretty much what we were all discussind
<SiFuh>
disscussing
<SiFuh>
farkuhar: I didn't see ukky make a comment about it last night. And dlcusa might not be here
<ukky>
SiFuh: I just do not see how builddepends/makedepends can be easily implemented without rewriting prt-get. Especially when pkgmk is the main tool to build the port, and pkgmk does not care about runtime or build dependencies.
<SiFuh>
ukky: What is wrong with modifying prt-get?
<SiFuh>
I remember using CRUX when prt-get didn't even exist. It was never part of the original CRUX.
<ukky>
I might be the last one in the Crux gang, but it seems to me that original idea of pkgmk is the same as Slackware: let user worry about dependencies.
<SiFuh>
Heh, make depends wouldn't be in pkg utils probably, it would probably only be for prt-get
<ukky>
Makedepends is a must-have feature for any well-designed build system. But not for Crux. It would require a complete rewrite, and also adding isolated build environment feature.
<SiFuh>
I don't see how it would be a complete rewrite.
<ukky>
Also, shell script is the wrong choice for build script. Try killing build process midway: pkgmk has to restart build process. Well designed build system should restart from where it was stopped.
<SiFuh>
ukky: Well no offence even if I don't care who it offends. CRUX was a pile of shit from the start. But it was the best pile of shit. It was created by a gang of amateurs and it had heaps of issues and still has.
<SiFuh>
These days they focus on crap like python and colours and have no interest in actually building CRUX for what it can be.
<ukky>
SiFuh: I do not see how your opinion could offend somebody.
<SiFuh>
Damn it! I need to try harder then
<SiFuh>
I think port utils should be evolved and it should be constantly adapted and tweaked. As for the original package utils, that is fine untouched.
<SiFuh>
Who knows. 2026 farkuhar writes port utils in perl. Hahaha
<ukky>
Port build system should be based on make(1). Shell/Perl/Python are not proper tools for that.
<SiFuh>
ukky: Built the frame to pour the concrete in. Now just waiting for the concrete to arrive. Will rip out the 4 rods that hold the gate up.
<ukky>
SiFuh: how deep concrete will go down the surface level, and how high above surface level?
<SiFuh>
5 inch deep holes and a blcok about 1/2 and inch to 1" above the ground.
<SiFuh>
I might have to cut the concrete below it though rather than just placing fresh concrete on top of the surface
<ukky>
Lets hope it will hold gate post(s).
<SiFuh>
Also, I need to test this concrete to see if it cracks easily. It is some Chiense quick dry powder. I may need to mix it with sand and stuff for strength.
<SiFuh>
1 post only.
<ukky>
Fresh concrete on top of old convrete is bad idea D
<SiFuh>
I think so
<dlcusa>
I'm way too busy to give the question the attention it deserves, but I'm not, ah, crucial to this deliberation. I like SiFuh's idea of separate headers though, and, while it would be nice to have a unified methodology for all flavors, at least document the how and why up front.
<dlcusa>
And, with that, I'm afk again...
<farkuhar>
ukky: It's a bit of an overstatement to say that a complete rewrite of prt-get is needed, for the distinction between build-time and runtime dependencies to be respected. I have a basic idea of how the existing prt-get can be modified to do what SiFuh is suggesting.
<SiFuh>
ukky: I guess I will just cut a chunk of concrete out of the ground and relay it. That would be the best option I think.
<SiFuh>
farkuhar: What do you think about using sbase like zorz mentioned?
<farkuhar>
ukky: Adding an "isolated build environment" feature to prt-get, on the other hand, does push us toward a complete rewrite. But within the current framework, the simplest implementation of Makedepends is to install those dependencies as part of the usual depinst transaction, and then uninstall them afterward (unless they were already installed by user choice, or they serve as runtime dependencies for
<farkuhar>
one of the other targets in the transaction).
<ukky>
farkuhar: what if build is interrupted and prt-get cannot execute MakedependsUndo() stage, and there were 123 makedepends installed?
<SiFuh>
ukky: Aren't those makedepends in a change root?
<SiFuh>
ukky: Aren't each of those makedepends that succedded already an *$*pkg.tar.gz which require no rebuilding?
<ukky>
SiFuh: no. prt-get does not build ports in isolated environment.
<ukky>
SiFuh: interrupted prt-get will not uninstall makedepends.
<SiFuh>
makedepends are not installed to / it is installed in fakeroot. But the package would exist if built outside... Oh yeah now we have an issue.
<ukky>
And if user runs prt-get second time after an interrupted build, prt-get will not uninstall makedepends as they will be identified as pre-installed by user.
<SiFuh>
No, we don't install to root
<ukky>
Many users to not use chroot, containers, not fakeroot to build ports.
<SiFuh>
Where does the Pkgfile come from for those make depends? Outside in /usr/ports/* or some new under that port directory?
<ukky>
s/not/nor/
<SiFuh>
ukky: I really can't see the issue. If I want poppler, build and install to fake_root. But the archive will still be built. But if let's say we need an older poppler for libreoffice, we could have a subdirectory for it.
<ukky>
makedepends are regular ports, from /usr/ports/*, that user just do not have installed.
<SiFuh>
Yes, they get extracted into the fakeroot
<SiFuh>
Okay, I build something that requires autoconf. So lets say foo because everyone seems to use that. So I build foo. Then foo builds /user/ports/*/autoconf. It installs it to fakeroot. Then foo fails. But autoconf didn't fail so the port archive exists now. When I rebuild foo, it extracts the found archive into fakeroot and continues after user modified foo.
<ukky>
My arguments were about uninstalling makedepends (autoconf in your example) in case of failure. And when you say fakeroot, you probably mean chroot/rootfs.
<SiFuh>
Why would you uninstall a makedepends?
<SiFuh>
It isn't installed
<ukky>
Because makedepends are only required to build packages. After the build makedepends must be removed/uninstalled.
<SiFuh>
They exist in fakeroot only. Therefore it will be erased complelety after successful compilation
<SiFuh>
Only the archive would exist under the port directoy.
<ukky>
fakeroot only 'fakes' effective user ID of a non-root user, it does not provide root file system.
zorz has joined #opencrux
<SiFuh>
ukky: pedantics
<SiFuh>
It's not designed yet.
<SiFuh>
That's why it requires a discussion on how to implement it.
<ukky>
fakeroot for me has only one meaning: /usr/ports/opt/fakeroot/Pkgfile
<SiFuh>
Yeah well, that isn't what I mean nor care. I will change the name to make you happy "Really_a_fake_root" hahaha
<ukky>
It is still a fake root D
<SiFuh>
If '# Build depends' exists the we create 'Really_a_fake_root' install the makedepends to that. includes and libs and stuff are linked from it during make of foo then install foo and erase 'Really_a_fake_root'
<zorz>
namespaces :P
<zorz>
vm namespaces :P
<zorz>
SiFuh: this is the Openbsd style # vim: set ts=8 sw=8 sts=0 noet ft=sh:
<zorz>
are you happy with it ?
<zorz>
:P
<SiFuh>
I use emacs
<zorz>
it understands it.... try it
<zorz>
it should :-0
<SiFuh>
zorz: stop zorzing
<zorz>
# -*- mode: sh; tab-width: 8; indent-tabs-mode: t -*-
<zorz>
ahahhaaha
<zorz>
so we add both:
<zorz>
# -*- mode: sh; tab-width: 8; indent-tabs-mode: t -*-
<zorz>
# vim: set ts=8 sw=8 sts=0 noet ft=sh:
<SiFuh>
zorz: You know the difference between vi and emacs users?
<zorz>
emacs are retarded
<zorz>
:P
<SiFuh>
emacs users know how to use vi, and vi users generally have no idea how to use emacs. So whose the retard?
<SiFuh>
In simple terms, you vi users can fuck yourself, your opinions matter none until you know how to use emacs
<zorz>
ofcourse and we know.... been there did that :P
<zorz>
the only thing that i miss from emacs is dired
<farkuhar>
The comparison to Slackware is instructive. Like Slackware, CRUX was originally envisioned as a distro providing binary packages, but with the ports system as an extra layer to inform users how the packages were built. Later, users got fast enough hardware to build ports themselves, but there was never any safeguard to ensure that the ports were built in an isolated environment.
<SiFuh>
That doesn't sound like CRUX
<zorz>
farkuhar: speaking of isolated enviroment the iso of emmet had libbsd and libmd... this bloody libmd compiles in everywhere even in xorg-server
<farkuhar>
So if Slackware has already solved the problem of creating an isolated chroot where all the Makedepends can be extracted temporarily, maybe we can borrow some ideas from how Slackware does it.
<farkuhar>
zorz: the eager linking of libbsd and libmd is old news. They were already commenting on that, back when libbsd was introduced during the CRUX 3.7 era.
<zorz>
i took them OFF
<zorz>
did not know.... bloody hell
<farkuhar>
SiFuh: It doesn't sound like how CRUX advertises itself today, I agree. Even the early releases didn't offer a repository of binary packages; it was only through the ISO that you obtained the latest pre-built packages. Users who were satisfied with a minimal base didn't need anything more than what came on the ISO.
<farkuhar>
zorz: You might recall when jaeger introduced libbsd to contrib, there was a whole debate about whether it should be sequestered into a non-standard directory to avoid eager linking. You can see the previous attempts to solve this problem, just browse the contrib git history (prior to libbsd getting moved to opt).
<zorz>
farkuhar: yeap...but anyway, i dont need it. it happen to be there.
<zorz>
farkuhar: why you introduced autoconf-2.13 ? only for firefox ? i think this is what i am missing and i cannot compile with gcc and i am forced to use clang.
<SiFuh>
zorz: Good luck builing SYSLINUX with clang
<zorz>
hahahahaha
<zorz>
SiFuh: fuck off man.. i am gcc, and efibootmgr is my bootloader
<zorz>
SiFuh: hahaha
<zorz>
compiling clang... you see Microsoft and Microsoft
zorz has quit [Quit: leaving]
zorz has joined #opencrux
<farkuhar>
zorz: Be thankful you're not hitting errors like this, https://0x0.st/8g9C.txt (seen yesterday in #kisslinux)
<SiFuh>
C23
<zorz>
yeee
<zorz>
farkuhar: this guy had a kiss of linux :P
erilun06-mobile has joined #opencrux
erilun06 has joined #opencrux
<zorz>
farkuhar: python-tomli is in stdlib from python >=3.11
<zorz>
coolllll
<zorz>
i run 3.13.3
<SiFuh>
I run 5km
<erilun06>
I am a bit out of the loop, where can I ask for help running "mainline/old" crux? do I keep using #crux or #crux-social or is it OK to ask here?
<SiFuh>
Ask here
<erilun06>
thanks. I ended up moving the hdd from the laptop I installed on to my desktop after the laptop stopped showing anything(not even boot logo etc)
<erilun06>
before the move, if I remember correctly, startx would work, now it does not when booting to crux on the desktop, I am curently assuming it is something driver or x-config related
<SiFuh>
No custom xorg.conf?
<zorz>
many things, xkeyboard-config, xorg-xauth... those are not installed with xorg-xinit.
<zorz>
opencrux made me a dependancy expert :P
<zorz>
i just compiled qemu, i am fed up of formating my /dev/root
<zorz>
first time i will use qemu.
<erilun06>
booth with and without, that is something I have tried, I also tried recompiling the kernel on the new hardware... one sec and Ill 0x0.st my config and the error message
<erilun06>
it worked pre hardware-move
<SiFuh>
erilun06: Just ignore zorz. Tell the channel your hardware specs. Someone other than zorz should jump in.
<SiFuh>
erilun06: move your xorg.conf to something like xorg.conf.old
<SiFuh>
Then try again.
<erilun06>
I already ran without an xorg.conf.new, and practically the same error, if not exactly the same
<SiFuh>
I am saying don't use any xorg.conf
<farkuhar>
BusIDs "PCI:45:0:0" and "PCI:45:0:1" are unlikely to be the same, between laptop and desktop. Similarly, "amdgpu" might not be the right driver on the new hardware.
<SiFuh>
erilun06: ^ Point exactly
<farkuhar>
xorg/mesa has a README that tells you which of the optional dependencies you should install first, in order to have the appropriate drivers built. Go through that README, taking note of what applies to your hardware.
<erilun06>
I generated the conf after doing the hardware switch, and I think the laptop had intel cpu(integreated graphics), and I think I installed the amdgpu driver after switching too, but I can check
<erilun06>
my hardware BTW:
<erilun06>
AMD Ryzen 5 5600 (12) @ 4.470GHz
<erilun06>
AMD ATI Radeon RX 7600/7600 XT/7600M XT/7600S/7700S / PRO W7600
<erilun06>
*coppied from neofetch on arch
<erilun06>
the laptop has an intel sticker... so the driver is definetly correct, unless there is a better one than amdgpu
erilun06 has quit [Remote host closed the connection]
<ukky>
erilun06-mobile: try running xinit instead of startx. This is what I use: MYTTY=$(tty | sed 's|/dev/tty||'); xinit /home/$(id -un)/.xinitrc -- :7$MYTTY vt$MYTTY
<SiFuh>
HAHAHAHA come on ukky
erilun06 has joined #opencrux
<ukky>
SiFuh: your advice to rename xorg.conf will not fix xauth error. Using xinit instead of startx _will_ avoid using xauth.
<SiFuh>
ukky: No but we are not working on that, you suggesting to remove ~/.Xauthority ?
<ukky>
SiFuh: I'd like to see what will happen if /usr/bin/xauth is not used. If /usr/bin/xauth fails Xorg will not start.
<SiFuh>
ukky: Sure, all yours. Just don't ask zorz :-P
<erilun06>
https://gitlab.com/-/snippets/4861761 is now updated, startx-log-1 is when running without ~/xorg.conf.new and /root/xorg.conf.new I also uploaded the var/log/Xorg.0.log file
<erilun06>
ukky: could you resend the thing you wanted me to use? each reboot(each time this user is disconnected) the IRC history gets wiped
<SiFuh>
[02 25 32] [ukky> erilun06-mobile: try running xinit instead of startx. This is what I use: MYTTY=$(tty | sed 's|/dev/tty||'); xinit /home/$(id -un)/.xinitrc -- :7$MYTTY vt$MYTTY
<erilun06>
thanks, BRB
erilun06 has quit [Remote host closed the connection]
* ukky
is afk
<erilun06-mobile>
ukky: SiFuh: still a "no screens found" error with that script (Modified to start on tty3 instead of tty7)
<erilun06-mobile>
The script worked under arch
zorz has quit [Quit: leaving]
zorz has joined #opencrux
<SiFuh>
erilun06-mobile: If it is not loading _WITHOUT_ an xorg.conf file then you are missing some xorg-* drivers
<SiFuh>
If you are using an xorg.conf file, then you need to get rid of it and try again
<erilun06-mobile>
No Xorg.conf
<SiFuh>
erilun06-mobile: Good, do you remember I asked for hardware specs also? Haven't seen those yet.
<zorz>
erilun06-mobile: i can give you kernel-config for this machine... we run similar.
<zorz>
brb afk
zorz has quit [Quit: leaving]
zorz has joined #opencrux
erilun06-emacs has joined #opencrux
erilun06-emacs has left #opencrux [#opencrux]
erilun06-emacs has joined #opencrux
<erilun06-emacs>
zorz: good thing my desktop is pretty beefy, if I will need to recompile the kernel again
<zorz>
i do have amd cpu, amdgpu, what is your wifi card iwlwifi ?
<erilun06-emacs>
no wifi, I have a cable from the router to the PC
<zorz>
you need to enable i think the ethernet... i dont remember if i have it enabled. i am only wifi. anyway get the config.. incase you need to get ideas. https://0x0.st/8gUE.28-confi