Modern Development Workflow for Fedora GNU/Linux Distribution

Total Page:16

File Type:pdf, Size:1020Kb

Modern Development Workflow for Fedora GNU/Linux Distribution Masaryk University Faculty of Informatics Modern development workflow for Fedora GNU/Linux distribution Master’s Thesis Bc. František Lachman Brno, Spring 2019 Declaration Hereby I declare that this paper is my original authorial work, which I have worked out on my own. All sources, references, and literature used or excerpted during elaboration of this work are properly cited and listed in complete reference to the due source. Bc. František Lachman Advisor: Ing. Milan Brož, Ph.D. i Acknowledgements I would like to express my appreciation to my supervisor, Doctor Milan Brož, for his thorough mentoring and all the valuable advice he gave me. I would like to thank my technical consultant, Tomáš Tomeček, for guiding me during the last year. For all discussions, reviews and suggestions. I really appreciate it. Also, I would like to thank all members of the Packit team for being very helpful to me. Finally, I would like to thank my wife for support and understanding during the work on the thesis. The thesis would not exist without any of you. iii Abstract In this thesis, we will look at the current state of the software packaging in the current GNU/Linux distributions. Using three representatives (Debian, Arch Linux and Fedora), we will see various parts of the workflow and compare the different approaches to the same problems. The goal of the thesis is to propose a modern development workflow for Fedora GNU/Linux distribution. We will describe related tools and partial solutions, that exist for this distribution. Finally, we will discuss the proposed solution and examples of the real setup of the prototype. The thesis is licensed under a Creative Commons Attribution 4.0 International license. iv Keywords GNU/Linux, UNIX, packaging, distributions, git, Fedora, RPM v Contents Introduction 1 1 Current state of three Linux distributions 3 1.1 Quick overview of the distributions ..............3 1.2 Package Specification .....................5 1.3 Storing distribution data ...................8 1.4 Distribution versioning scheme, repositories ......... 11 1.5 Packager workflow ...................... 14 1.6 Building packages ....................... 16 1.7 Security, formal requirements ................. 18 1.8 Package sources, editing of the distribution packages ..... 20 2 Existing solutions 21 2.1 Similar or related tools .................... 21 2.2 Custom solutions ....................... 26 3 Proposed solution for Fedora ecosystem 31 3.1 Key principles ......................... 31 3.2 Source-git ........................... 34 3.3 Upstream-downstream format conversion .......... 36 3.4 Workflow ........................... 38 4 Implementation 43 4.1 Security and compliance ................... 51 4.2 Implemented requirements .................. 53 5 Use cases 55 Conclusion 59 Bibliography 61 Glossary 69 A Appendices 75 A.1 Packit CLI ........................... 75 A.2 Sources ............................ 83 vii List of Figures 1.1 Debian FTP server 8 1.2 Arch package SVN tree 9 1.3 dist-git scheme 9 1.4 Pagure over dist-git 10 2.1 Spec file template for rpkg-util (content from [68]) 24 2.2 RDO packaging overview ([63]) 29 3.1 pull-request workflow 32 3.2 source-git repository 34 3.3 Commits in the source-git repository 35 3.4 Transformation of the source-git to dist-git 37 3.5 Automatically created pull-request in dist-git 39 3.6 Automatically created downstream commit 39 3.7 Fedora CI system status for the dist-git pull-request 40 3.8 Synchronize downstream to upstream 40 3.9 Packit-as-a-service integration with Copr 42 4.1 Dependency graph 49 4.2 Packit-as-a-service GitHub application 50 5.1 systemd source-git 58 ix Introduction One of the benefits of using Linux distributions is the ability to install the software on the system easily. There is a significant amount of work that needs to be done after a release of some program to be able to install it as a package on the system. The conversion from the source code to the installable package is not only about compilation. Today’s package managers are responsible for sharing and resolving dependencies, and tracking installed files. There are various ways to achieve these responsibilities. Server distrowatch.com tracks more than three hundred of different Linux distributions1. Many of them share the packaging system, some of them builds on top of others or are influenced by others, but there are many very different ideas and approaches how the packaging canbe done. In the first section of the thesis, we will look at the three important representatives. We will see the description of their solution from the perspective of a maintainer, a person who is responsible for the conversion from source code to the installable package and taking care of that package. The goal of the thesis is to propose a new maintainer workflow for Fedora, one of the Linux distributions. Here are the requirements for the prototype: • Transform the content of the upstream project into a format which Fedora distribution build system understands. • The transformation process should distinguish between the pristine upstream archive and additional changes layered on top; they should not be mixed together by default. • The process has to be configurable by a user. • Submit the changes as a new pull request in Fedora distribution’s code repository. The proposed workflow has to fulfil the following points: • An easy way to contribute: a user can propose a change with a minimal amount of steps. • Maintainers can easily collaborate with upstream projects. The tooling would enable downstream maintainers to pick up 1. By the time of writing of the thesis. 1 fixes from upstream and maintainers are able touse the prototype to report issues upstream. • Provenance: the commits are signed, and it is possible to track down the origin of a certain artefact. • Continuous Integration: contributors are getting feedback for their proposed changes. The second section will describe tools that try to simplify or automate the parts of the maintainers’ workflow. These are used for getting convenient principles and approaches for the Fedora Linux distribution, the target Linux distribution of the proposed solution. The prototype will be described in the third section of the thesis. The section will cover principles and ideas that were used during the implementation. The implementation will be described in the Section 4 and will describe used tools and libraries, internal structure of the code and the conclusion of the requirements. The fifth, and the last, section will show the setup of the projects that were used for demonstrating the use of the prototype. 2 1 Current state of three Linux distributions In this chapter, we are going to show the current state of the art of three distributions of GNU/Linux, the UNIX-like operating system. After a short introduction of the used examples, we are going to discuss several packaging topics to see differences among distributions’ approaches. • As a first model, we are going to use Debian as a representative of deb-based Linux distributions like Ubuntu and Linux Mint. • For the second point of view, Arch Linux is going to be used. • The third example will be Fedora representing distributions based on RPM (e.g. RHEL, Centos or SUSE). Since Fedora will also be used in the implementation part, there is a strong accent on this distribution in the following parts. We will describe its approach more deeply and with more technicalities. 1.1 Quick overview of the distributions 1.1.1 Debian and deb-based distributions Debian is the operating system by The Debian Project, the association who have made common cause to create a free1 operating system [77]. Debian was created in August 1993 and named after the creator Ian Murdock, and his wife, Debra. It uses GNU/Linux or FreeBSD kernel; there is also ongoing work on supporting GNU/Hurd [78]. According to the server distrowatch.com, Debian is used as a base for nearly four hundred distributions2, of which 135 are now active3. We can name Ubuntu, elementary OS, Linux Mint or Kali Linux for a reference. 1. The meaning of the term free in this context and relation to the Open Source can be found in [79]. 2. A current list of Debian derivates can be seen in the following URL: https: //distrowatch.com/search.php?basedon=Debian 3. Active derivates are listed in this URL: https://distrowatch.com/search.php? basedon=Debian&status=Active 3 1. Current state of three Linux distributions The packaging system of Debian, which the derivates inherit will be described later in this chapter. 1.1.2 Arch Linux Arch is a Linux distribution, which is aiming to be simple, agile and lightweight. It was founded in 2002 and was inspired by the Linux distributions like Slackware or CRUX. [55] It is now (29 April 2019) the 16th most popular distribution according to distrowatch.com. Arch is a rolling-release system that is highly configurable and assembled by the user. The “simple” in The Arch Way means without unnecessary additions, modifications, or complications. (It is “simple” from technical, not usability, point of view.) [55] The Arch way4 can be defined (based on [22]) with five core principles: • simplicity, • code-correctness over convenience, • user-centric, • openness, • freedom. 1.1.3 Fedora and RPM-based distributions The history of the Fedora Linux distribution is loosely coupled to Red Hat Linux. According to [59], it started as a repository of newer and more experimental software for Red Hat Linux, one of the earliest Linux distributions. The start of the real distribution (called Fedora Core) was caused by the move from Red Hat Linux to Red Hat Enterprise Linux (RHEL). The Fedora Core was not governed by the Red Hat, but by the newly created Fedora Project. The project was lately renamed to just Fedora and is driven by community with support from Red Hat, which can use Fedora as a test bed for new technologies and application, which would later be included in Red Hat Enterprise Linux.
Recommended publications
  • Creating Rpms Guide
    CREATING RPMS (Student version) v1.0 Featuring 36 pages of lecture and a 48 page lab exercise This docu m e n t serves two purpose s: 1. Representative sample to allow evaluation of our courseware manuals 2. Make available high quality RPM documentation to Linux administrators A bout this m aterial : The blue background you see simulates the custom paper that all Guru Labs course w are is printed on. This student version does not contain the instructor notes and teaching tips present in the instructor version. For more information on all the features of our unique layout, see: http://ww w . g urulabs.co m /courseware/course w are_layout.php For more freely available Guru Labs content (and the latest version of this file), see: http://www.gurulabs.co m/goodies/ This sample validated on: Red Hat Enterprise Linux 4 & Fedora Core v3 SUSE Linux Enterprise Server 9 & SUSE Linux Professional 9.2 About Guru Labs: Guru Labs is a Linux training company started in 199 9 by Linux experts to produce the best Linux training and course w are available. For a complete list, visit our website at: http://www.gurulabs.co m/ This work is copyrighted Guru Labs, L.C. 2005 and is licensed under the Creative Common s Attribution- NonCom mer cial- NoDerivs License. To view a copy of this license, visit http://creativecom m o n s.org/licenses/by- nc- nd/2.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 943 0 5, USA. Guru Labs 801 N 500 W Ste 202 Bountiful, UT 84010 Ph: 801-298-5227 WWW.GURULABS.COM Objectives: • Understand
    [Show full text]
  • Generating Commit Messages from Git Diffs
    Generating Commit Messages from Git Diffs Sven van Hal Mathieu Post Kasper Wendel Delft University of Technology Delft University of Technology Delft University of Technology [email protected] [email protected] [email protected] ABSTRACT be exploited by machine learning. The hypothesis is that methods Commit messages aid developers in their understanding of a con- based on machine learning, given enough training data, are able tinuously evolving codebase. However, developers not always doc- to extract more contextual information and latent factors about ument code changes properly. Automatically generating commit the why of a change. Furthermore, Allamanis et al. [1] state that messages would relieve this burden on developers. source code is “a form of human communication [and] has similar Recently, a number of different works have demonstrated the statistical properties to natural language corpora”. Following the feasibility of using methods from neural machine translation to success of (deep) machine learning in the field of natural language generate commit messages. This work aims to reproduce a promi- processing, neural networks seem promising for automated commit nent research paper in this field, as well as attempt to improve upon message generation as well. their results by proposing a novel preprocessing technique. Jiang et al. [12] have demonstrated that generating commit mes- A reproduction of the reference neural machine translation sages with neural networks is feasible. This work aims to reproduce model was able to achieve slightly better results on the same dataset. the results from [12] on the same and a different dataset. Addition- When applying more rigorous preprocessing, however, the per- ally, efforts are made to improve upon these results by applying a formance dropped significantly.
    [Show full text]
  • Introduction to Version Control with Git
    Warwick Research Software Engineering Introduction to Version Control with Git H. Ratcliffe and C.S. Brady Senior Research Software Engineers \The Angry Penguin", used under creative commons licence from Swantje Hess and Jannis Pohlmann. March 12, 2018 Contents 1 About these Notes1 2 Introduction to Version Control2 3 Basic Version Control with Git4 4 Releases and Versioning 11 Glossary 14 1 About these Notes These notes were written by H Ratcliffe and C S Brady, both Senior Research Software Engineers in the Scientific Computing Research Technology Platform at the University of Warwick for a series of Workshops first run in December 2017 at the University of Warwick. This document contains notes for a half-day session on version control, an essential part of the life of a software developer. This work, except where otherwise noted, is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Li- cense. To view a copy of this license, visit http://creativecommons.org/ licenses/by-nc-nd/4.0/. The notes may redistributed freely with attribution, but may not be used for commercial purposes nor altered or modified. The Angry Penguin and other reproduced material, is clearly marked in the text and is not included in this declaration. The notes were typeset in LATEXby H Ratcliffe. Errors can be reported to [email protected] 1.1 Other Useful Information Throughout these notes, we present snippets of code and pseudocode, in particular snippets of commands for shell, make, or git. These often contain parts which you should substitute with the relevant text you want to use.
    [Show full text]
  • Color Chap 2.Cdr
    Chapter 2 - Location and coordinates Updated 10 July 2006 -4 -3 -2 -1 0 +1 +2 +3 +4 Figure 2.1 A simple number line acts as a one-dimensional coordinate system. Each number describes the distance of a particular point-location from the origin, or zero. The unit of measure for the distance is arbitrary. 10 9 8 (4.5,7.5) 7 6 s i x a (3,5) - 5 y 4 3 (6,3) 2 1 0 0 1 2 3 4 5 6 7 8 9 10 x - axis Figure 2.2 Here is a simple x-y coordinate system with the coordinates of a few points shown as examples. Coordinates are given as an ordered pair of numbers, with the x-coordinate first. The origin is the lower left, at (0,0). The reference lines are the x and y axes. All grid lines are drawn parallel to the two reference lines. The purpose of the grid is to make it easier to make distance measurements between a location-point and the reference lines. 5 4 3 (2,3) 2 s 1 i x a (-2,0) - 0 y -1 -2 (1,-2) -3 -4 -5 -5 -4 -3 -2 -1 0 1 2 3 4 5 x - axis Figure 2.3 A more general coordinate grid places the origin (0,0) at the center of the grid. The coordinates may have either positive or negative values. The sign merely indicates whether the point is left or right (x), or above or below (y) the axis.
    [Show full text]
  • Higher Inductive Types (Hits) Are a New Type Former!
    Git as a HIT Dan Licata Wesleyan University 1 1 Darcs Git as a HIT Dan Licata Wesleyan University 1 1 HITs 2 Generator for 2 equality of equality HITs Homotopy Type Theory is an extension of Agda/Coq based on connections with homotopy theory [Hofmann&Streicher,Awodey&Warren,Voevodsky,Lumsdaine,Garner&van den Berg] 2 Generator for 2 equality of equality HITs Homotopy Type Theory is an extension of Agda/Coq based on connections with homotopy theory [Hofmann&Streicher,Awodey&Warren,Voevodsky,Lumsdaine,Garner&van den Berg] Higher inductive types (HITs) are a new type former! 2 Generator for 2 equality of equality HITs Homotopy Type Theory is an extension of Agda/Coq based on connections with homotopy theory [Hofmann&Streicher,Awodey&Warren,Voevodsky,Lumsdaine,Garner&van den Berg] Higher inductive types (HITs) are a new type former! They were originally invented[Lumsdaine,Shulman,…] to model basic spaces (circle, spheres, the torus, …) and constructions in homotopy theory 2 Generator for 2 equality of equality HITs Homotopy Type Theory is an extension of Agda/Coq based on connections with homotopy theory [Hofmann&Streicher,Awodey&Warren,Voevodsky,Lumsdaine,Garner&van den Berg] Higher inductive types (HITs) are a new type former! They were originally invented[Lumsdaine,Shulman,…] to model basic spaces (circle, spheres, the torus, …) and constructions in homotopy theory But they have many other applications, including some programming ones! 2 Generator for 2 equality of equality Patches Patch a a 2c2 diff b d = < b c c --- > d 3 3 id a a b b
    [Show full text]
  • Homework 0: Account Setup for Course and Cloud FPGA Intro Questions
    Cloud FPGA Homework 0 Fall 2019 Homework 0 Jakub Szefer 2019/10/20 Please follow the three setup sections to create BitBucket git repository, install LATEX tools or setup Overleaf account, and get access to the course's git repository. Once you have these done, answer the questions that follow. Submit your solutions as a single PDF file generated from a template; more information is at end in the Submission Instructions section. Setup BitBucket git Repository This course will use git repositories for code development. Each student should setup a free BitBucket (https://bitbucket.org) account and create a git repository for the course. Please make the repository private and give WRITE access to your instructor ([email protected]). Please send the URL address of the repository to the instructor by e-mail. Make sure there is a README:md file in the repository (access to the repository will be tested by a script that tries to download the README:md from the repository address you share). Also, if you are using a Apple computer, please add :gitignore file which contains one line: :DS Store (to prevent the hidden :DS Store files from accidentally being added to the repository). If you have problems accessing BitBucket git from the command line, please see the Appendix. Setup LATEX and Overleaf Any written work (including this homework's solutions) will be submitted as PDF files generated using LATEX [1] from provided templates. Students can setup a free Overleaf (https://www. overleaf.com) account to edit LATEX files and generate PDFs online; or students can install LATEX tools on their computer.
    [Show full text]
  • Version Control – Agile Workflow with Git/Github
    Version Control – Agile Workflow with Git/GitHub 19/20 November 2019 | Guido Trensch (JSC, SimLab Neuroscience) Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich, JSC:SimLab Neuroscience 2 Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich, JSC:SimLab Neuroscience 3 Motivation • Version control is one aspect of configuration management (CM). The main CM processes are concerned with: • System building • Preparing software for releases and keeping track of system versions. • Change management • Keeping track of requests for changes, working out the costs and impact. • Release management • Preparing software for releases and keeping track of system versions. • Version control • Keep track of different versions of software components and allow independent development. [Ian Sommerville,“Software Engineering”] Forschungszentrum Jülich, JSC:SimLab Neuroscience 4 Motivation • Keep track of different versions of software components • Identify, store, organize and control revisions and access to it • Essential for the organization of multi-developer projects is independent development • Ensure that changes made by different developers do not interfere with each other • Provide strategies to solve conflicts CONFLICT Alice Bob Forschungszentrum Jülich, JSC:SimLab Neuroscience 5 Content Motivation Version Control Systems (VCS) Understanding Git GitHub (Agile Workflow) References Forschungszentrum Jülich,
    [Show full text]
  • Educator's Guide: Orion
    Legends of the Night Sky Orion Educator’s Guide Grades K - 8 Written By: Dr. Phil Wymer, Ph.D. & Art Klinger Legends of the Night Sky: Orion Educator’s Guide Table of Contents Introduction………………………………………………………………....3 Constellations; General Overview……………………………………..4 Orion…………………………………………………………………………..22 Scorpius……………………………………………………………………….36 Canis Major…………………………………………………………………..45 Canis Minor…………………………………………………………………..52 Lesson Plans………………………………………………………………….56 Coloring Book…………………………………………………………………….….57 Hand Angles……………………………………………………………………….…64 Constellation Research..…………………………………………………….……71 When and Where to View Orion…………………………………….……..…77 Angles For Locating Orion..…………………………………………...……….78 Overhead Projector Punch Out of Orion……………………………………82 Where on Earth is: Thrace, Lemnos, and Crete?.............................83 Appendix………………………………………………………………………86 Copyright©2003, Audio Visual Imagineering, Inc. 2 Legends of the Night Sky: Orion Educator’s Guide Introduction It is our belief that “Legends of the Night sky: Orion” is the best multi-grade (K – 8), multi-disciplinary education package on the market today. It consists of a humorous 24-minute show and educator’s package. The Orion Educator’s Guide is designed for Planetarians, Teachers, and parents. The information is researched, organized, and laid out so that the educator need not spend hours coming up with lesson plans or labs. This has already been accomplished by certified educators. The guide is written to alleviate the fear of space and the night sky (that many elementary and middle school teachers have) when it comes to that section of the science lesson plan. It is an excellent tool that allows the parents to be a part of the learning experience. The guide is devised in such a way that there are plenty of visuals to assist the educator and student in finding the Winter constellations.
    [Show full text]
  • Scaling Git with Bitbucket Data Center
    Scaling Git with Bitbucket Data Center Considerations for large teams switching to Git Contents What is Git, why do I want it, and why is it hard to scale? 01 Scaling Git with Bitbucket Data Center 05 What about compliance? 11 Why choose Bitbucket Data Center? 13 01 What is Git, why do I want it, and why is it hard to scale? So. Your software team is expanding and taking on more high-value projects. That’s great news! The bad news, however, is that your centralized version control system isn’t really cutting it anymore. For growing IT organizations, Some of the key benefits Codebase safety moving to a distributed version control system is now of adopting Git are: Git is designed with maintaining the integrity considered an inevitable shift. This paper outlines some of managed source code as a top priority, using secure algorithms to preserve your code, change of the benefits of Git as a distributed version control system history, and traceability against both accidental and how Bitbucket Data Center can help your company scale and malicious change. Distributed development its Git-powered operations smoothly. Community Distributed development gives each developer a working copy of the full repository history, Git has become the expected version control making development faster by speeding up systems in many circles, and is very popular As software development increases in complexity, and the commit process and reducing developers’ among open source projects. This means its easy development teams become more globalized, centralized interdependence, as well as their dependence to take advantage of third party libraries and on a network connection.
    [Show full text]
  • Sydney Observatory Night Sky Map September 2012 a Map for Each Month of the Year, to Help You Learn About the Night Sky
    Sydney Observatory night sky map September 2012 A map for each month of the year, to help you learn about the night sky www.sydneyobservatory.com This star chart shows the stars and constellations visible in the night sky for Sydney, Melbourne, Brisbane, Canberra, Hobart, Adelaide and Perth for September 2012 at about 7:30 pm (local standard time). For Darwin and similar locations the chart will still apply, but some stars will be lost off the southern edge while extra stars will be visible to the north. Stars down to a brightness or magnitude limit of 4.5 are shown. To use this chart, rotate it so that the direction you are facing (north, south, east or west) is shown at the bottom. The centre of the chart represents the point directly above your head, called the zenith, and the outer circular edge represents the horizon. h t r No Star brightness Moon phase Last quarter: 08th Zero or brighter New Moon: 16th 1st magnitude LACERTA nd Deneb First quarter: 23rd 2 CYGNUS Full Moon: 30th rd N 3 E LYRA th Vega W 4 LYRA N CORONA BOREALIS HERCULES BOOTES VULPECULA SAGITTA PEGASUS DELPHINUS Arcturus Altair EQUULEUS SERPENS AQUILA OPHIUCHUS SCUTUM PISCES Moon on 23rd SERPENS Zubeneschamali AQUARIUS CAPRICORNUS E SAGITTARIUS LIBRA a Saturn Centre of the Galaxy Antares Zubenelgenubi t s Antares VIRGO s t SAGITTARIUS P SCORPIUS P e PISCESMICROSCOPIUM AUSTRINUS SCORPIUS Mars Spica W PISCIS AUSTRINUS CORONA AUSTRALIS Fomalhaut Centre of the Galaxy TELESCOPIUM LUPUS ARA GRUSGRUS INDUS NORMA CORVUS INDUS CETUS SCULPTOR PAVO CIRCINUS CENTAURUS TRIANGULUM
    [Show full text]
  • THE CONSTELLATION MUSCA, the FLY Musca Australis (Latin: Southern Fly) Is a Small Constellation in the Deep Southern Sky
    THE CONSTELLATION MUSCA, THE FLY Musca Australis (Latin: Southern Fly) is a small constellation in the deep southern sky. It was one of twelve constellations created by Petrus Plancius from the observations of Pieter Dirkszoon Keyser and Frederick de Houtman and it first appeared on a 35-cm diameter celestial globe published in 1597 in Amsterdam by Plancius and Jodocus Hondius. The first depiction of this constellation in a celestial atlas was in Johann Bayer's Uranometria of 1603. It was also known as Apis (Latin: bee) for two hundred years. Musca remains below the horizon for most Northern Hemisphere observers. Also known as the Southern or Indian Fly, the French Mouche Australe ou Indienne, the German Südliche Fliege, and the Italian Mosca Australe, it lies partly in the Milky Way, south of Crux and east of the Chamaeleon. De Houtman included it in his southern star catalogue in 1598 under the Dutch name De Vlieghe, ‘The Fly’ This title generally is supposed to have been substituted by La Caille, about 1752, for Bayer's Apis, the Bee; but Halley, in 1679, had called it Musca Apis; and even previous to him, Riccioli catalogued it as Apis seu Musca. Even in our day the idea of a Bee prevails, for Stieler's Planisphere of 1872 has Biene, and an alternative title in France is Abeille. When the Northern Fly was merged with Aries by the International Astronomical Union (IAU) in 1929, Musca Australis was given its modern shortened name Musca. It is the only official constellation depicting an insect. Julius Schiller, who redrew and named all the 88 constellations united Musca with the Bird of Paradise and the Chamaeleon as mother Eve.
    [Show full text]
  • Astrometric Radial Velocities
    A&A 381, 446–463 (2002) Astronomy DOI: 10.1051/0004-6361:20011458 & c ESO 2002 Astrophysics Astrometric radial velocities III. Hipparcos measurements of nearby star clusters and associations?,?? Søren Madsen, Dainis Dravins, and Lennart Lindegren Lund Observatory, Box 43, 22100 Lund, Sweden e-mail: soren, dainis, [email protected] Received 10 September 2001 / Accepted 15 October 2001 Abstract. Radial motions of stars in nearby moving clusters are determined from accurate proper motions and trigonometric parallaxes, without any use of spectroscopy. Assuming that cluster members share the same ve- locity vector (apart from a random dispersion), we apply a maximum-likelihood method on astrometric data from Hipparcos to compute radial and space velocities (and their dispersions) in the Ursa Major, Hyades, Coma Berenices, Pleiades, and Praesepe clusters, and for the Scorpius-Centaurus, α Persei, and “HIP 98321” associa- tions. The radial motion of the Hyades cluster is determined to within 0.4 km s−1 (standard error), and that of its individual stars to within 0.6 km s−1. For other clusters, Hipparcos data yield astrometric radial velocities with typical accuracies of a few km s−1. A comparison of these astrometric values with spectroscopic radial ve- locities in the literature shows a good general agreement and, in the case of the best-determined Hyades cluster, also permits searches for subtle astrophysical differences, such as evidence for enhanced convective blueshifts of F-dwarf spectra, and decreased gravitational redshifts in giants. Similar comparisons for the Scorpius OB2 com- plex indicate some expansion of its associations, albeit slower than expected from their ages.
    [Show full text]