[LANGAGES] Question avant installation: quels langages on apprend ?

Questions et astuces concernant l'installation et la configuration d'archlinux
vinz
Daikyu
Messages : 87
Inscription : jeu. 09 juin 2016, 13:09
Localisation : Bordeaux

[LANGAGES] Question avant installation: quels langages on apprend ?

Message par vinz »

Bonjour,
Archlinux semble être un très bon système d'exploitation pour élargir ses connaissances sur linux et sur la programmation liée au système d'exploitation. Néanmoins, avant de l'installer sur mon nouvel ordinateur, je voudrais savoir en fait quels sont les langages que l'utilisation de l'OS et sa customization permettent d'être amené à découvrir ? En effet, j'ai surtout utilisé la distribution Debian et au niveau de la programmation, j'ai surtout des connaissances dans des langages qui n'ont rien à voir (objet, web).

Je vous remercie d'avance pour vos réponse.

Cordialement,

Vincent.
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par Xorg »

Bonjour,

Je ne suis pas trop certain de comprendre ta question... Ce n'est pas parce qu'on utilise Arch Linux qu'on va forcément faire de la programmation. La programmation système est le plus souvent du C dans GNU/Linux, mais tu n'as pas besoin de programmer quoi que ce soit pour le fonctionnement de ton système.
Pacman est écrit en C, et Yaourt (qui est un wrapper pour Pacman) est écrit en Bash, mais nul a besoin de comprendre le C ou de maîtriser les scripts shell pour les utiliser.
La customisation, ça viendra surtout des paquets que tu choisiras d'installer.

Arch Linux utilise Systemd comme init, les services ont une syntaxe spéciale, mais celle-ci est dépend de Systemd (et non d'Arch Linux).
La seule "vraie" spécificité que je vois, ce sont les paquets. Arch Linux utilise un fichier nommé PKGBUILD pour la création des paquets, c'est clairement du Bash qui est utilisé.

Mais pour en revenir à ta question, ce n'est Arch Linux qui va te faire devenir un développeur système (tu peux le devenir avec n'importe quel système), et rien de t'empêche d'apprendre/utiliser les langages que tu veux. :)
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
vinz
Daikyu
Messages : 87
Inscription : jeu. 09 juin 2016, 13:09
Localisation : Bordeaux

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par vinz »

Je te remercie pour ta réponse rapide. En fait, c'est aussi que j'aimerai bien mettre les mains dans le système et pouvoir customizer pas mal de choses à ma façon. Il semblait qu'avec archlinux, on était plus apte à faire ça non ? Néanmoins, si j'ai envie de le faire, ce sera surtout avec du bash et c ?
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par Xorg »

Tu veux customiser quoi au juste ? C'est trop flou pour qu'on puisse donner une réponse précise.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Avatar de l’utilisateur
RoyalPanda
yeomen
Messages : 239
Inscription : lun. 19 mai 2014, 09:08

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par RoyalPanda »

Bonjour,
Comme beaucoup de distribution, Archlinux est un empilement de beaucoup de chose. La base est écrite en C/C++ pour sa majeure partie mais ne se modifie pas tous les quatre matins "pour tester". Après, les paquets disponibles le sont dans le format utiliser par le développeur, donc il y a du C, du C++, du Python, du PERL et plein d'autres langages.
Si tu souhaites vraiment mettre les mains dans le cœur d'une distribution, une chose est faite pour toi : LFS.
Archlinux, je la vois plutôt comme une distribution modulaire et personnalisable, qui n'a pas spécialement vocation à t'apprendre du langage, quel qu'il soit. Même si par la force des choses, tu est obligé de mettre les mains dedans et donc d'apprendre comment ça fonctionne.
Par contre, pour le coup, LFS "ça pousse velu". En gros, tu te fais ta distribution en entier, en compilant tout depuis les sources. M'enfin même la, tu n'apprends pas "un langage", mais une distribution...
Avatar de l’utilisateur
waitnsea
Maître du Kyudo
Messages : 2114
Inscription : jeu. 15 mars 2012, 05:08

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par waitnsea »

Bonjour,
Sans te lancer dans la programmation, tu te sentiras bien, au quotidien, de te familiariser avec la ligne de commande :
http://www.shellunix.com/commandes.html
http://www.linuxcertif.com/man/1/ls/
et les bases des scripts en bash : http://marionpatrick.free.fr/man_html/h ... shell.html
ces liens sont des exemples, il y a des dizaines de sites...
vinz
Daikyu
Messages : 87
Inscription : jeu. 09 juin 2016, 13:09
Localisation : Bordeaux

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par vinz »

Je vous remercie tous pour vos réponses et merci pour les liens surtout. Néanmoins, je vais poser une autre question, quelle est la principale particularité de archlinux par rapport à d'autres telles que Debian par exemple ? En fait, c'est un peu autour de ça que tourne ma précédente question. Je vous remercie d'avance pour vos réponses qui vont sûrement résoudre mes interrogations.
Avatar de l’utilisateur
waitnsea
Maître du Kyudo
Messages : 2114
Inscription : jeu. 15 mars 2012, 05:08

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par waitnsea »

1. Debian a pour vocation la stabilité, l'usage pro-serveur, et ses dérivées - premières (Ubuntu) - et secondes (Mint) - utilisent des versions testing et introduisent des logiciels non-free.
Archlinux est une (la seule ?) vraie rolling-release, cad qu'on y est guidé à chaque grande et inévitable mutation.
De ce point de vue, la Debian SID peut-être utilisée en RR mais comme ce n'est pas sa vocation, on ne sera pas guidé, les distributions comme Mint-LMDE qui l'ont tenté ont bien du mal.

2. La Doc d'Arch est une véritable bible. Celle d'Ubuntu aussi, mais je dirais que celle d'Arch est plus universelle. Je n'ai jamais installé longuement Fedora, elle me semble puissante, mais n'est pas une RR.

3. Aucune configuration n'est pré-mâchée, toute fonction doit être comprise, les manuels lus, les exemples de config analysés et non copiés. Bien qu'Arch vise manifestement des informaticiens confirmés, elle prend par la main les non-informaticiens motivés. Debian, malgré son immense documentation, n'a pas des Wiki aussi clairs, à mon avis

4. Le Wiki francophone est très bien fait, mais, faute de main-d-œuvre, il ne peut remplacer le Wiki-inter. Anglophobes totaux s'abstenir...
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par FoolEcho »

vinz a écrit :Je vous remercie tous pour vos réponses et merci pour les liens surtout. Néanmoins, je vais poser une autre question, quelle est la principale particularité de archlinux par rapport à d'autres telles que Debian par exemple ?
Deux différences principales:
* le fait d'être une distribution de type rolling release (il n'existe pas de version Arch: les intégrations sont continues).
* le fait de limiter le nombre de patch au minimum vital, le code source est au plus proche de ce qui existe au niveau des différents projets/applications, très peu d'adaptations ou de rustines sont faites pour Arch.

Quand on parle de personnalisation, cela se passe au niveau de la construction du système (tu installes et configures les paquets que tu veux: de base n'est fourni que le noyau, le gestionnaire de paquet, etc. ; si tu veux un gestionnaire réseau tu le prends, pareil pour les environnements graphiques), pas au niveau du code et très peu au niveau des options de compilation même si elle le permet (Arch n'est pas Gentoo).
«The following statement is not true. The previous statement is true.» :nage:
vinz
Daikyu
Messages : 87
Inscription : jeu. 09 juin 2016, 13:09
Localisation : Bordeaux

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par vinz »

Ok. Globalement, on construit le système autour du noyau. Cela demande des connaissances de base et notamment savoir quels sont les paquets qui correspondent à ce que l'on souhaite faire. Il y a t'il des endroits où l'ont peut facilement trouver les informations ou vaut il mieux passer par les forums ? Pacman doit sûrement être accessible via une interface utilisateur où l'on peut aussi trouver les descriptions et les commentaires ? Désolé pour les questions, je découvre.
Avatar de l’utilisateur
waitnsea
Maître du Kyudo
Messages : 2114
Inscription : jeu. 15 mars 2012, 05:08

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par waitnsea »

vinz a écrit :Pacman doit sûrement être accessible via une interface utilisateur
Oublie ça, synaptic (fade copie = octopi) n'existe pas sous Arch. Il faut absolument oublier le graphique-à-tout-prix et graisser ton clavier !
Yaourt est un outil puissant, il simplifie l'installation des paquets AUR mais est un outil de recherche plus puissant et maniable qu'aptitude (vraiment pénible et error-friendly à mon avis)

Edit : Yaourt s'utilise aussi en ligne de commande, comme pacman, avec les fonctions supplémentaires dites plus bas
Dernière modification par waitnsea le ven. 10 juin 2016, 12:11, modifié 2 fois.
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par Xorg »

Ce n'est pas vraiment la vocation d'Arch Linux de proposer des interfaces pour les utilisateurs. L'installation, qui se fait uniquement en ligne de commande, en témoigne. Le but est de comprendre comment ton système fonctionne. Si tu veux quelque chose d'user-friendly ou out-the-box, alors Arch Linux ne te conviendra pas.
On peut résumer GNU/Linux a un ensemble de briques : on prend divers logiciels, qui constituent des briques, et les uns avec les autres constituent la distribution. Arch Linux a juste besoin des paquets du groupe base pour fonctionner.

Après il existe des logiciels créés par certains utilisateurs et distribués sur AUR (comme pacmanxg), mais ça n'a rien d'officiel. :)

Debian est plus connue pour son côté stable, mais les paquets sont très souvent périmés par rapport à la dernière version upstream. Après c'est ce qu'on dit, je n'ai pas à me plaindre de problème de stabilité, tous dépend des paquets utilisés.
Par rapport à ce que dit Waitnsea, Pacman a rien a voir avec dpkg/apt-get/aptitude. J'étais habitué à eux au début, et aujourd'hui il y a plein de commandes que je suis capable de faire avec Pacman mais pas avec apt. :lol:
Question de préférences.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
otacon
Chu Ko Nu
Messages : 466
Inscription : sam. 07 sept. 2013, 19:22
Localisation : Limousin

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par otacon »

Cela demande des connaissances de base et notamment savoir quels sont les paquets qui correspondent à ce que l'on souhaite faire. Il y a t'il des endroits où l'ont peut facilement trouver les informations ou vaut il mieux passer par les forums ?
Oui pour les connaissances de base. Pour les acquerir, tu installes ton arch linux suivant le wiki : base, bootloader, serveur graphique, environnement, logiciels productif. Alors tu auras compris le fonctionnement du wiki et tu pourras te sortir de tous les obstacles (il y en a en fait très peu si tu as une installation basique). Oublies tout de suite les tutos qui fleurissent sur le net, ce que tu penses gagner en temps d'installation sera perdu au centuple à la moindre question/petite config à faire. Wiki for ever.

Quand je cherche un paquet, en général je tape "nom_du_logiciel archlinux" sur goog et je trouve très rapidement le nom du paquet. Reste à l'installer avec pacman.
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par Xorg »

otacon a écrit :Quand je cherche un paquet, en général je tape "nom_du_logiciel archlinux" sur goog et je trouve très rapidement le nom du paquet. Reste à l'installer avec pacman.
Ou sinon, quand tu connais le nom exacte d'un fichier présent dans un paquet, tu peux utiliser pkgfile. Ça donne le nom des paquets qui fournissent ce fichier. :D
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17186
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par benjarobin »

Je ne sais pas si pkgfile est déprécié mais maintenant cette fonctionnalité est parfaitement géré par pacman en natif. Donc inutile d'installer un paquet supplémentaire pour cela
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
vinz
Daikyu
Messages : 87
Inscription : jeu. 09 juin 2016, 13:09
Localisation : Bordeaux

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par vinz »

Merci pour les réponses et aussi les différents gestionnaires de paquets qui semblent diviser un peu tout le monde : yaourt et pacman. Si j'ai bien compris, le premier est en ligne de commande et le second propose une interface utilisateur graphique. pkgfile sert quant à lui a récupérer les fichiers au sein des paquets et peut être créer un paquet ?
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par Xorg »

vinz a écrit :Merci pour les réponses et aussi les différents gestionnaires de paquets qui semblent diviser un peu tout le monde : yaourt et pacman. Si j'ai bien compris, le premier est en ligne de commande et le second propose une interface utilisateur graphique. pkgfile sert quant à lui a récupérer les fichiers au sein des paquets et peut être créer un paquet ?
Non, non et non.

Pacman c'est le gestionnaire de paquets par excellence d'Arch Linux, il n'y en a pas d'autre. Il est uniquement en ligne de commande (j'ai mis le lien d'un paquet qui permet d'utiliser Pacman avec une interface graphique, mais ça n'a rien d'officiel, et personnellement je ne connais pas beaucoup de gens qui l'utilise).
Yaourt utilise Pacman, mais il offre quelques fonctionnalités supplémentaires, comme par exemple il permet de compiler des paquets sources présents sur AUR. Il est lui aussi en ligne de commande. En fait, il y a d'autres alternatives à Yaourt, mais on est nombreux à l'utiliser dans la communauté française (car il est justement développé par archlinuxfr).

Oublie ce que j'ai dit à propos de pkgfile... Ça ne récupère pas de fichier, c'est juste que ça te donne le nom du paquet qui contient un fichier. Tu en auras sans doute pas besoin. C'est utile par exemple quand tu veux utiliser une commande qui n'est pas installée et que tu cherches le paquet qui la fournit :

Code : Tout sélectionner

$ pkgfile gedit     
extra/gedit
@Benjarobin : Tu veux parler de pacman -Fo ? Je viens de tester, il faut donner le chemin complet et la recherche est assez lente, contrairement à pkgfile. :)
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17186
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par benjarobin »

Je parle de pacman -Fs, voir le man pour faire des regexp. Je n'ai pas noté la moindre différence de performance, ce ne serait pas juste une histoire de cache ?
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
Xorg
Maître du Kyudo
Messages : 1933
Inscription : dim. 22 janv. 2012, 19:25
Localisation : Entre le clavier et la chaise.

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par Xorg »

benjarobin a écrit :Je parle de pacman -Fs, voir le man pour faire des regexp. Je n'ai pas noté la moindre différence de performance, ce ne serait pas juste une histoire de cache ?
Ah oui, je ne suis pas familier avec cette option (je n'avais pas vu qu'elle avait fait son apparition avec Pacman 5).

Code : Tout sélectionner

$ time pacman -Fs gedit
extra/gedit 3.20.2-1
    usr/bin/gedit
pacman -Fs gedit  1,56s user 0,06s system 99% cpu 1,629 total
                                                                                
$ time pkgfile gedit
extra/gedit
pkgfile gedit  0,15s user 0,01s system 171% cpu 0,093 total
Enfin bref, ce n'est pas bien grave.
Arch Linux x86_64 - Sway
AMD Ryzen 5 3600X - 32 Go de DDR4 - SSD NVMe 1 To + SSD SATA 250 Go - Sapphire NITRO+ Radeon RX 580
Image AUR___Image Wiki___Image GitHub
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17186
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [LANGAGES] Question avant installation: quels langages on apprend ?

Message par benjarobin »

En effet c'est plus lent avec pacman (vérifier avec la même requête: gedit), mais bon ce n'est pas catastrophiquement plus lent
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Répondre