Проверка на 0 в разных версиях PHP

Проверка на 0 может давать непредсказуемые результаты!  Таблица, какие вот результаты бывают у абсолютно одинаковых условий на разных версиях PHP. # if PHP 7.3 PHP 8.3 (0 == 'A') true false ! отличается ! (0 === 'A') false false (0 != 'A') false true ! отличается ! (0 !== 'A') true true (0) false false...

Нотаризация приложений для macOS

Подписание приложений и нотариальное заверение Распространение приложений macOS за пределами Mac App Store. Для этого нужно приложение подписать и получить нотариальное заверение от Apple. Архивируем свое приложение в Xcode и далее по пунктам. Click the Distribute App button. Select Developer ID. select the Upload option. Select certificate and Developer ID profiles (none). Click Next button. Click...

Создание root-директорий через символические ссылки Mac OS

Creating root-level directories and symbolic links on macOS На Mac OS нельзя создать каталоги в корневой директории. Для Mac OS Catalina я использовал отключение SIP и создавал в корне ссылку на нужную папку. Такой способ уже не работает в Mac Os Big Sur и после обновления системы с Catalina до Big Sur у меня пропали...

Увеличение номера сборки Xcode (Build)

Как автоматически увеличить версию сборки (Build) Xcode? Я не мало потратил времени, пытаясь найти в интернете корректное решение этого вопроса. Полноценного решения так и не нашел. Решения для увеличения номера версии приложения (Revision) не нашел вообще, а с номером сборки (Build) вариантов много, но практически все они однотипны и обладают одним важным дефектом - в случае...

Как отключить обновления Firefox 60 и выше

MacOS - отключаем обновления Firefox через групповую политику. Это самый простой и кардинальный метод. В терминале по очереди нужно выполнить две команды и потом запустив Firefox вы увидите долгожданную надпись - "Обновления отключены вашим системным администратором". Для отключения обновления Firefox # # Firefox Update OFF # # Step 1. Disable app updates for Firefox 60 and...

Проблемы копирования файлов — NSFileManager Objective C

Странное и нелогичное поведение методов копирования файлов copyItemAtURL:toURL:error: copyItemAtPath:toPath:error: И не только... При копировании файлов существуют как минимум две проблемы: Первая проблема: при копировании файлов, существующие файлы в месте назначения будут молча перезаписаны (хотя в описании метода сказано, что операция копирования будет остановлена с ошибой)! С каталогами всё ровно наоборот, работает, как заявлено. Чтобы избежать...

iMakerFile — Простое создание любых файлов в Mac OS X

iMakerFile Простое создание файлов в MAC OS X. Поддерживаются шаблоны для любых типов файлов. Мгновенный доступ к личной библиотеке файлов. Для дома и работы.   Это новая версия прошлой программы iMakerTxtFile. Когда-то вышла первая версия программы для создания любых типов файлов в один клик в нужной папке. Сегодня же, эта незаметная, но чрезвычайно полезная утилита получила лучшее...

Как идентифицировать объект в AppleScript

Данные здесь примеры предназначены для AppleScriptObjC (Cocoa frameworks using AppleScript - XCode). В обычном AppleScript это не работает. Итак. Как идентифицировать определенный объект в том случае, когда в одном View создано несколько однотипных объектов? Например есть форма, в ней два текстовых поля и они оба делегата. Как определить, внутри какого поля печатают? Есть несколько вариантов,...

Сетевой KVM IP переключатель D-Link DKVM-IP1/B1A

Сначала немного критики, а далее ниже я дам некоторые советы – как заставить это чудо работать. Я уже не помню, сколько лет эта вещь у меня, но помню одно точно, почти сразу я столкнулся с проблемами эксплуатации данной KVM консоли (KVM over IP), которые преследуют и сейчас. В один прекрасный день Вы проснетесь и поймете,...

Настройка TLS в PureFTPd (FreeBSD)

Немного действий и наш FTP станет немного безопаснее. Редактируем конфиг pure-ftpd.conf ee /usr/local/etc/pure-ftpd.conf Изменяем (или добавляем) следующие параметры TLS                      1 ForcePassiveIP (Ваш внешний постоянный IP) PassivePortRange 19320 19420 Создание сертификата Создаем директорию для хранения сертификата mkdir -p /etc/ssl/private Генерируем сам сертификат На 10 лет (-days 3650)...