Giter VIP home page Giter VIP logo

nimble-commander's Introduction

Nimble Commander - Open Source

Nimble Commander is a dual-pane file manager for macOS, which was developed with an emphasis on performance, keyboard navigation and flexibility. Project's website: http://magnumbytes.com.
This repository contains per-version snapshots of the project's source code.

How to Build

Prerequisites
Xcode10, preferrebly Xcode10.2.1.

Make sure that the correct Xcode version is selected:

xcode-select -p

If it's not - adjust this setting:

sudo xcode-select -s /Application/ProperXcodeVersionPath/

Getting the source code
Clone the repository in appropriate directory:

git clone --recursive https://github.com/mikekazakov/nimble-commander

Building an unsigned version
Use the following script to check if the build system works as expected:

cd nimble-commander/Scripts
./build_unsigned_and_run.sh

If execution was successful, this script will run the freshly built version of Nimble Commander.
Location of resulting application bundle depends on current Xcode settings, by default it can be found here:
~/Library/Developer/Xcode/DerivedData/NimbleCommander-.../Build/Products/Debug_Unsigned/NimbleCommander-Unsigned.app

Exploring the source code

Just open NimbleCommander.xcodeproj in Xcode and select the proper scheme: NimbleCommander-Unsigned.
The source code is ready to be built and run.
There're 10 sub-projects in the codebase, apart from the main one:

  • Habanero - low-level general-purpose facilities.
  • Config - configuration facilities.
  • CUI - common UI compontents.
  • Utility - platform-dependent utilities.
  • RoutedIO - AdminMode-related code, including privileged helper and client-side interface.
  • Term - built-in terminal emulator.
  • VFS - virtual file systems: generic interface and various implementations.
  • VFSIcon - production of icons and thumbnails for VFS entries.
  • Viewer - built-in viewer.
  • Operations - a set of file operations running on top of the VFS layer.

Limitations

This source code is the same as the one used to build the officially distributed versions of Nimble Commander. However, the public repository does not contain any sensitive information like accounts, addresses, keys, and alike. Thus a few parts, which specifically rely on that information, might not work as expected.

License

Copyright (C) 2013-2019 Michael Kazakov ([email protected])
The source code is distributed under GNU General Public License version 3.

nimble-commander's People

Contributors

mikekazakov avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.