View previous topic :: View next topic |
Author |
Message |
toralf Developer
Joined: 01 Feb 2004 Posts: 3925 Location: Hamburg
|
Posted: Sun Jun 24, 2018 6:15 pm Post subject: Re: Is Gentoo a solid choice for a CS Student |
|
|
Rozza wrote: | I was wondering if you guys would recommend gentoo for univeristy work? | Yes. |
|
Back to top |
|
|
russK l33t
Joined: 27 Jun 2006 Posts: 665
|
Posted: Sun Jun 24, 2018 6:53 pm Post subject: Re: Is Gentoo a solid choice for a CS Student |
|
|
toralf wrote: | Rozza wrote: | I was wondering if you guys would recommend gentoo for univeristy work? | Yes. |
Don't forget to focus on your course work. |
|
Back to top |
|
|
1clue Advocate
Joined: 05 Feb 2006 Posts: 2569
|
Posted: Mon Jun 25, 2018 2:27 pm Post subject: |
|
|
steveL wrote: | 1clue wrote: | IMO one thing markdown does successfully is prove that a wiki-style markup can do everything needed by most documentation which is not a book, or highly mathematical. I'm pretty sure that if my coworkers and I change documentation specs it will be to another wiki-style language. | Have you looked at asciidoc? It was mentioned in another thread.
Apparently the ruby version is where it's being worked on now. |
Just started looking, thanks for the reference.
It's a real viable candidate so far. Not even through the first example document though, so jury's still out. |
|
Back to top |
|
|
khayyam Watchman
Joined: 07 Jun 2012 Posts: 6227 Location: Room 101
|
Posted: Mon Jun 25, 2018 4:02 pm Post subject: Re: Is Gentoo a solid choice for a CS Student |
|
|
Rozza wrote: | I was wondering if you guys would recommend gentoo for univeristy work? |
Rozza ... my short answer would be no ... a quick look through some of the posts made here in the last day (or week, or month) suggests that gentoo is quickly becoming a culture of know-nothingness, in part because the wider linux culture has become one where the very idea of a body of "knowledge" has been replaced by expediency, and deference to economic, or political, considerations. I literally spat my cornflakes across the room yesterday morning when reading a systemd related post (actually, a couple of them), not because the poster was lacking knowledge, but because the underlying "problem" was taken as somehow normal (a corner case the user needs to work around, and certainly not something fundamental). Nothing in the linux world is going to survive that, because our primary resource is not code, but the knowledge and labour that supports that code ... and that is being completely undermined by forces essentially hostile to it. So, if you have the long game in mind then you probably should be looking at *BSD as a more "solid" option, particularly if you're expecting to rely on the culture to guide you through your CS education.
best ... khay |
|
Back to top |
|
|
sitquietly Tux's lil' helper
Joined: 23 Oct 2010 Posts: 143 Location: On the Wolf River, Tennessee
|
Posted: Mon Jun 25, 2018 7:22 pm Post subject: |
|
|
The Doctor wrote: | I used Gentoo for over 6 years of college work. Undergraduate plus some grad work. It never let me down. On the other hand, Arch ... The secret to using Gentoo successfully is do backups. |
I used an IBM 360 and a card punch for my 6 years of college work. Very reliable! I can't recommend it though, you could only program in Fortran. Since the time BSD, and then Linux, was invented I've used, alternately, Gentoo (including Funtoo and Calculate variants), Arch, Debian, OpenBSD, and FreeBSD. I have gone through the "college computer" selection process in setting up a workstation to do online courses and independent studies. What I've learned is that (a) Gentoo and FreeBSD (and Debian) provide a very large number of well-supported packages and all of the languages and tools that I need for modern compsci courses, and (b) the only linux specifically mentioned or used at university seems to be Ubuntu or Debian. For example at Carnegie-Mellon they have a wonderful course covering everything about computer systems that a C programmer would need to know, called Computer Systems: A Programmer's Perspective. The book assumes linux as an OS and C as the programming language. At CM they use Ubuntu for the lab assignments. Nothing about installing, configuring and maintaining a Gentoo system would really give you a basis for better understanding that course.
I use Gentoo (actually I use Calculate Linux which is Gentoo with a gui installer and most packages available as pre-build binaries) because it is solid, OpenRC is a delight. I also use OpenBSD for similar reasons; it is more coherent than Gentoo in its development process because they develop the entire operating system AND the ports that go on top of it AND test the entire stack with a snapshot that is updated every few days (it rolls forever). You can learn a lot from OpenBSD and it is an easier operating system to study than linux. OpenBSD runs my file server / backup server on a little Intel Atom computer with 4 GB of memory. I update every 6 months; it only takes about 20 minutes to update the OS and packages.
Some possible steps toward preparing for college CS:
* reread The Doctor's advice
* get a copy of CS:PP and K&R
* get/borrow a backup computer so that you can fearlessly re-install the system on your working computer at any time
* learn to use unison for syncing one or more working computers via your backup system
* install Calculate Linux on your working computer because it is fast to install, fast to update, and will give less downtime / compile time during your semesters than Gentoo itself would. It's default install keeps two partitions for the operating system and cl-install will install the new iso image onto the alternate partition, and let you choose the new updated system from grub or fallback to the old one if there are problems. Fail-safes are nice!
* learn to keep your configurations in a separate folder and "install" them using stow or xstow -- this allows you to start with a clean OS install and bring back your old configurations as needed
* learn in small chunks -- the learning is mainly from the books not by sitting at the computer keyboard and CERTAINLY not on Internet.
* start a notebook that allows you to include links and images (I use Zim) and start taking notes as you read and think |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Tue Jun 26, 2018 12:43 pm Post subject: |
|
|
I have to agree with sitquietly, that calculate is a nice way into Gentoo; it uses openrc by default (though I prefer newnet with dhcpcd.)
Thanks for the link on stow for dotfiles as well; it's been bugging me for ages that there isn't a convenience tool to manage this properly, and there it is :-) |
|
Back to top |
|
|
sitquietly Tux's lil' helper
Joined: 23 Oct 2010 Posts: 143 Location: On the Wolf River, Tennessee
|
Posted: Tue Jun 26, 2018 4:58 pm Post subject: |
|
|
steveL wrote: | IThanks for the link on stow for dotfiles as well; it's been bugging me for ages that there isn't a convenience tool to manage this properly, and there it is |
And note that you can create a README file for each configuration, e.g. ~/configuration/spacemacs/README, and the README will be ignored by stow. And so easily you now have a place to drop those notes about configuration choices, issues, and todos.
When I bring up a new computer or a new OS I bring in my home folder from the backup server in stages. I don't copy it all in at once because that would overwrite the dotfiles that the OS and DE have created -- I may want to keep that nice desktop setup and that shell profile. So bringing in my files without disturbing the default configs I need rsync, unison and stow:
Code: | rsync -av backup-server://Backups/sitquietly/configuration ~/
mkdir ~/.unison
cd ~/.unison
ln -s ~/configuration/unison/.unison/sitquietly.prf
unison -auto sitquietly
|
(the unison config is the only one that can't be stowed because the database that unison creates inside ~/.unison is unique for each installation).
At this point I have all of my backed-up files and all of my old dotfiles are available but have not overwritten the defaults. Now to get back the spacemacs variant of my emacs setup:
Code: | cd ~/configuration
stow spacemacs
|
When I yearn for my old manually configured emacs:
Code: | cd ~/configuration/
stow -D spacemacs
stow emacs
|
After I've done some work in this new system I sync those changes back to the server
Code: | unison -auto sitquietly |
reboot into the other OS or move to the other computer on the network and pick up that work by
Code: | unison -auto sitquietly |
|
|
Back to top |
|
|
khayyam Watchman
Joined: 07 Jun 2012 Posts: 6227 Location: Room 101
|
Posted: Wed Jun 27, 2018 8:44 am Post subject: |
|
|
sitquietly, et al ...
on the question of managing dotfiles, I was at one point a stow user but have since switched to using dev-vcs/vcsh (for reasons which should be obvious when reading the "30 Second How-to").
best ... khay |
|
Back to top |
|
|
sitquietly Tux's lil' helper
Joined: 23 Oct 2010 Posts: 143 Location: On the Wolf River, Tennessee
|
Posted: Wed Jun 27, 2018 3:32 pm Post subject: |
|
|
khayyam wrote: | on the question of managing dotfiles, I was at one point a stow user but have since switched to using dev-vcs/vcsh (for reasons which should be obvious when reading the "30 Second How-to") |
I had considered git but I actually do keep my dotfiles under version control using fossil. I like the bug-tracking, wiki and technotes featues of fossil, allowing me to access all repository info from firefox connecting to fossil's built-in web server. Just read the What is Fossil? page and you'll switch to fossil.
Code: |
mkdir ~/Repository
fossil new ~/Repository/configuration.fossil
cd ~/configuration
fossil open ~/Repository/configuration.fossil
|
To list all of the configuration files that have not yet been added to Fossil:
Code: |
cd ~/configuration
fossil extra --dotfiles
|
when a configuration is stable or when it is later changed, e.g. for vim
Code: |
cd configuration
fossil add vim/README vim/.vimrc vim/.vim/
fossil commit -m "My stable vim configuration"
|
But the web interface is the cat's meow
Code: |
fossil ui ~/Repository/configuration.fossil
|
|
|
Back to top |
|
|
1clue Advocate
Joined: 05 Feb 2006 Posts: 2569
|
Posted: Wed Jun 27, 2018 3:44 pm Post subject: |
|
|
I have a git project containing all my scripts and configurations. It's cross-platform where necessary.
I have provision for user-specific settings and site-specific settings as well.
My sole addition to my .profile is a one-liner which detects the existence of my git project and, if found, pulls it in.
Code: |
[[ -s "$HOME/.mystuff/profile" ]] && source "$HOME/.mystuff/profile"
|
|
|
Back to top |
|
|
khayyam Watchman
Joined: 07 Jun 2012 Posts: 6227 Location: Room 101
|
Posted: Wed Jun 27, 2018 4:49 pm Post subject: |
|
|
khayyam wrote: | on the question of managing dotfiles, I was at one point a stow user but have since switched to using dev-vcs/vcsh (for reasons which should be obvious when reading the "30 Second How-to") |
sitquietly wrote: | I had considered git but I actually do keep my dotfiles under version control using fossil. I like the bug-tracking, wiki and technotes featues of fossil, allowing me to access all repository info from firefox connecting to fossil's built-in web server. Just read the What is Fossil? page and you'll switch to fossil. :lol: |
sitquietly ... none of those are features I would ever use, my dotfiles are not places I experiment (they are known quantities which I have honed over years, if not decades), and any "technotes" are embedded directly in the form of comments (they are after all textfiles/dotfiles). All I need is a repository where they can be pushed/pulled, and, to a far lesser degree, any changes tracked.
Otherwise it looks fairly interesting, however, when I read "built-in web server" I automatically think of the following:
Doug McIlroy wrote: | This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface. |
best ... khay |
|
Back to top |
|
|
sitquietly Tux's lil' helper
Joined: 23 Oct 2010 Posts: 143 Location: On the Wolf River, Tennessee
|
Posted: Wed Jun 27, 2018 7:51 pm Post subject: |
|
|
khayyam wrote: | ...it looks fairly interesting, however, when I read "built-in web server" I automatically think of the [The Unix Philosophy]...
|
Git and Fossil are different approaches for sure ... lots of little tools vs. a self-contained system that serves a well-defined purpose.
Fossil, and its sqlite database, both serve a "cathedral" development model in which the project is closely supervised by a highly engaged architect, in this case, me.
In case anyone overlooked my previous link, you can read Fossil vs. Git. |
|
Back to top |
|
|
khayyam Watchman
Joined: 07 Jun 2012 Posts: 6227 Location: Room 101
|
Posted: Wed Jun 27, 2018 9:28 pm Post subject: |
|
|
khayyam wrote: | ...it looks fairly interesting, however, when I read "built-in web server" I automatically think of the [The Unix Philosophy]... |
sitquietly wrote: | Git and Fossil are different approaches for sure ... lots of little tools vs. a self-contained system that serves a well-defined purpose. |
sitquietly ... not to open up a line of argument but "doing one thing ... well" is the measure of "well-defined purpose", and "self-contained" is the opposite of that. You can of course argue that including a webserver just makes things easier (which is probably true ... dependent on your user and use case) but that argument still runs counter to the "philosophy" as presented. I should note, the above was a passing, or throwaway, comment, I was not passing judgement on fossil.
sitquietly wrote: | Fossil, and its sqlite database, both serve a "cathedral" development model in which the project is closely supervised by a highly engaged architect, in this case, me. |
In which case a "full disclosure" might have been appropriate ... because I read your "I like the bug-tracking, wiki and technotes featues of fossil" as the recommendation of someone unconnected to the project, and so impartial.
best ... khay |
|
Back to top |
|
|
sitquietly Tux's lil' helper
Joined: 23 Oct 2010 Posts: 143 Location: On the Wolf River, Tennessee
|
Posted: Thu Jun 28, 2018 4:03 pm Post subject: |
|
|
khayyam wrote: |
sitquietly wrote: | Fossil, and its sqlite database, both serve a "cathedral" development model in which the project is closely supervised by a highly engaged architect, in this case, me. |
In which case a "full disclosure" might have been appropriate ... because I read your "I like the bug-tracking, wiki and technotes featues of fossil" as the recommendation of someone unconnected to the project, and so impartial.
|
I'm not connected to the fossil project ... I'm just the engaged architect of my own projects, one of which is maintaining the backups and dotfiles for a few computers. I appreciate your interaction on that, thanks. |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Fri Jun 29, 2018 11:36 pm Post subject: |
|
|
khayyam wrote: | on the question of managing dotfiles, I was at one point a stow user but have since switched to using dev-vcs/vcsh (for reasons which should be obvious when reading the "30 Second How-to"). | Ooh, that looks nice.
Thanks for the write-up, sitquietly; I need to come back and re-read it, when I have more headspace, but it looks cool.
Though my gut tends to prefer vcsh wrt git, I do like fossil.
I don't see a major issue with the web-server part: it seems akin to cgit and in usage terms to git-gui, both of which are routinely distributed with the git package.
And as stated in that other thread, I like the integration of fossil. I just prefer the git backend (though I think it needs sequence numbers on files and repo both, as well as commit-hashes, and a wee bit more metadata.)
Really what I'd like is a nice bundle of two git+ repos, one solely with bug ticket-data; perhaps that's a bit X-Y problem, but it describes what I mean anyhow. (Take it as a "high-level strategic overview".. ;p) |
|
Back to top |
|
|
szatox Advocate
Joined: 27 Aug 2013 Posts: 3144
|
Posted: Sat Jun 30, 2018 12:32 am Post subject: |
|
|
Quote: | Really what I'd like is a nice bundle of two git+ repos, one solely with bug ticket-data |
Git already allows that via submodules.. And the fact that submodules's content is referred by commit ID (and optionally branch), every single commit in the main repo is related to a particular commit in every single submodule, which does pretty good job at keeping things in sync. At least as long as you git pull --recursive [--remote]. Assuming you'd want to add some user interface for convenient interactions with your ticketing repo, this does not exactly look like a problem. |
|
Back to top |
|
|
|
|
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
|
|