github.com/lmorg/murex@v0.0.0-20240217211045-e081c89cd4ef/gen/root/supported-platforms.inc.md (about) 1 {{ if env "DOCGEN_TARGET=vuepress" }} 2 3 --- 4 5 {{ end }}<h1>Supported Operating Systems</h1> 6 7 The following is a list of platforms Murex has been tested on and the 8 level of support it has: 9 10 {{ if env "DOCGEN_TARGET=" }}<h2>Table of Contents</h2> 11 12 <div id="toc"> 13 14 - [macOS (Darwin)](#macos-darwin) 15 - [Windows](#windows) 16 - [FreeBSD](#freebsd) 17 - [OpenBSD](#openbsd) 18 - [NetBSD](#netbsd) 19 - [DragonflyBSD](#dragonflybsd) 20 - [Plan 9](#plan-9) 21 - [Other CPU architectures](#other-cpu-architectures) 22 23 </div> 24 25 {{ end }}## Linux 26 27 The shell has been extensively tested across a number of distributions. There 28 are no known distribution specific issues. 29 30 ## macOS (Darwin) 31 32 All features work aside alt-hotkeys. 33 34 Both x86 (Intel) and AMD (M2 etc) architectures are supported. 35 36 ## Windows 37 38 Windows is supported there are a few known issue with the way how Windows 39 internals are built. These cannot be easily worked around: 40 41 * Windows doesn't decouple the terminal emulator and the shell Which means you 42 cannot rely upon STDIN working as expected (eg some commands don't read input 43 from STDIN but instead poll the terminal emulator directly) 44 45 * Windows sends parameters as a single string rather than an array of string. 46 This is to retain backwards compatibility with DOS but it breaks the way how 47 quotation marks and escaping works. Murex will compile an array of 48 parameters based on the quotation strings (there are 3 different types of 49 quotations in Murex), infixed variables, subshells, etc. These would not be 50 honoured by any Windows commands because every Windows application then has 51 to handle how the one long string of parameters is chopped up into different 52 arguments; how quotation marks are handles, spaces, escaping, etc. This means 53 there is no standard so one command might handle spaces correctly but another 54 wouldn't. 55 56 * Job control (`bg`, `^z`, `fg`, etc) isn't supported because Windows doesn't 57 have an equivalent of the SIGSTSP (etc) POSIX signals. 58 59 * There is also the caveat that without a broad range of command line utilities 60 (eg GNU coreutils) the usefulness of Murex is seriously diminished. You can 61 mitigate this by installing [MSYS2](https://www.msys2.org/) or [Cygwin](https://cygwin.com/). 62 63 ## FreeBSD 64 65 FreeBSD is officially supported and tested by the community. 66 67 ## OpenBSD 68 69 FreeBSD is officially supported and tested by the community. 70 71 ## NetBSD 72 73 FreeBSD is officially supported and tested by the community. 74 75 ## DragonflyBSD 76 77 FreeBSD is officially supported and tested by the community. 78 79 ## Plan 9 80 81 Plan 9 is included as part of the automated built tests however no functional 82 tests have been run. 83 84 If you do happen to run into any such bugs then I do welcome pull requests. 85 86 Feature wise, job control isn't supported in Plan 9 because Plan 9 doesn't 87 support all of the required signals. All other functions are expected to work. 88 89 ## Other CPU architectures 90 91 Several CPU architectures are supported: 92 93 * 386 (x86 32bit) 94 * AMD64 (x86 64bit) 95 * ARMv7 (32bit) 96 * ARMv8 (64bit)