Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ios-mac-app — iOS और macOS के लिए आधिकारिक VPN क्लाइंट जो एन्क्रिप्टेड टनलिंग, सुरक्षित क्रेडेंशियल स्टोरेज, स्वचालित सर्वर कॉन्फ़िगरेशन और लोकप्रिय VPN प्रोटोकॉल के लिए समर्थन प्रदान करता है। | Kitploit
उपकरण/GitHubGitHub/protonvpn/ios-mac-app
नेटवर्क सुरक्षागोपनीयता
GitHubprotonvpn/ios-mac-app

ios-mac-app

iOS और macOS के लिए आधिकारिक VPN क्लाइंट जो एन्क्रिप्टेड टनलिंग, सुरक्षित क्रेडेंशियल स्टोरेज, स्वचालित सर्वर कॉन्फ़िगरेशन और लोकप्रिय VPN प्रोटोकॉल के लिए समर्थन प्रदान करता है।

रिपॉजिटरी देखें
6351392 महीने पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

iOS और macOS के लिए Proton VPN

कॉपीराइट (c) 2025 Proton Technologies AG

निर्भरताएँ

यह प्रोजेक्ट अपनी सभी निर्भरताओं के लिए Swift Package Manager का उपयोग करता है। किसी भी टार्गेट को चलाने से पहले Xcode को पैकेज हल करने दें।

थर्ड-पार्टी निर्भरताएँ

ACKNOWLEDGEMENTS.md

सेटअप

  • अपनी मशीन पर Git LFS सक्षम करें
  • इस रिपॉज़िटरी को क्लोन करें
  • सुनिश्चित करें कि आप सबमॉड्यूल क्लोन करते हैं (git submodule init + git submodule update)
  • brew bundle के साथ Homebrew निर्भरताएँ इंस्टॉल करें
  • आपको अभी के लिए Xcode 14.x का उपयोग करना होगा
  • सभी टार्गेट्स के लिए भुगतान किए गए Apple डेवलपर खाते के साथ कोड साइनिंग कॉन्फ़िगर करें (VPN एनटाइटलमेंट के कारण आवश्यक) और बंडल पहचानकर्ताओं को कुछ अद्वितीय मानों में बदलें
  • Xcode में बिल्ड फ़ोल्डर साफ़ करें (Cmd+Shift+K)

ऑब्स्क्युरेटेड कॉन्स्टेंट्स

प्रोजेक्ट बनाने के लिए सीक्रेट्स का एक सेट आवश्यक है। इनमें URLs और कुंजियाँ शामिल हैं, और इन्हें ObfuscatedConstants.swift नामक फ़ाइलों में रखा जाता है। ये फ़ाइलें एक अलग रिपॉज़िटरी में रखी जाती हैं, जिसे सिंक्रनाइज़ रखने के लिए कुछ अतिरिक्त सेटअप की आवश्यकता होती है।

सबसे पहले, Integration/Scripts/credentials.sh पर स्थित स्क्रिप्ट को setup कमांड के साथ कॉल करें। -p आर्ग्युमेंट का उपयोग करके वह पथ प्रदान करें जहाँ आप सीक्रेट्स रिपॉज़िटरी को स्थानीय रूप से क्लोन करना चाहते हैं, और -r आर्ग्युमेंट का उपयोग करके रिपॉज़िटरी का url प्रदान करें।

root@kitploit:~
./Integration/Scripts/credentials.sh setup -p <path to credentials repo> -r <credentials remote>

फिर, यह सत्यापित करने के लिए कि सेटअप सफल रहा है:

root@kitploit:~
./Integration/Scripts/credentials.sh checkout

यदि सेटअप सही है, तो प्रत्येक ऐप के Generate Obfuscated Constants बिल्ड चरण के दौरान ऑब्स्क्युरेटेड कॉन्स्टेंट्स स्वचालित रूप से सिंक्रनाइज़ हो जाएँगे।

पैकेज संरचना

मॉड्यूल निर्भरता की उलझन से बचने के लिए प्रोजेक्ट को परतों के आधार पर पैकेज किया गया है:

  • Foundations: बड़ी चीज़ें बनाने के लिए छोटी, एकल-उद्देश्य वाली लाइब्रेरीज़। ये केवल एक-दूसरे को लिंक कर सकती हैं, यदि वे बिल्कुल भी लिंक करती हैं।
  • Shared: एप्लिकेशन या एक्सटेंशन के बीच कोड साझा करने के लिए थोड़ी बड़ी लाइब्रेरीज़। इस लाइब्रेरी के वे हिस्से जो बहुत बड़े हो जाते हैं या जिन्हें अपना स्वयं का मॉड्यूल होने से लाभ होगा, उन्हें Foundations में विभाजित किया जा सकता है। इन्हें केवल Foundations लाइब्रेरीज़ को लिंक करना चाहिए, संभावित अपवाद के साथ कि ये लाइब्रेरीज़ प्रत्येक CoreCommon को लिंक करती हैं।
  • Features: एकल फ़ीचर वाली स्व-निहित लाइब्रेरीज़। ये लाइब्रेरीज़ केवल Shared या Foundations श्रेणियों की लाइब्रेरीज़ को लिंक कर सकती हैं। इन्हें एप्लिकेशन, टेस्ट, या एक्सटेंशन कोड के भीतर शामिल और इंस्टेंटिएट किया जाता है।

यदि संभव हो तो LegacyCommon और NEHelper में नया कोड/फ़ीचर जोड़ने से बचना चाहिए। इन पैकेजों को धीरे-धीरे कम किया जाना चाहिए ताकि उनके घटकों को उपरोक्त तीन श्रेणियों में नए/मौजूदा पैकेजों में रखा जा सके।

कोड लिंटिंग

विकास के दौरान swiftlint को नॉन-स्ट्रिक्ट मोड में चलाया जाता है ताकि कोड फ़ॉर्मेटिंग की चिंता किए बिना विकास करना आसान हो। CI पर, लिंटिंग सख्त होती है और किसी भी चेतावनी पर विफल हो जाएगी। इस रिपॉज़िटरी में कोड कमिट करने से पहले निम्नलिखित स्क्रिप्ट चलाएँ ताकि एक प्री-कमिट हुक जोड़ा जा सके जो सभी नई/संशोधित फ़ाइलों को स्ट्रिक्ट मोड में जाँचेगा और आपको ऐसा कोड कमिट करने से रोकेगा जो CI से पास नहीं होगा।

./Integration/Scripts/pre_commit_lint.sh setup

स्थानीयकरण

ऐप मानक Localizable.strings फ़ाइलों में संग्रहीत सभी ऐप स्ट्रिंग्स तक पहुँचने के लिए Localizable.strings फ़ाइल उत्पन्न करने हेतु SwiftGen का उपयोग करता है। बस Strings पैकेज में एक नई स्ट्रिंग जोड़ें और उस निर्देशिका में swiftgen कमांड चलाएँ जहाँ swiftgen.yml परिभाषित है।

लाइसेंस

इस वितरण में कोड और डेटा फ़ाइलें Free Software Foundation द्वारा प्रकाशित GPLv3 की शर्तों के तहत लाइसेंस प्राप्त हैं। इस लाइसेंस की एक प्रति के लिए https://www.gnu.org/licenses/ देखें।

कॉपीराइट (c) 2025 Proton Technologies AG

टूल डाउनलोड करें