XEphem is an interactive astronomy program for all UNIX platforms.

Related tags

Utilities XEphem
Overview

Welcome to XEphem!

XEphem is an interactive astronomy program for all UNIX platforms.

Sky view

More screenshots are shown below.

  • Documentation lives at https://www.clearskyinstitute.com/xephem/ where Elwood Downey — XEphem’s original author and its maintainer since the 1990s — offers a manual, data files, and user contributed scripts.

  • Elwood Downey has generously released XEphem under the MIT License! An “XEphem” organization has been created on GitHub to host XEphem’s source code.

  • The XEphem community hopes to modernize the code to make it easier to compile, package, and run on modern systems. In the meantime, XEphem compiles most readily on older Linux platforms like Ubuntu 14.04.

  • If you want to get started immediately, a Docker image that successfully compiles and runs XEphem atop Ubuntu 14.04 is available in the “docker” branch on GitHub. It’s documented in this README file.

  • Otherwise, if you want to tackle XEphem development on another platform, start with the INSTALL file in the main branch of the repository.

  • Direct questions to the main repository’s GitHub Discussions by clicking “New discussion” and writing up your question.

A few more screenshots:

Sun view

Solar system view

Saturn and its moons

Binary star view

Moon view

Earth view

Comments
  • Request for Code Documentation

    Request for Code Documentation

    Hi, I'm want to get involved in contributing to XEphem. I read up about the software on your website and I was really interested in learning more about it.

    I wanted to know of there was any formal documentation that one can follow to understand the code and work on adding features/improvements to it?

    Thanks

    opened by rishitc 10
  • Update of URIs for two remote data bases in perl scripts

    Update of URIs for two remote data bases in perl scripts

    To check the perl scripts go to the auxil subdirectory and call them as ./astorb2edb.pl -f 000 and ./mpcorb2edb.pl -f 001 which should create two files 000* and two files 001* in the local directory if downloading works. These files created by the two perl scripts are not part (and should not become part) of the github source. Note that downloading may take a while in both cases. An equivalent check is to call xephem, the Data submenu and to click of one of the last two Get buttons...

    opened by rmathar 7
  • ucac5 support

    ucac5 support

    First attempt at implementing ucac5 support. Now, as epochs and proper motion management go, I am a bit lost (1997, 2000 and 2015 epochs are involved, dont know when to use what)... so I have inserted CHECKME FIXME UCAC5 wherever it is relevant for knowledgeable people to check how to properly work this out. I checked a field against the results given by the vizier online interface at https://vizier.u-strasbg.fr/ ; as far as I can tell, it looks ok right now (it might slightly degrade in the future if proper motions are not properly (no pun intended) dealt with).

    check_ucac5

    opened by euldulle 6
  • files for autoconf added. This supports the GNU autoconf tool chain.

    files for autoconf added. This supports the GNU autoconf tool chain.

    This supports the GNU https://www.gnu.org/software/autoconf variant of compiling the source code. The usual application is to unbundle the xephem tarball, then in the top directory to call

    autoreconf -i -f -s
    ./configure # optionally with --prefix=$HOME or similar modifiers
    make
    make install
    

    The fundamental difference to the compilation provided up to here is that no Makefile is edited manually. This works only if the autoconf package of the operating system has been installed beforehand (with dnf, zypper, yum, apt etc. according to the Linux/Unix type of operating system).

    opened by rmathar 5
  • Only reset pointer if it is freed.

    Only reset pointer if it is freed.

    Signed-off-by: Andrea Odetti [email protected]

    Not 100% sure it is a bug, but very suspicious. If it is not a bug, indentation should be fixed instead.

    opened by audetto 3
  • Site?

    Site?

    Maybe replace:

    bg.png
    binary.png
    binary-tn.png
    C2009P1.gif
    coordsysbutton.gif
    CSI-xs.png
    data.png
    earthsat.png
    earthsat-tn.png
    earthwx.gif
    earthwx-tn.gif
    gridbutton.gif
    HSTOrbitAnim.gif
    INDI.png
    INDI-tn.png
    intro-hzn.png
    intro-moon.png
    jupiter.png
    jupiter-tn.gif
    main.png
    mars.png
    mars-tn.png
    moon.png
    moon-tn.gif
    naag.gif
    naag-tn.gif
    obslog.png
    osxshot.png
    plot.png
    plot-tn.gif
    SatMovie.gif
    saturn.png
    saturn-tn.png
    skyip.gif
    skyip-tn.gif
    skyview.png
    skyview-tn.gif
    solsys.gif
    solsys-tn.gif
    sun.png
    sun-tn.png
    uranus.gif
    uranus-tn.gif
    wcs.gif
    wcs-tn.gif
    webmenu.png
    xephemdrop.png
    xephem.png
    

    to XEphem/Site/img?

    XEphem.diff.gz

    opened by zvezdochiot 2
  • Update URI to Lowell Asteroid database in perl script

    Update URI to Lowell Asteroid database in perl script

    The scheme part ftp: string in lines 12, 66, 120, 236, 237 of GUI/xephem/auxil/astorb2edb.pl should be changed to https:. The leading ftp in the "authority" of the URI itself, that means in ftp.lowell.edu, should not be changed.

    In line 33 the 1.7 Mb should be changed to 83 MB and in line 34 the 6.3 Mb to 305 MB.

    Perhaps one should also change in line 237 the clearskyinstitute.com as the user address to github.com (?)

    opened by rmathar 2
  • SSL patch needs review

    SSL patch needs review

    In his email releasing XEphem under the MIT License, Elwood Downey mentioned a set of 3 crucial patches:

    XEphem needs your help. In particular note I have not incorporated the recent patches by Lutz Mändle in the contrib section. That would be a good place to start.

    I have gone ahead and committed the smallest of the 3 patches at 099dc04e6c0b57732b44b324e8b6c2bd6a6399f8 but the 2 larger patches involve SSL and I/O, and could easily include an inadvertent buffer overflow that my eyes would miss. So I have applied those 2 patches to a branch, so that you can see them here:

    • d85b3edce72e9852bbe280d93a07a0532ea10a00
    • 29c6645e17d31d5b36b32a0c605974e760cdecd0

    Could someone else review them for safety — or, better yet, suggest a modern tool we could use? Feel free to comment here directly on this issue with your feedback, and hopefully we can get these landed soon!

    opened by brandon-rhodes 2
  • Update the documentation: Install on Ubuntu/Mint needs libssl-dev

    Update the documentation: Install on Ubuntu/Mint needs libssl-dev

    When building Xephem 4.1.0 on Linux Mint 20.2, make received fatal error "openssl/sha.h: No such file or directory"

    This was fixed by installing libssl-dev sudo apt-get install libssl-dev

    Please update the INSTALL readme file to indicate the need to install this library on Debian/Ubuntu distributions.

    opened by djtrustgod 1
  • saturne.2040 first line spacing typos.

    saturne.2040 first line spacing typos.

    This is identical to previous uranus.2040 one, (spurious 0 iso space) don't alter the data column position, and so far results, but must be fixed. IMCCE files are corrected asap. My apologize for the mess. Serge.

    opened by obspsr 1
  • VSOP87 full set and data pointers

    VSOP87 full set and data pointers

    Hi Brandon and Hi all! In this PR I add the complete set of vsop87 terms and change the use of indices to pointers respecting the calculation logic. I recorded the output of the before and after function vsop87 for an object, Julian date and the three output parameters with slight differences that I copy below. I would be very happy if this effort proves useful. I stay tuned to any comments, have a nice day and happy new year.

    Version  ObjNumber        MJD                   ret[0]               ret[1]               ret[2]
    old        0        44923.50082769113        0.93588476007        0.01075254108        0.31216194255
    new        0        44923.50082769113        0.93588407345        0.01075032273        0.31216267380
    old        1        44923.50082769113        5.54438883381       -0.05172729244        0.72819260268
    new        1        44923.50082769113        5.54438866865       -0.05172702559        0.72819296098
    old        2        44923.50082769113        1.52017034174        0.01959653504        1.56181373453
    new        2        44923.50082769113        1.52017000316        0.01959629141        1.56181237584
    old        8        44923.25082769113        1.71041833906        0.00000239565        0.98340024115
    new        8        44923.25082769113        1.71041807192        0.00000213325        0.98340006795
    old        8        44923.50082769113        1.71486503977        0.00000227355        0.98339187973
    new        8        44923.50082769113        1.71486475984        0.00000200912        0.98339172143
    old        8        44924.00000000000        1.72374360943        0.00000201310        0.98337613373
    new        8        44924.00000000000        1.72374331101        0.00000174546        0.98337600969
    old        8        44924.00172101804        1.72377422020        0.00000201217        0.98337608167
    new        8        44924.00172101804        1.72377392173        0.00000174451        0.98337595776
    
    opened by gcorrad 0
  • Build system not safe for parallel builds and makefile improvements

    Build system not safe for parallel builds and makefile improvements

    We received a bug report for Gentoo Linux[1], which seems to be related to a parallel build issue.

    From what I can see, the reason is, that in the all target, the libs and xephem goals can be called in parallel. The xephem target will usually have been compiled faster, than the list of libraries it depends on, which can lead to a race condition. Moving libs from all to the xephem target, should IMO resolve this. The source files for the xephem binary can be compiled ASAP, but the linking will only take place, once the libs target is finished. I have a PR open to fix it with this solution[2], but it's not yet verified to work.

    In addition, and in response to https://github.com/XEphem/XEphem/issues/59#issuecomment-1243769710, in the libs target, using $(MAKE) -C <target> instead of cd ../../<target-dir>; make could also lead to an improvement regarding parallel builds. We already use this for our 4.1.0 package[3].

    If desired, I can open a PR to patch any of these.

    [1] https://bugs.gentoo.org/881813 [2] https://github.com/gentoo/gentoo/pull/28610 [3] https://github.com/gentoo/gentoo/blob/master/sci-astronomy/xephem/files/xephem-4.1.0-respect_env_vars.patch#L37-L45

    opened by waebbl 0
  • Failing tests

    Failing tests

    Running make run-test I get:

    ./test > output.actual
    diff -u output.expected output.actual
    --- output.expected     2022-01-27 20:27:21.000000000 +0100
    +++ output.actual       2022-10-06 10:37:30.364043236 +0200
    @@ -16,4 +16,4 @@
     
     Pluto discontinuity when Chapront (1995) ends on 2247/10/1
     RA = 16:52:53.80
    -RA = 11:52:36.32
    +RA = 16:46:16.01
    make: *** [Makefile:5: run-test] Errore 1
    
    opened by mattiaverga 5
  • Use cmake to build and install

    Use cmake to build and install

    This will add cmake directives for building XEphem and install it system wide. It also checks for availability of system libraries to avoid using bundled (outdated). It can also be expanded to install desktop file (see other PR).

    opened by mattiaverga 0
  • Use of cmake to build and install system-wide

    Use of cmake to build and install system-wide

    While packaging XEphem for Fedora I've found there's no automated build and install method. Would you consider a PR for using cmake to automate the process? I don't have extensive knowledge of cmake, but at a first glance I think I can figure it out.

    opened by mattiaverga 2
Releases(4.1.0)
  • 4.1.0(Sep 13, 2021)

    • Downloads of Minor Planet Center files and of Earth weather maps have both been fixed, thanks to new SSL support. Thank you, Lutz Mändle!
    • The files for the moons of Mars, Jupiter, Saturn, and Uranus that expired at the end of 2020 have been updated through 2040. Thanks you, IMCCE!
    • Updates from the Astronomical Almanac 2020:
      • Pluto’s long-term orbital elements.
      • The ∆T table now runs through 2018.
    Source code(tar.gz)
    Source code(zip)
  • 4.0.2(Sep 13, 2021)

    • Updated to the 2020-2025 World Magnetic Model.
    • Fixed Halifax time zone, which was an hour off.
    • Stop trying to link against `-lXp`, which X Windows no longer offers.
    • Tell Linux folks to compile against their native Motif libraries.
    • Remove pre-compiled Linux `libXm.a`: incompatible with modern X Windows.
    • First release from the GitHub repository.
    Source code(tar.gz)
    Source code(zip)
  • 4.0.1(Sep 13, 2021)

  • 4.0.0(Sep 13, 2021)

    This release preserves the state of the source code when the author Elwood Downey posted it to the XEphem web site on the day he donated it to the community by offering it under the MIT License. Thank you, Elwood!

    Source code(tar.gz)
    Source code(zip)
Owner
null
cavi is an open-source library that aims to provide performant utilities for closed hierarchies (i.e. all class types of the hierarchy are known at compile time).

cavi cavi is an open-source library that aims to provide performant utilities for closed hierarchies (i.e. all class types of the hierarchy are known

Baber Nawaz 5 Mar 9, 2022
A proof of concept demonstrating instrumentation callbacks on Windows 10 21h1 with a TLS variable to ensure all syscalls are caught.

Instrumentation callbacks are quite a fun undocumented part of Windows. All the code in this repository is released under the MIT license. This repository uses google style C++.

Deputation 60 Dec 26, 2022
Scans all running processes. Recognizes and dumps a variety of potentially malicious implants (replaced/implanted PEs, shellcodes, hooks, in-memory patches).

Scans all running processes. Recognizes and dumps a variety of potentially malicious implants (replaced/implanted PEs, shellcodes, hooks, in-memory patches).

hasherezade 1.5k Jan 4, 2023
CommonMark parsing and rendering library and program in C

cmark cmark is the C reference implementation of CommonMark, a rationalized version of Markdown syntax with a spec. (For the JavaScript reference impl

CommonMark 1.4k Jan 4, 2023
A System Fetching Program written in C.

A System Fetching Program written in C.

ABHacker Official 7 Nov 24, 2022
A simple program to suspend or hibernate your computer

A simple program to suspend or hibernate your computer. It supports hooks before and after suspending.

Jakub Jirutka 13 Dec 30, 2022
A docker image where you can run a judge program and a converter for multiple sequence alignment

genocon2021-docker 本リポジトリでは、ジャッジプログラム(eval.c)と Multiple Sequence Alignment (MSA) 変換プログラム(decode_cigar.py)を同梱した Docker イメージを提供しています。 また、サンプル解答プログラム(sam

Sakamoto, Kazunori 4 Sep 20, 2021
Context Free Grammars to Pushdown Automata Conversion, C++ program

CFG-to-PDA-Conversion Context Free Grammars to Pushdown Automata Conversion, C++ program USF Group Project: Was in charge of Lambda Removal, Unit Remo

Matias 0 Mar 15, 2022
Add colors to your program in C with umbrella.h

☂️ umbrella ☂️ Add colors to your program in C with umbrella.h Using in projects

Marcello Belanda 1 Jan 18, 2022
sbase is a collection of unix tools that are inherently portable across UNIX and UNIX-like systems.

sbase is a collection of unix tools that are inherently portable across UNIX and UNIX-like systems.

Anton Samokhvalov 1 Nov 1, 2021
Interactive-hex-meshing - Source code for "Interactive All-Hex Meshing via Cuboid Decomposition [SIGGRAPH Asia 2021]".

Interactive All-Hex Meshing via Cuboid Decomposition Video demonstration This repository contains an interactive software to the PolyCube-based hex-me

Lingxiao Li 131 Dec 5, 2022
Suite of C++ libraries for radio astronomy data processing

Casacore A suite of C++ libraries for radio astronomy data processing. Installation Debian / Ubuntu Casacore is now part of Debian and Ubuntu, use apt

null 100 Jan 7, 2023
SimPle SHell - minimalist Unix interactive shell written in a single C file

SimPle SHell - minimalist Unix interactive shell written in a single C file. The shell does not support scripting yet and is in an early stage of development. If you notice any bug, please open an issue on github.

sewe2000 2 Oct 24, 2021
✔️The smallest header-only GUI library(4 KLOC) for all platforms

Welcome to GUI-lite The smallest header-only GUI library (4 KLOC) for all platforms. 中文 Lightweight ✂️ Small: 4,000+ lines of C++ code, zero dependenc

null 6.6k Jan 8, 2023
Strings Analyze tool for all platforms

Strings Analyze Inspired by @UnrealSecurity Strings Analyze Strings Analyze is a tool for all platform to analyze string dumps from process' memory or

Austin 3 Oct 11, 2021
A simple C++ program for an interactive Tic Tac Toe Game.

CSE 332 Lab 3:Tic-Tac-Toe Game Objective: This lab is intended to extend your use of basic C++ language features from the previous labs, and to give y

Julia Grandury 1 Nov 8, 2021
C++ program that can represent an interactive Tic Tac Toe or Gomoku Game at choice.

CSE 332 Lab 4: Multiple Games Objective: This lab is intended to extend your use of basic C++ language features from the previous labs, and to give yo

Julia Grandury 1 Nov 8, 2021
In this Program, I am using C language and creating All Patterns Program using Switch case

In this Program, I am using C language and creating All Patterns Program using Switch case. It has 15 pattern programs like a pyramid, half pyramid, etc...

Rudra_deep 1 Nov 13, 2021
Paint program for Unix. Inspired by MS Paint (Windows 95-98).

Classic Colors Classic Colors is a simple and efficient paint program for Unix systems, inspired by MS Paint (Windows 95-98 version). It is built on t

Justin Meiners 25 Dec 9, 2022
Small data exchange program using UNIX signals.

Small data exchange program using UNIX signals.

Maria Sottomayor 39 Dec 21, 2022