Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
New dev-lang/rust Dependencies / Is Rust a Good Thing?
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
Tony0945
Watchman
Watchman


Joined: 25 Jul 2006
Posts: 5127
Location: Illinois, USA

PostPosted: Wed Sep 02, 2020 9:20 pm    Post subject: Reply with quote

[quote="tld"] I'd venture to guess that gcc can compile code written 40 years ago. /quote]
Yes it can.
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2737

PostPosted: Wed Sep 02, 2020 9:32 pm    Post subject: Reply with quote

Tony0945 wrote:
tld wrote:
I'd venture to guess that gcc can compile code written 40 years ago.
Yes it can.
Or at least if it cared about standards... lot of code is built around compiler bugs and compilers being non-pedantic, and then end up broken when that's fixed (usually because proper code helps with optimizing by removing a lot of guesswork). 40 years is a tad far for standards though, at least let me have C89 here.
Back to top
View user's profile Send private message
Tony0945
Watchman
Watchman


Joined: 25 Jul 2006
Posts: 5127
Location: Illinois, USA

PostPosted: Wed Sep 02, 2020 10:38 pm    Post subject: Reply with quote

Ionen wrote:
Or at least if it cared about standards... lot of code is built around compiler bugs and compilers being non-pedantic, and then end up broken when that's fixed (usually because proper code helps with optimizing by removing a lot of guesswork). 40 years is a tad far for standards though, at least let me have C89 here.

Straight K&R C code, no relying on quirks of say Borland C.
Back to top
View user's profile Send private message
lefsha
Veteran
Veteran


Joined: 30 Aug 2004
Posts: 1234
Location: Burgas, Bulgaria

PostPosted: Thu Sep 03, 2020 8:37 am    Post subject: Reply with quote

Blind_Sniper wrote:
I would agree if pulling rust into the system would drop others. It would be sane if we had one lang for compiling, one for interpreting and one for scripting, but seems we have to have all of the sorts of lang simultaniously. Every new "cool" lang should be pulled in because some dev was impressed with it..


I am 100% at your side, BUT there is no other option for source based distro not to include language which is required to build a package.
It is much worse actually. Langs like Ruby are not required at all, but used by some for scripting during the package build and we have to have them installed.

If you can't stand with it there is only 1 option left - use binary based distro. The only difference with them is, that you will be told
which packages to install even if you don't want/need them... Oh... the same shit...

Check Firefox - it requires both gcc/clang AND rust to be compiled.
We still have perl on our system even we don't use it. Where is complain about that?
_________________
Lefsha
Back to top
View user's profile Send private message
lefsha
Veteran
Veteran


Joined: 30 Aug 2004
Posts: 1234
Location: Burgas, Bulgaria

PostPosted: Thu Sep 03, 2020 8:41 am    Post subject: Reply with quote

figueroa wrote:
Lefsha, I think you are discounting that Gentoo follows upstream, not its own cyclic release patterns. If you want to update every 6 months or just once a year, do so, but you are asking for trouble


Are you sure, that you are familiar with Linux environment?
How about Ubuntu which is updated once in 6 months?
How about LTS release which are supported for a period of 3+ years?

Tell Ubuntu guys any many others like RedHat/CentOS they are looking for troubles... They will laugh at you!
Those guys make million of dollars with that work. They are pretty well educated in what they are doing.

Do not argue with me! Argue with them! :lol:
_________________
Lefsha
Back to top
View user's profile Send private message
lefsha
Veteran
Veteran


Joined: 30 Aug 2004
Posts: 1234
Location: Burgas, Bulgaria

PostPosted: Thu Sep 03, 2020 10:02 am    Post subject: Reply with quote

Hu wrote:
Given the basic problems building Rust at all, I can't agree that it's developed by more responsible people.


If you install Rust properly and don't use broken installation provided by Gentoo - Rust works perfectly.
Gentoo version doesn't have Rustup which is required by Eclipse IDE for example.
There is installation process made by developers. Works without any issue. Why Gentoo can't simply rely on it?
It takes seconds to be installed or updated!

No troubles for users, no troubles for Gentoo developers. All blames can be forwarded directly to upstream.

Nope. We don't look for easy ways. "Gentoo - we look for troubles even they are absent". - A new slogan. :lol:

Please recall me "basic problems building Rust"? - Why I don't have any?

lefsha wrote:
The real problem people met is way too frequent software update. That is fully in hands of Gentoo developers. No one is asking to upgrade any piece of software every week or day.

Hu wrote:
No, that is in the hands of the upstream developers. Gentoo releases what upstream posts. If upstream is pushing out new releases every few weeks, and every new release is an effectively mandatory blah-blah-blah


Wow. Please, call RedHat or Ubuntu and ask them how they manage things, that it is possible to do what I say!
I am not 5 years old boy. Please do not tell me any bullshit. We all aware of what is reality.

1st thought experiment:
If I install latest Gentoo and disconnect it from Internet it will still work a year after installation, 2 years... even 3 years. OMG 10y later will still be functional...

2nd thought experiment:
I have to manage a Data Center with 100k machines. What do you think will happen if I will upgrade all them on daily basis? - Correct. I will be fired on the second day.

Now review release cycle from RedHat or Ubuntu LTS and take your time for thinking further...

Hu wrote:
If the Gentoo maintainers freeze releases of rustc, how long will it be before they should just remove it from the tree because it will not work on any currently released code?


I remind you, Rust is at 2018 edition right now. Does this tells you anything? Read the Rust manual of what it is.

Hu wrote:
I don't expect such an old rustc would work.

RTFM

Hu wrote:
Per this thread, rustc is such a resource hog that building it on a system that is 5+ years old will be rather painful


If one is looking for nothing but troubles - yes, may be. But normal mortals need less than a min to install it. Well, depends on connection speed.
Use - https://rustup.rs/

Hu wrote:
Can you cite an example of the Python developers behaving as irresponsibly as the Rust developers do?


Welcome back to Earth! Read about Python2 vs Python3 and troubles caused by that for many many users.
Why do we have USE flags python3_6 python3_7 etc? Why the same is not present for GCC, nor for Rust, no for Perl etc?

Hu wrote:
Python 3.x was widely known to be a breaking release, and upstream added 5 years to the life of Python 2.7 to allow people more time to migrate.


And why people didn't yet? Why breaking people code on the place where one could introduce a marker for python3, which will use a new interpreter
while using old for everything else? - I know it is way too smart for them.

Hu wrote:
Rust had the option of being far more packager friendly, and they chose not to take it. Instead, they actively advocate curlpipesh as their preferred download path.


A Packager? Which one? There are plenty of them. Gentoo has it's own. Ubuntu another one. RedHat has RPM etc. They are all incompatible like file system structure at Linux!

ArchLinux has nothing but /usr/bin for programs. If you put a program with the same name into /usr/bin then into /usr/sbin etc it will not work for Arch.
There is no standard anymore. Each one is doing it's own thing. Why Rust should obey any rules if there are no rules?
_________________
Lefsha
Back to top
View user's profile Send private message
lefsha
Veteran
Veteran


Joined: 30 Aug 2004
Posts: 1234
Location: Burgas, Bulgaria

PostPosted: Thu Sep 03, 2020 10:30 am    Post subject: Reply with quote

Tony0945 wrote:
This is not engineering. It's Microshit tinkering.


Precisely! Dropping something just because of python2_7 support is totally wrong.
Moreover people don't really care about what is really supported.

A good example is ispc from Intel:

Code:

!!! All ebuilds that could satisfy "ispc" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-lang/ispc-9999::gentoo (masked by: package.mask, missing keyword)
/shr/str/rep/gentoo/profiles/package.mask:
# Michał Górny <mgorny@gentoo.org> (2020-08-22)
# These packages (or package versions) still require Python 2.7.
# They are either dead upstream, their Python 3 porting efforts are
# not progressing or their maintainers are simply unresponsive.
# Please do not remove any packages from this list unless you actually
# port it to Python 3.
# Removal in 30 days.  Tracker bug #694800.


Now we go to the web site of the project an pick up the first .py file from there:
https://github.com/ispc/ispc/blob/master/bitcode2cpp.py

What do we see?

Code:
#!/usr/bin/env python3

import sys
import re
import subprocess
import platform
import os
import argparse

parser = argparse.ArgumentParser()


Oh... shit...

Why not just leave things which work. Yes, there may be no support for Python2, but it still works.
And it's benchmark is better, than for Python3...

Although I personally would dream to kick out python from Linux. Most terrible language of all them.
_________________
Lefsha
Back to top
View user's profile Send private message
GDH-gentoo
Veteran
Veteran


Joined: 20 Jul 2019
Posts: 1575
Location: South America

PostPosted: Thu Sep 03, 2020 2:03 pm    Post subject: Reply with quote

lefsha wrote:
BUT there is no other option for source based distro [...]
lefsha wrote:
Gentoo version doesn't have Rustup which is required by Eclipse IDE for example. [...] Why Gentoo can't simply rely on it?
[...]
Use - https://rustup.rs/
A shell script that downloads and runs a binary installer. Gentoo is source-based, as you said. I guess you don't like the distribution's policy?

lefsha wrote:
Wow. Please, call RedHat or Ubuntu and ask them how they manage things, that it is possible to do what I say!
[...]
Now review release cycle from RedHat or Ubuntu LTS and take your time for thinking further...
They basically ignore upstream until it's time to build next release, but you probably already know that. Gentoo is rolling-release. I guess you don't like the distribution's policy?

lefsha wrote:
A Packager? Which one? There are plenty of them. Gentoo has it's own. Ubuntu another one. RedHat has RPM etc. They are all incompatible like file system structure at Linux!

ArchLinux has nothing but /usr/bin for programs. If you put a program with the same name into /usr/bin then into /usr/sbin etc it will not work for Arch.
There is no standard anymore. Each one is doing it's own thing.
And? Dealing with that is what decent build systems are for.
Back to top
View user's profile Send private message
figueroa
Advocate
Advocate


Joined: 14 Aug 2005
Posts: 2978
Location: Edge of marsh USA

PostPosted: Thu Sep 03, 2020 2:38 pm    Post subject: Reply with quote

lefsha wrote:
figueroa wrote:
Lefsha, I think you are discounting that Gentoo follows upstream, not its own cyclic release patterns. If you want to update every 6 months or just once a year, do so, but you are asking for trouble


Are you sure, that you are familiar with Linux environment?
How about Ubuntu which is updated once in 6 months?
How about LTS release which are supported for a period of 3+ years?

Tell Ubuntu guys any many others like RedHat/CentOS they are looking for troubles... They will laugh at you!
Those guys make million of dollars with that work. They are pretty well educated in what they are doing.

Do not argue with me! Argue with them! :lol:


Yes, I'm totally sure. Fixed release cycle distributions, set a stable build, then almost completely ignore upstream while taking the next release cycle period in which to debug. Then, when you get it, your new installation is effectively frozen except for bug fixes and limited application updates in order to not break the system.

Gentoo, on the other hand, is a rolling meta-distribution that rolls with upstream. Therefore, the more often you update, the lower the chance is that you'll break multiple things at the same time, or just get into dependency hell. It sounds like you don't like the concept of the Gentoo system.

LTS releases just endeavor to keep you as bug free as possible while maintaining a core stale base until the next cycle. It's a very decent approach, but it's not Gentoo.
_________________
Andy Figueroa
hp pavilion hpe h8-1260t/2AB5; spinning rust x3
i7-2600 @ 3.40GHz; 16 gb; Radeon HD 7570
amd64/23.0/split-usr/desktop (stable), OpenRC, -systemd -pulseaudio -uefi
Back to top
View user's profile Send private message
kaetahr
n00b
n00b


Joined: 14 Nov 2018
Posts: 10

PostPosted: Thu Sep 03, 2020 3:44 pm    Post subject: Reply with quote

SiberianSniper wrote:
Is it time for Gentoo as a community to fork gtk+(or at least librsvg) like we did udev?


I really hope a project like this takes off. I would even be interested in contributing.

It's ridiculous a compiler that steps so far off any sensible philosophy is taking off, but it's not like this hasn't happened before.
I don't like the solution of either compiling a huge, blobbed package, or breaking Gentoo philosophy and going for the bin.
Back to top
View user's profile Send private message
eccerr0r
Watchman
Watchman


Joined: 01 Jul 2004
Posts: 9718
Location: almost Mile High in the USA

PostPosted: Thu Sep 03, 2020 3:46 pm    Post subject: Reply with quote

Yeah that is one thing that pisses me off about both rust and especially python:

cargo and pip

Languages with their own packagers? Granted yes versioning between source files has traditionally been a problem, but solving it this way is annoying.

I've never used haskell before and wonder if this likewise has gone this way. Perl seems to also have its packager (cpan?) but seems more like an afterthought and thus optional...
_________________
Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching?
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2737

PostPosted: Thu Sep 03, 2020 5:59 pm    Post subject: Reply with quote

eccerr0r wrote:
Languages with their own packagers? Granted yes versioning between source files has traditionally been a problem, but solving it this way is annoying.

I've never used haskell before and wonder if this likewise has gone this way. Perl seems to also have its packager (cpan?) but seems more like an afterthought and thus optional...
perl was one of the first language to do this on a large scale if anything, I've used cpan all the way back in the 90s (but I haven't written perl since then so I'm out of the loop). Gentoo fetches perl modules from cpan as well but handle the management themselves through a common eclass.

But this can make things easier given every module use a similar layout, there's no need to have a overly custom ebuild for every packages then. Not that there isn't other problems.

nodejs overlays also do something similar (fetch from npm registry directly rather than use npm or yarn executables), not familiar with haskell but from a quick look about every dev-haskell/ ebuilds fetches from the same centralized site and is auto-generated I'd guess it's the same idea. List goes on, just so many popular languages have their own package management, and people using those languages actively will probably just look at you weird if you don't use it.

Edit: on a side-note, seems the currently mostly-broken/ignored-in-gentoo lua might be inheriting python's spaghetti :)
Back to top
View user's profile Send private message
lefsha
Veteran
Veteran


Joined: 30 Aug 2004
Posts: 1234
Location: Burgas, Bulgaria

PostPosted: Thu Sep 03, 2020 7:15 pm    Post subject: Reply with quote

GDH-gentoo wrote:
A shell script that downloads and runs a binary installer. Gentoo is source-based, as you said. I guess you don't like the distribution's policy?


Policy? What policy? I waiting you citing that policy here. And of course you have to explain existence of xyz-bin backages in Gentoo, including rust-bin.

GDH-gentoo wrote:
They basically ignore upstream until it's time to build next release, but you probably already know that. Gentoo is rolling-release. I guess you don't like the distribution's policy?


You are talking about things you don't understand. See the answer above.

Yes, Gentoo is rolling release. So what? Do you want to argue, that Gentoo has "every" single version of any package it provides? - I guess you know the answer.
An the answer is no.

GDH-gentoo wrote:
And? Dealing with that is what decent build systems are for.

There is no "and". The different distros are different. Why Rust has to follow any specific distro rules?

Before arguing first try to understand what has been said. Second, try to provide arguments with references if required.
If you gonna rely on any policy you have to put that policy in here or provide a link. You have to explain why Gentoo violates your policy.

Very strange argumentation...
_________________
Lefsha
Back to top
View user's profile Send private message
GDH-gentoo
Veteran
Veteran


Joined: 20 Jul 2019
Posts: 1575
Location: South America

PostPosted: Thu Sep 03, 2020 8:08 pm    Post subject: Reply with quote

lefsha wrote:
Policy? What policy?
I say "policy" in a broad sense, as in "agreement to do something in a certain way". In the context of that particular quote, it means being source-based. I claim that Gentoo is a source-based distribution. Do you deny it? :)

lefsha wrote:
And of course you have to explain existence of xyz-bin backages in Gentoo, including rust-bin.
Convenience. Like avoiding long, and potentially resource-demanding, build processes. At the cost of drawbacks that are similar to those of binary-based distributions.

Now, you could argue whether using rustup is more or less the same as installing Gentoo's dev-lang/rust-bin, or not. But even if it was, Gentoo would't be Gentoo if it didn't offer a way to also build from source.

lefsha wrote:
GDH-gentoo wrote:
They basically ignore upstream until it's time to build next release, but you probably already know that.


You are talking about things you don't understand.
The quoted part refers to things like RedHat (RHEL?) and Ubuntu LTS, which you mentioned, and their frequency of updates. figueroa said something similar, but with more details. Are we wrong?

lefsha wrote:
Yes, Gentoo is rolling release. So what?
So, it doesn't have releases and release cycles. Updates are per-package, at the discretion of their maintainers. I guess you don't like that policy? Yeah, I said "policy" again :)

There is a way of not having to "upgrade on a daily basis", as you put it. It's called "the stable branch", and you probably also know that already. Is its frequency of updates still too fast for your taste?

lefsha wrote:
GDH-gentoo wrote:
And? Dealing with that is what decent build systems are for.

There is no "and". The different distros are different.
And a decent build system allows software packages to adapt. That was my point.

Last edited by GDH-gentoo on Thu Sep 03, 2020 9:19 pm; edited 2 times in total
Back to top
View user's profile Send private message
lefsha
Veteran
Veteran


Joined: 30 Aug 2004
Posts: 1234
Location: Burgas, Bulgaria

PostPosted: Thu Sep 03, 2020 8:17 pm    Post subject: Reply with quote

figueroa wrote:
Gentoo, on the other hand, is a rolling meta-distribution that rolls with upstream. Therefore, the more often you update, the lower the chance is that you'll break multiple things at the same time, or just get into dependency hell. It sounds like you don't like the concept of the Gentoo system.


First, please, stop tell other people what they think and what they don't. I am always happy to say what I am thinking. A polite way would be asking for that.

Recall - I never say what you or other are thinking. I've made a statement and I try to protect that statement. You may disagree, which is OK.
If you put under question what I am thinking - you have to cite me. Word by word. That is one thing.

The second thing. It doesn't matter what other people are thinking as long it is not the point of discussion. I may think that drinking wine is no good.
But it has nothing to do with the topic we are discussing!

I do understand your message sounds like - "you are not one of us, you doesn't belong here" That is what you really mean by your words. Otherwise those words
carry no sense in that discussion.


Now, back to the topic.

I do offer another thought experiment:

Imagine you have Gentoo system, which you update daily or even every hour. We assume that system is correct and everything is working well there forever.
May be not, as we know it from the past, but let us simplify the things.

Now I take a period of let say 5 years and ask you make a snapshot on January 1st of each year. There will be 5 snapshots.
Each of them is correct. Then we can assume, that the transition from 1st to 2nd snapshot will be possible.
That is exactly the situation I imagine. People don't update their systems daily which NO ONE is doing for sure anyway and absolutely excluded
that people do that in Data Centers. Instead they update their system slowly.

If the transition from the snapshot N to snapshot N+1 cannot be done without error, then there will be exactly the same problem on the certain day
while updating daily.

It is much easier to make a transition for a source based distro, because all dependencies are created automatically during the compilation.
Any incompatible package won't be able to be built in the first place. I see it every day, while making custom builds.

Of course better would be if authors of any package won't be doing that frequent updates. I have never seen that such a hurry was resulting in any
significant progress and the positive impact to everyone.

A new program or library have a tendency of being updated more frequently if they are new. Very old programs commonly updated much less frequently.
Check it with Emacs or Perl.

If new version of any program is releasing weekly, that it is very likely the program will be unstable or will have more bugs.
That is a pure statistics consideration. It means the package is in very active development. Such a package can be easily considered unstable
by Gentoo.

Compare it with Linux LTS kernel versions. The current LTS which is 5.4 will be maintained till 2025. Today is still 2020.
That means Gentoo has to provide 5.4 till 2025.

That is absolutely sane behavior from Kernel developers. Why not to learn from them?

Do they violate Gentoo policy like some one here said? :lol:
Of course not.

The same valid for Rust. Today we use Rust of 2018. There is simply no 2019 nor 2020 edition yet. The previous one was 2015.
Again. Rust developers are sane. The Sane language with sane developers.

If your Rust program has been written for 2015 edition, then modern Rust will compile it, because it it stated in your Cargo.toml file
and supported by more modern Rust versions.

No daily upgrade is required. Read on https://stephencoakley.com/2019/04/24/how-rust-solved-dependency-hell
_________________
Lefsha
Back to top
View user's profile Send private message
Tony0945
Watchman
Watchman


Joined: 25 Jul 2006
Posts: 5127
Location: Illinois, USA

PostPosted: Thu Sep 03, 2020 8:34 pm    Post subject: Reply with quote

Just to interject. A very long time ago, Gentoo had what I think was called "The Gentoo reference Project". It was a repo of precompiled packages. It wasn't popular and it died away. It was initially why I installed Gentoo.

I build the Palemoon browser from source and also run it using the binary downlaod. There are of different sizes and have different icons. That's all the difference I see. Yet I feel better having built from source, because even though I haven't read the source, I could. I feel that someone has read the source, since there are spin-offs. What really is in a binary blob? How many people know that Google is reading their Gmail. We worry about trojans and malware then blithely install unknown binary software because it comes from a big company. NOT a good recommendation. Has someone read every source package I install? yes, I think so. there are lots of qualified software engineers even more paranoid than me.
Back to top
View user's profile Send private message
figueroa
Advocate
Advocate


Joined: 14 Aug 2005
Posts: 2978
Location: Edge of marsh USA

PostPosted: Thu Sep 03, 2020 8:55 pm    Post subject: Reply with quote

lefsha wrote:
figueroa wrote:
Gentoo, on the other hand, is a rolling meta-distribution that rolls with upstream. Therefore, the more often you update, the lower the chance is that you'll break multiple things at the same time, or just get into dependency hell. It sounds like you don't like the concept of the Gentoo system.

Imagine you have Gentoo system, which you update daily or even every hour. We assume that system is correct and everything is working well there forever.


I maintain five Gentoo systems currently. Two are local and on 24/7. These I usually update daily if there are any updates in the queue. I run emerge --sync during the night followed by emerge -uDUp @word and get the output in the mail. Total effort about two-three minutes per machine. I don't have to watch the updates run.

The other machines, I don't let them get too out of date, maybe 30 days tops. Otherwise, updates become difficult.

I also have a Gentoo server in a virtual machine, not accessible to the Internet, that was last updated circa 2012. it meets a specific need. Not every use case is the same. (This would actually be Gentoo box number six.)

The other parts of your almost too long to read rant are largely based on a false vision of how things really work. For example, all five of my systems use the 4.9 LTS kernel, but versions of 4.9 come out frequently as bug and security issues are discovered Therefore, I've just recently compiled and installed 4.9.233.

Stay up-to-date and don't become a victim. A system that is a year or more out-of-date, will be difficult catch back up through ordinary means. The rate of Linux development seems to move at an ever increasing rate, and Gentoo follows close behind.

Don't complain. Contribute. Help others.

BTW, updating every hour would be abusive to the repository mirrors and a violation of the generally accepted --sync code of ethics.

Thanks for playing.
_________________
Andy Figueroa
hp pavilion hpe h8-1260t/2AB5; spinning rust x3
i7-2600 @ 3.40GHz; 16 gb; Radeon HD 7570
amd64/23.0/split-usr/desktop (stable), OpenRC, -systemd -pulseaudio -uefi
Back to top
View user's profile Send private message
lefsha
Veteran
Veteran


Joined: 30 Aug 2004
Posts: 1234
Location: Burgas, Bulgaria

PostPosted: Thu Sep 03, 2020 9:19 pm    Post subject: Reply with quote

GDH-gentoo wrote:
I claim that Gentoo is a source-based distribution. Do you deny it? :)


It depends to whom you address that. Yet another thought experiment:
I use 1 system as a build station. All others 10 or 100 system are getting binary updates only.
Any user of those system will think he deals with binary distro.

Even Ubuntu is source based if you wish. There is no God who send them binary files.
It only depends at which place of the queue you are located.

Don't try to narrow your vision even if insisted by others.

GDH-gentoo wrote:
Convenience. Like avoiding long, and potentially resource-demanding, build processes. At the cost of drawbacks that are similar to those of binary-based distributions.


How long means long? The same package on Raspi and Xeon Quadro Socket station will be compiled at completely different time.
Some people say they need hours to compile Linux kernel. I need may be 5 minutes. Should it be provided as binary or not?
So it depends on the package, your equipment and what you gonna do with that. A program which is running permanently and/or consuming a lot of CPU
like a 3D game probably has to be optimized to it's limit, but something which runs once a year for 10 minutes not.

Everything we do should make sense. If people use Rust to compile Firefox there is absolutely no need to compile it from sources. A waste of time.
A Rust developer might profit from optimized version, but... highly likely a Rust developer will be using a native Rust installation, because the one provided by
Gentoo will bring nothing but troubles.

Here we come to conclusion. Rust-bin package makes sense. But Rust-src package makes no sense.
Obviously Gentoo developers will spend their time for source based package to integrate it into the system. And that would be waste of time.
They could do things much easier for them if not providing even Rust-bin, which is built by them from Rust-src.
Just make native Rust installation available for portage. One need to install it for "portage" user by script provided elsewhere. That is it.

Pushing everything to source based AND Gentoo alike is more often a waste of time. Without any profit for end user.

GDH-gentoo wrote:
Now, you could argue whether using rustup is more or less the same as installing Gentoo's dev-lang/rust-bin. But even if it was, Gentoo would't be Gentoo if it didn't offer a way to also build from source.


This illness is very well know as NIH https://en.wikipedia.org/wiki/Not_invented_here




GDH-gentoo wrote:
The quoted part refers to things like RedHat (RHEL?) and Ubuntu LTS, which you mentioned, and their frequency of updates. figueroa said something similar, but with more details. Are we wrong?


I have answered it in the previous message to figueroa.

Like I said above - think of other distros like of source based too.
Neither Gentoo nor them provide each version of every package released by authors/upstream. What is the difference whether to skip just 1 or 2 or may be 3?
See the logic description in other message.

GDH-gentoo wrote:
So, it doesn't have releases and release cycles. Updates are per-package, at the discretion of their maintainers. I guess you don't like that policy? Yeah, I said "policy" again :)


When you start to study physics for example, yes, you have to repeat the statements after your teacher. Even if you don't understand them.
The more you learn the more clear would be the meaning of those statements. Also you will start to see their limitations. The cases where they are invalid.
At some point you will be able to see the big picture as whole. No statements will be required to describe it.

I just say you have long time to go to get to that point. It makes no sense for me to argue on small things. The shortest answer to all that is - "yes and no".
But for you it is not sufficient to receive it as a meaningful message. What should I do? Teach you? - I can't, because you are arguing.
Argue with you? - I can't, because you don't have sufficient base.

I do prefer to leave it as is.
_________________
Lefsha
Back to top
View user's profile Send private message
yayo
Tux's lil' helper
Tux's lil' helper


Joined: 19 May 2014
Posts: 90

PostPosted: Thu Sep 03, 2020 9:37 pm    Post subject: Reply with quote

err... I don't get it: doesn't "different distros are different" mean that Gentoo also is different from the other ones? In fact being Gentoo a "meta-distro" means it's even more "different" from all the others from the beginning on purpose. So, if rust must not follow any specific distro rules, why should Gentoo do it? : ?

In fact I'm quite happy with Gentoo. It's not perfect. But no one is, I guess. It's just a different approach. If you like it use it, if you don't change it. I don't see the point.
(This goes for rust too when it comes to coding, of course! I have nothing against it.)

I think the point is if there is a way to do the things work better for Gentoo users (not to reinvent Gentoo).

I don't think rust can be really avoided. When I uninstalled firefox some months ago I was pretty sure it was jus a matter of time to see it coming back to my pc... -_-
It's growing up in popularity, for whatever reason, so it'll be used.

I'm just a user here, not a developer or something, so you will have to forgive me and correct me if I'm wrong.
I guess there are 2 things to do?

1_ to find more choices if possible for packages coded with rust (like some exchange for librsvg? I don't even know if there is something else available...)
2_ to fix anything else that could help to keep the system clean, like the python mess, I mean trying to keep all the packages roughly at the same version? version slots are useful but should not be abused. ._.
Back to top
View user's profile Send private message
lefsha
Veteran
Veteran


Joined: 30 Aug 2004
Posts: 1234
Location: Burgas, Bulgaria

PostPosted: Thu Sep 03, 2020 9:59 pm    Post subject: Reply with quote

figueroa wrote:
These I usually update daily if there are any updates in the queue. I run emerge --sync during the night followed by emerge -uDUp @word and get the output in the mail. Total effort about two-three minutes per machine. I don't have to watch the updates run.


That is also well known as https://en.wikipedia.org/wiki/Addiction
Here is the cure: https://en.wikipedia.org/wiki/How_to_Stop_Worrying_and_Start_Living

There is no difference, whether you spend your time in FB or compiling anything...

Frankly. One has to watch what one is updating. Especially if one path over every new version,
which might be broken. For a localhost it is not required, of course. No one cares besides you.


figueroa wrote:
The other parts of your almost too long to read rant are largely based on a false vision of how things really work.


To say you are fool without arguments doesn't require big talent. So far no one was able to demonstrate to me my false vision.

figueroa wrote:
For example, all five of my systems use the 4.9 LTS kernel, but versions of 4.9 come out frequently as bug and security issues are discovered Therefore, I've just recently compiled and installed 4.9.233.


Which tells us what? I ran 4.9 till recently and what it should mean?
Usually people provide an example of something. That "something" is absent in your message.

Quote:
The statement: I can drink 5l beer at one shot.
For example yesterday I did it twice.


Now we remove the statement:

Quote:
For example yesterday I did it twice.


Did twice what? Why we should care?

figueroa wrote:
Stay up-to-date and don't become a victim. A system that is a year or more out-of-date, will be difficult catch back up through ordinary means. The rate of Linux development seems to move at an ever increasing rate, and Gentoo follows close behind.


To my experience Arch is more bleeding edge, than Gentoo. But most people consider bleeding edge not safe, but rather the opposite...
How to deal with that fact, that many consider Debian much more stable and safe. Why for example Gentoo is not Number 1 in Data Centers?
Are they stupid?

figueroa wrote:
Don't complain. Contribute. Help others.


Hm. Not sure if you remember what was the initial topic, but I said, that Gentoo developers do things right and rust dependency is here for a reason.
I only added, that to reduce pressure for Gentoo developers AND users the updates can be less frequent. There is no benefits of frequent updates,
but much more work and more uncertainty and problems for users. And that is true. No one was able to demonstrate where I am wrong.

I guess it's a good contribution to rethink Gentoo strategy for good.

Complain? Where is a complain? If people would consider a suggestion or a bug report as a complain, I don't know where we will end.
There won't be a good end.

figueroa wrote:
BTW, updating every hour would be abusive to the repository mirrors and a violation of the generally accepted --sync code of ethics.


:lol: :lol: :lol: Still using rsync? Nope. It's 2020 and we use git. Doing "git pull" on an updated repo won't abuse github.com and its owner Microsoft.

But that joke was a good one. Could you borrow me 2 floppies for a week? Need to save my data... :oops:
_________________
Lefsha
Back to top
View user's profile Send private message
pietinger
Moderator
Moderator


Joined: 17 Oct 2006
Posts: 4496
Location: Bavaria

PostPosted: Thu Sep 03, 2020 10:05 pm    Post subject: Reply with quote

lefsha wrote:
Recall - I never say what you or other are thinking [...]

... but you know the complete knowledge of other people and their understanding ...

lefsha wrote:
You are talking about things you don't understand. [...]
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6750

PostPosted: Fri Sep 04, 2020 6:58 am    Post subject: Reply with quote

It seems I have to regularly de-mystify some of the FUD spread by Hu concerning rust:
Hu wrote:
The issue is that the Rust project has developed Rust in a way that is hostile to source-based distributions like Gentoo.

About as hostile as gcc is.
Quote:
The requirement to install Rust before you can build it is just obnoxious.

It is the same for most low-level languages: You need a compiler for the language in order to build the compiler. They might have provided better bootstraps, but it is understandable that they want to use their programming resources for other things, first.
Quote:
The inability to run Rust targets on exotic platforms for which C compilers exist is frustrating for the people who use those platforms, and could have been avoided if Rust had a Rust->C translation utility

Maintaining 2 backends is rather cumbersome. It's a free language, so everybody willing to write such a utility can do so. Attacking some upstream for not providing resources to your favorite toy project is not how open software works.
Of course, a native code output is needed for efficiency - the same reason why most C++ compilers are not C++ -> C translators.
Quote:
The use of a bundled LLVM bloats the whole process significantly, and also could have been avoided with a good Rust->C translator.

Similarly as above, they could have used a lot of resources to upstream the extensions to llvm they obviously need. You are free to upstream them and submit patches to the build system. Again: That's how open source works. Complaining that others have not done the work you would like to see be done is not the right way…
The second assertion (that no extensions to llvm are needed for a Rust->C translator) is probably wrong. At the very least it is an unlikely and unproved claim. And certainly it cannot be avoided if you want to produce efficient native code in the end.

Oh and concerning having to download the binary: For gcc, you also need a working C compiler in order to bootstrap. For most users - all who are not the first running rust on a different hardware - it is not so horrible having to download a binary once. What is broken is that users have to download a binary for every rust upgrade. But this is gentoo's fault of stable.use.masking USE=system-bootstrap - I have no idea why the gentoo rust maintainers do such a nonsense instead of setting proper build-time dependencies (if they should really be needed) - so this can really not be hold against upstream.
Back to top
View user's profile Send private message
Clad in Sky
l33t
l33t


Joined: 04 May 2007
Posts: 888
Location: Germany

PostPosted: Fri Sep 04, 2020 8:03 am    Post subject: Reply with quote

lefsha wrote:
GDH-gentoo wrote:
I claim that Gentoo is a source-based distribution. Do you deny it? :)


It depends to whom you address that. Yet another thought experiment:
I use 1 system as a build station. All others 10 or 100 system are getting binary updates only.
Any user of those system will think he deals with binary distro.

When the users are just that, users, who have to use what the employer puts in front of them, this thought experiment falls short. The system they are using has been built from source (mainly, in case some binaries were involved, like rust-bin or nvidia-drivers) by someone in the IT-Department or a contractor. The important part is: the packages/ environment has NOT been built by the distributor (Gentoo foundation).

lefsha wrote:

Even Ubuntu is source based if you wish. There is no God who send them binary files.
It only depends at which place of the queue you are located.

Don't try to narrow your vision even if insisted by others.

You can also make pigs fly by strapping a rocket to them.
Thing is, the usual way of installing Ubuntu is to download one of their most recent releases (LTS or non LTS) , make a bootable medium from it and install that.
The usual way of installing Gentoo is to boot a system, follow the steps in the Gentoo handbook (or if you don't need that, do it without), get a basic Gentoo running and install more packages from source as you see fit.

While I am not sure if there is a repository of binaries for every package on the portage tree, so that you could make Gentoo a binary distro, I'm quite sure that any binary distro is required to provide the sources, at least for all packages that are under GPL - so that it might be possible to have a source based Ubuntu.

lefsha wrote:

GDH-gentoo wrote:
Convenience. Like avoiding long, and potentially resource-demanding, build processes. At the cost of drawbacks that are similar to those of binary-based distributions.


How long means long? The same package on Raspi and Xeon Quadro Socket station will be compiled at completely different time.
Some people say they need hours to compile Linux kernel. I need may be 5 minutes. Should it be provided as binary or not?
So it depends on the package, your equipment and what you gonna do with that. A program which is running permanently and/or consuming a lot of CPU
like a 3D game probably has to be optimized to it's limit, but something which runs once a year for 10 minutes not.

Yes, it's hard to decide that. And because that is the case, I guess you could file a bug or something asking for a binary package for whatever package is taking too long or hogging too much memory while building. Or how long it took to build the package on the testing machines of the Gentoo devs.
The kernel is quite a different beast. If you don't choose a lot of modules, compiling the kernel doesn't take long, even on older machines. If you use genkernel which activates many modules, compiling takes longer.
By the way, there is "sys-kernel/gentoo-kernel-bin".
Same with the optimization you're mentioning - how could the gentoo devs decide which programm a user runs once a year for 10 minutes?


lefsha wrote:

Everything we do should make sense. If people use Rust to compile Firefox there is absolutely no need to compile it from sources. A waste of time.
A Rust developer might profit from optimized version, but... highly likely a Rust developer will be using a native Rust installation, because the one provided by
Gentoo will bring nothing but troubles.

What makes sense, though? Does it make sense to choose Gentoo in the first place? For many people probably not. There are many easier to set up distributions in all colours and flavours out there. Gentoo is not even really a distribution; it calls itself a meta distribution. You make your system what you want it to be. In order to make that possible, the usual way of doing things is to compile from source. So you're technically able to patch whatever you want into the sources, remove/ change dependencies and the like. That's not necessarily easy to do, but the way Gentoo provides packages helps with that.

lefsha wrote:

Here we come to conclusion. Rust-bin package makes sense. But Rust-src package makes no sense.
Obviously Gentoo developers will spend their time for source based package to integrate it into the system. And that would be waste of time.
They could do things much easier for them if not providing even Rust-bin, which is built by them from Rust-src.
Just make native Rust installation available for portage. One need to install it for "portage" user by script provided elsewhere. That is it.

And that is your opinion. That's OK. However, Gentoo is a source based distro, so not providing a source for a package that is not closed source is not the Gentoo way.
Gentoo was started with the purpose of being a source based meta distribution that leaves as much freedom as possible to the person building the system.
I'm quoting the www.gentoo.org welcome message here:
"Welcome to Gentoo, a highly flexible, source-based Linux distribution."
While I won't deny that in the majority of cases providing rustup/ binary rust could suffice, that would be against the aspect of "highly flexible", not to mention "source based". Moreover, looking up "rustup gentoo" lists possible solutions, so if you need it on gentoo, you can use it. Flexible, innit?

lefsha wrote:

Pushing everything to source based AND Gentoo alike is more often a waste of time. Without any profit for end user.

Another opinion. I could argue that I profit from it. Why would you want to take that away from me? Even if it is only the profit of having bragging rights. I can use and install Gentoo, whereas I know people that actually work in IT (I don't) who do not dare try install it or Arch.
But for real, my wife uses Mint and that works quite well. I have Mint on an old T420, and I am OK with it. But as soon as I need to compile something from source, because there is no up to date package in the repositories, I wish I were on Gentoo, because then I'd probably have all the tools for building with their dependencies.
Is that big enough a profit to warrant the troubles that undoubtedly also come with Gentoo. Well, that's for the user to decide and will differ from user to user.

lefsha wrote:

GDH-gentoo wrote:
Now, you could argue whether using rustup is more or less the same as installing Gentoo's dev-lang/rust-bin. But even if it was, Gentoo would't be Gentoo if it didn't offer a way to also build from source.


This illness is very well know as NIH https://en.wikipedia.org/wiki/Not_invented_here

No, not really. It's the Gentoo philosophy. Remember, Gentoo is a source based distro. So whatever source it is possible to provide, it provides.


lefsha wrote:

Like I said above - think of other distros like of source based too.

No, because they're not.

lefsha wrote:

Neither Gentoo nor them provide each version of every package released by authors/upstream. What is the difference whether to skip just 1 or 2 or may be 3?
See the logic description in other message.

Gentoo usually does provide each version - old versions are removed from the tree after some time, and not every version goes to stable, though. I think you can even still get old ebuilds if you really need/ want them, they're just not in the spotlight anymore.

lefsha"
[quote="GDH-gentoo wrote:
So, it doesn't have releases and release cycles. Updates are per-package, at the discretion of their maintainers. I guess you don't like that policy? Yeah, I said "policy" again :)


When you start to study physics for example, yes, you have to repeat the statements after your teacher. Even if you don't understand them.
The more you learn the more clear would be the meaning of those statements. Also you will start to see their limitations. The cases where they are invalid.
At some point you will be able to see the big picture as whole. No statements will be required to describe it.

I just say you have long time to go to get to that point. It makes no sense for me to argue on small things. The shortest answer to all that is - "yes and no".
But for you it is not sufficient to receive it as a meaningful message. What should I do? Teach you? - I can't, because you are arguing.
Argue with you? - I can't, because you don't have sufficient base.
[/quote]
Wow, condescending much?

I'd be really interested, why are YOU using Gentoo. What's in it for you, when you don't seem to be in favour of the source based philosophy? You could use any of the binary distros that also offer a lot of flexibility like Arch and derivatives?
_________________
Kali Ma
Now it's autumn of the aeons
Dance with your sword
Now it's time for the harvest
Back to top
View user's profile Send private message
alamahant
Advocate
Advocate


Joined: 23 Mar 2019
Posts: 3882

PostPosted: Fri Sep 04, 2020 9:20 am    Post subject: Reply with quote

Who is behind and lobbying for rust?
Is it mozilla?
Google?
Is it a politics game?
Or just that rust is a fantastic miracle language?
Maybe it is.
But for me,an ignorant Gentoo user,rust being forced on to us sucks.
Thank god for rust-bin.
So yes I can say it.:
Sod off stupid little mr Rust.
:D


Last edited by alamahant on Fri Sep 04, 2020 9:56 am; edited 1 time in total
Back to top
View user's profile Send private message
Clad in Sky
l33t
l33t


Joined: 04 May 2007
Posts: 888
Location: Germany

PostPosted: Fri Sep 04, 2020 9:46 am    Post subject: Reply with quote

alamahant wrote:
Who is behind and lobbying for rust?
Is it mozilla?
Google?
Is it a politics game?
Or just that rust is a fantastic miracle language?

No idea.
But lobbying aside, Rust is developed by mozilla and used to build Firefox and probably a few other of their products. Other programmers also use it for their projects, so we need a compiler for it in a distro that is all about compiling these packages.
Rust also releases new versions every 6 weeks or so, which results in it, being a dependency for other packages, to be updated quite often.
Why that is, is irrelevant. Rust is here and packages depend on it.
_________________
Kali Ma
Now it's autumn of the aeons
Dance with your sword
Now it's time for the harvest
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
Page 3 of 8

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum